diff --git a/README.md b/README.md index bab4d3ec18..178e1e15e7 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ As with other Go libraries, GoFormation can be installed with `go get`. ``` -$ go get github.com/awslabs/goformation/v2 +$ go get github.com/awslabs/goformation/v3 ``` ## Usage @@ -44,8 +44,10 @@ import ( "strconv" "time" - "github.com/awslabs/goformation/v2/cloudformation" - "github.com/awslabs/goformation/v2/cloudformation/resources" + "github.com/awslabs/goformation/v3/cloudformation" + "github.com/awslabs/goformation/v3/cloudformation/sns" + + ) func main() { @@ -54,12 +56,12 @@ func main() { template := cloudformation.NewTemplate() // Create an Amazon SNS topic, with a unique name based off the current timestamp - template.Resources["MyTopic"] = &resources.AWSSNSTopic{ + template.Resources["MyTopic"] = &sns.Topic{ TopicName: "my-topic-" + strconv.FormatInt(time.Now().Unix(), 10), } // Create a subscription, connected to our topic, that forwards notifications to an email address - template.Resources["MyTopicSubscription"] = &resources.AWSSNSSubscription{ + template.Resources["MyTopicSubscription"] = &sns.Subscription{ TopicArn: cloudformation.Ref("MyTopic"), Protocol: "email", Endpoint: "some.email@example.com", @@ -157,7 +159,7 @@ package main import ( "log" - "github.com/awslabs/goformation/v2" + "github.com/awslabs/goformation/v3" ) func main() { diff --git a/cloudformation/all.go b/cloudformation/all.go index 97124146fa..24301a948e 100644 --- a/cloudformation/all.go +++ b/cloudformation/all.go @@ -2,11636 +2,11735 @@ package cloudformation import ( "fmt" - "github.com/awslabs/goformation/v2/cloudformation/resources" + "github.com/awslabs/goformation/v3/cloudformation/amazonmq" + "github.com/awslabs/goformation/v3/cloudformation/amplify" + "github.com/awslabs/goformation/v3/cloudformation/apigateway" + "github.com/awslabs/goformation/v3/cloudformation/apigatewayv2" + "github.com/awslabs/goformation/v3/cloudformation/applicationautoscaling" + "github.com/awslabs/goformation/v3/cloudformation/appmesh" + "github.com/awslabs/goformation/v3/cloudformation/appstream" + "github.com/awslabs/goformation/v3/cloudformation/appsync" + "github.com/awslabs/goformation/v3/cloudformation/ask" + "github.com/awslabs/goformation/v3/cloudformation/athena" + "github.com/awslabs/goformation/v3/cloudformation/autoscaling" + "github.com/awslabs/goformation/v3/cloudformation/autoscalingplans" + "github.com/awslabs/goformation/v3/cloudformation/backup" + "github.com/awslabs/goformation/v3/cloudformation/batch" + "github.com/awslabs/goformation/v3/cloudformation/budgets" + "github.com/awslabs/goformation/v3/cloudformation/certificatemanager" + "github.com/awslabs/goformation/v3/cloudformation/cloud9" + "github.com/awslabs/goformation/v3/cloudformation/cloudformation" + "github.com/awslabs/goformation/v3/cloudformation/cloudfront" + "github.com/awslabs/goformation/v3/cloudformation/cloudtrail" + "github.com/awslabs/goformation/v3/cloudformation/cloudwatch" + "github.com/awslabs/goformation/v3/cloudformation/codebuild" + "github.com/awslabs/goformation/v3/cloudformation/codecommit" + "github.com/awslabs/goformation/v3/cloudformation/codedeploy" + "github.com/awslabs/goformation/v3/cloudformation/codepipeline" + "github.com/awslabs/goformation/v3/cloudformation/codestar" + "github.com/awslabs/goformation/v3/cloudformation/cognito" + "github.com/awslabs/goformation/v3/cloudformation/config" + "github.com/awslabs/goformation/v3/cloudformation/datapipeline" + "github.com/awslabs/goformation/v3/cloudformation/dax" + "github.com/awslabs/goformation/v3/cloudformation/directoryservice" + "github.com/awslabs/goformation/v3/cloudformation/dlm" + "github.com/awslabs/goformation/v3/cloudformation/dms" + "github.com/awslabs/goformation/v3/cloudformation/docdb" + "github.com/awslabs/goformation/v3/cloudformation/dynamodb" + "github.com/awslabs/goformation/v3/cloudformation/ec2" + "github.com/awslabs/goformation/v3/cloudformation/ecr" + "github.com/awslabs/goformation/v3/cloudformation/ecs" + "github.com/awslabs/goformation/v3/cloudformation/efs" + "github.com/awslabs/goformation/v3/cloudformation/eks" + "github.com/awslabs/goformation/v3/cloudformation/elasticache" + "github.com/awslabs/goformation/v3/cloudformation/elasticbeanstalk" + "github.com/awslabs/goformation/v3/cloudformation/elasticloadbalancing" + "github.com/awslabs/goformation/v3/cloudformation/elasticloadbalancingv2" + "github.com/awslabs/goformation/v3/cloudformation/elasticsearch" + "github.com/awslabs/goformation/v3/cloudformation/emr" + "github.com/awslabs/goformation/v3/cloudformation/events" + "github.com/awslabs/goformation/v3/cloudformation/fsx" + "github.com/awslabs/goformation/v3/cloudformation/gamelift" + "github.com/awslabs/goformation/v3/cloudformation/glue" + "github.com/awslabs/goformation/v3/cloudformation/greengrass" + "github.com/awslabs/goformation/v3/cloudformation/guardduty" + "github.com/awslabs/goformation/v3/cloudformation/iam" + "github.com/awslabs/goformation/v3/cloudformation/inspector" + "github.com/awslabs/goformation/v3/cloudformation/iot" + "github.com/awslabs/goformation/v3/cloudformation/iot1click" + "github.com/awslabs/goformation/v3/cloudformation/iotanalytics" + "github.com/awslabs/goformation/v3/cloudformation/iotevents" + "github.com/awslabs/goformation/v3/cloudformation/iotthingsgraph" + "github.com/awslabs/goformation/v3/cloudformation/kinesis" + "github.com/awslabs/goformation/v3/cloudformation/kinesisanalytics" + "github.com/awslabs/goformation/v3/cloudformation/kinesisanalyticsv2" + "github.com/awslabs/goformation/v3/cloudformation/kinesisfirehose" + "github.com/awslabs/goformation/v3/cloudformation/kms" + "github.com/awslabs/goformation/v3/cloudformation/lakeformation" + "github.com/awslabs/goformation/v3/cloudformation/lambda" + "github.com/awslabs/goformation/v3/cloudformation/logs" + "github.com/awslabs/goformation/v3/cloudformation/managedblockchain" + "github.com/awslabs/goformation/v3/cloudformation/medialive" + "github.com/awslabs/goformation/v3/cloudformation/mediastore" + "github.com/awslabs/goformation/v3/cloudformation/msk" + "github.com/awslabs/goformation/v3/cloudformation/neptune" + "github.com/awslabs/goformation/v3/cloudformation/opsworks" + "github.com/awslabs/goformation/v3/cloudformation/opsworkscm" + "github.com/awslabs/goformation/v3/cloudformation/pinpoint" + "github.com/awslabs/goformation/v3/cloudformation/pinpointemail" + "github.com/awslabs/goformation/v3/cloudformation/qldb" + "github.com/awslabs/goformation/v3/cloudformation/ram" + "github.com/awslabs/goformation/v3/cloudformation/rds" + "github.com/awslabs/goformation/v3/cloudformation/redshift" + "github.com/awslabs/goformation/v3/cloudformation/robomaker" + "github.com/awslabs/goformation/v3/cloudformation/route53" + "github.com/awslabs/goformation/v3/cloudformation/route53resolver" + "github.com/awslabs/goformation/v3/cloudformation/s3" + "github.com/awslabs/goformation/v3/cloudformation/sagemaker" + "github.com/awslabs/goformation/v3/cloudformation/sdb" + "github.com/awslabs/goformation/v3/cloudformation/secretsmanager" + "github.com/awslabs/goformation/v3/cloudformation/securityhub" + "github.com/awslabs/goformation/v3/cloudformation/serverless" + "github.com/awslabs/goformation/v3/cloudformation/servicecatalog" + "github.com/awslabs/goformation/v3/cloudformation/servicediscovery" + "github.com/awslabs/goformation/v3/cloudformation/ses" + "github.com/awslabs/goformation/v3/cloudformation/sns" + "github.com/awslabs/goformation/v3/cloudformation/sqs" + "github.com/awslabs/goformation/v3/cloudformation/ssm" + "github.com/awslabs/goformation/v3/cloudformation/stepfunctions" + "github.com/awslabs/goformation/v3/cloudformation/transfer" + "github.com/awslabs/goformation/v3/cloudformation/waf" + "github.com/awslabs/goformation/v3/cloudformation/wafregional" + "github.com/awslabs/goformation/v3/cloudformation/workspaces" ) // AllResources fetches an iterable map all CloudFormation and SAM resources func AllResources() map[string]Resource { return map[string]Resource{ - "AWS::AmazonMQ::Broker": &resources.AWSAmazonMQBroker{}, - "AWS::AmazonMQ::Configuration": &resources.AWSAmazonMQConfiguration{}, - "AWS::AmazonMQ::ConfigurationAssociation": &resources.AWSAmazonMQConfigurationAssociation{}, - "AWS::Amplify::App": &resources.AWSAmplifyApp{}, - "AWS::Amplify::Branch": &resources.AWSAmplifyBranch{}, - "AWS::Amplify::Domain": &resources.AWSAmplifyDomain{}, - "AWS::ApiGateway::Account": &resources.AWSApiGatewayAccount{}, - "AWS::ApiGateway::ApiKey": &resources.AWSApiGatewayApiKey{}, - "AWS::ApiGateway::Authorizer": &resources.AWSApiGatewayAuthorizer{}, - "AWS::ApiGateway::BasePathMapping": &resources.AWSApiGatewayBasePathMapping{}, - "AWS::ApiGateway::ClientCertificate": &resources.AWSApiGatewayClientCertificate{}, - "AWS::ApiGateway::Deployment": &resources.AWSApiGatewayDeployment{}, - "AWS::ApiGateway::DocumentationPart": &resources.AWSApiGatewayDocumentationPart{}, - "AWS::ApiGateway::DocumentationVersion": &resources.AWSApiGatewayDocumentationVersion{}, - "AWS::ApiGateway::DomainName": &resources.AWSApiGatewayDomainName{}, - "AWS::ApiGateway::GatewayResponse": &resources.AWSApiGatewayGatewayResponse{}, - "AWS::ApiGateway::Method": &resources.AWSApiGatewayMethod{}, - "AWS::ApiGateway::Model": &resources.AWSApiGatewayModel{}, - "AWS::ApiGateway::RequestValidator": &resources.AWSApiGatewayRequestValidator{}, - "AWS::ApiGateway::Resource": &resources.AWSApiGatewayResource{}, - "AWS::ApiGateway::RestApi": &resources.AWSApiGatewayRestApi{}, - "AWS::ApiGateway::Stage": &resources.AWSApiGatewayStage{}, - "AWS::ApiGateway::UsagePlan": &resources.AWSApiGatewayUsagePlan{}, - "AWS::ApiGateway::UsagePlanKey": &resources.AWSApiGatewayUsagePlanKey{}, - "AWS::ApiGateway::VpcLink": &resources.AWSApiGatewayVpcLink{}, - "AWS::ApiGatewayV2::Api": &resources.AWSApiGatewayV2Api{}, - "AWS::ApiGatewayV2::ApiMapping": &resources.AWSApiGatewayV2ApiMapping{}, - "AWS::ApiGatewayV2::Authorizer": &resources.AWSApiGatewayV2Authorizer{}, - "AWS::ApiGatewayV2::Deployment": &resources.AWSApiGatewayV2Deployment{}, - "AWS::ApiGatewayV2::DomainName": &resources.AWSApiGatewayV2DomainName{}, - "AWS::ApiGatewayV2::Integration": &resources.AWSApiGatewayV2Integration{}, - "AWS::ApiGatewayV2::IntegrationResponse": &resources.AWSApiGatewayV2IntegrationResponse{}, - "AWS::ApiGatewayV2::Model": &resources.AWSApiGatewayV2Model{}, - "AWS::ApiGatewayV2::Route": &resources.AWSApiGatewayV2Route{}, - "AWS::ApiGatewayV2::RouteResponse": &resources.AWSApiGatewayV2RouteResponse{}, - "AWS::ApiGatewayV2::Stage": &resources.AWSApiGatewayV2Stage{}, - "AWS::AppMesh::Mesh": &resources.AWSAppMeshMesh{}, - "AWS::AppMesh::Route": &resources.AWSAppMeshRoute{}, - "AWS::AppMesh::VirtualNode": &resources.AWSAppMeshVirtualNode{}, - "AWS::AppMesh::VirtualRouter": &resources.AWSAppMeshVirtualRouter{}, - "AWS::AppMesh::VirtualService": &resources.AWSAppMeshVirtualService{}, - "AWS::AppStream::DirectoryConfig": &resources.AWSAppStreamDirectoryConfig{}, - "AWS::AppStream::Fleet": &resources.AWSAppStreamFleet{}, - "AWS::AppStream::ImageBuilder": &resources.AWSAppStreamImageBuilder{}, - "AWS::AppStream::Stack": &resources.AWSAppStreamStack{}, - "AWS::AppStream::StackFleetAssociation": &resources.AWSAppStreamStackFleetAssociation{}, - "AWS::AppStream::StackUserAssociation": &resources.AWSAppStreamStackUserAssociation{}, - "AWS::AppStream::User": &resources.AWSAppStreamUser{}, - "AWS::AppSync::ApiKey": &resources.AWSAppSyncApiKey{}, - "AWS::AppSync::DataSource": &resources.AWSAppSyncDataSource{}, - "AWS::AppSync::FunctionConfiguration": &resources.AWSAppSyncFunctionConfiguration{}, - "AWS::AppSync::GraphQLApi": &resources.AWSAppSyncGraphQLApi{}, - "AWS::AppSync::GraphQLSchema": &resources.AWSAppSyncGraphQLSchema{}, - "AWS::AppSync::Resolver": &resources.AWSAppSyncResolver{}, - "AWS::ApplicationAutoScaling::ScalableTarget": &resources.AWSApplicationAutoScalingScalableTarget{}, - "AWS::ApplicationAutoScaling::ScalingPolicy": &resources.AWSApplicationAutoScalingScalingPolicy{}, - "AWS::Athena::NamedQuery": &resources.AWSAthenaNamedQuery{}, - "AWS::AutoScaling::AutoScalingGroup": &resources.AWSAutoScalingAutoScalingGroup{}, - "AWS::AutoScaling::LaunchConfiguration": &resources.AWSAutoScalingLaunchConfiguration{}, - "AWS::AutoScaling::LifecycleHook": &resources.AWSAutoScalingLifecycleHook{}, - "AWS::AutoScaling::ScalingPolicy": &resources.AWSAutoScalingScalingPolicy{}, - "AWS::AutoScaling::ScheduledAction": &resources.AWSAutoScalingScheduledAction{}, - "AWS::AutoScalingPlans::ScalingPlan": &resources.AWSAutoScalingPlansScalingPlan{}, - "AWS::Backup::BackupPlan": &resources.AWSBackupBackupPlan{}, - "AWS::Backup::BackupSelection": &resources.AWSBackupBackupSelection{}, - "AWS::Backup::BackupVault": &resources.AWSBackupBackupVault{}, - "AWS::Batch::ComputeEnvironment": &resources.AWSBatchComputeEnvironment{}, - "AWS::Batch::JobDefinition": &resources.AWSBatchJobDefinition{}, - "AWS::Batch::JobQueue": &resources.AWSBatchJobQueue{}, - "AWS::Budgets::Budget": &resources.AWSBudgetsBudget{}, - "AWS::CertificateManager::Certificate": &resources.AWSCertificateManagerCertificate{}, - "AWS::Cloud9::EnvironmentEC2": &resources.AWSCloud9EnvironmentEC2{}, - "AWS::CloudFormation::CustomResource": &resources.AWSCloudFormationCustomResource{}, - "AWS::CloudFormation::Macro": &resources.AWSCloudFormationMacro{}, - "AWS::CloudFormation::Stack": &resources.AWSCloudFormationStack{}, - "AWS::CloudFormation::WaitCondition": &resources.AWSCloudFormationWaitCondition{}, - "AWS::CloudFormation::WaitConditionHandle": &resources.AWSCloudFormationWaitConditionHandle{}, - "AWS::CloudFront::CloudFrontOriginAccessIdentity": &resources.AWSCloudFrontCloudFrontOriginAccessIdentity{}, - "AWS::CloudFront::Distribution": &resources.AWSCloudFrontDistribution{}, - "AWS::CloudFront::StreamingDistribution": &resources.AWSCloudFrontStreamingDistribution{}, - "AWS::CloudTrail::Trail": &resources.AWSCloudTrailTrail{}, - "AWS::CloudWatch::Alarm": &resources.AWSCloudWatchAlarm{}, - "AWS::CloudWatch::AnomalyDetector": &resources.AWSCloudWatchAnomalyDetector{}, - "AWS::CloudWatch::Dashboard": &resources.AWSCloudWatchDashboard{}, - "AWS::CodeBuild::Project": &resources.AWSCodeBuildProject{}, - "AWS::CodeBuild::SourceCredential": &resources.AWSCodeBuildSourceCredential{}, - "AWS::CodeCommit::Repository": &resources.AWSCodeCommitRepository{}, - "AWS::CodeDeploy::Application": &resources.AWSCodeDeployApplication{}, - "AWS::CodeDeploy::DeploymentConfig": &resources.AWSCodeDeployDeploymentConfig{}, - "AWS::CodeDeploy::DeploymentGroup": &resources.AWSCodeDeployDeploymentGroup{}, - "AWS::CodePipeline::CustomActionType": &resources.AWSCodePipelineCustomActionType{}, - "AWS::CodePipeline::Pipeline": &resources.AWSCodePipelinePipeline{}, - "AWS::CodePipeline::Webhook": &resources.AWSCodePipelineWebhook{}, - "AWS::CodeStar::GitHubRepository": &resources.AWSCodeStarGitHubRepository{}, - "AWS::Cognito::IdentityPool": &resources.AWSCognitoIdentityPool{}, - "AWS::Cognito::IdentityPoolRoleAttachment": &resources.AWSCognitoIdentityPoolRoleAttachment{}, - "AWS::Cognito::UserPool": &resources.AWSCognitoUserPool{}, - "AWS::Cognito::UserPoolClient": &resources.AWSCognitoUserPoolClient{}, - "AWS::Cognito::UserPoolDomain": &resources.AWSCognitoUserPoolDomain{}, - "AWS::Cognito::UserPoolGroup": &resources.AWSCognitoUserPoolGroup{}, - "AWS::Cognito::UserPoolIdentityProvider": &resources.AWSCognitoUserPoolIdentityProvider{}, - "AWS::Cognito::UserPoolResourceServer": &resources.AWSCognitoUserPoolResourceServer{}, - "AWS::Cognito::UserPoolRiskConfigurationAttachment": &resources.AWSCognitoUserPoolRiskConfigurationAttachment{}, - "AWS::Cognito::UserPoolUICustomizationAttachment": &resources.AWSCognitoUserPoolUICustomizationAttachment{}, - "AWS::Cognito::UserPoolUser": &resources.AWSCognitoUserPoolUser{}, - "AWS::Cognito::UserPoolUserToGroupAttachment": &resources.AWSCognitoUserPoolUserToGroupAttachment{}, - "AWS::Config::AggregationAuthorization": &resources.AWSConfigAggregationAuthorization{}, - "AWS::Config::ConfigRule": &resources.AWSConfigConfigRule{}, - "AWS::Config::ConfigurationAggregator": &resources.AWSConfigConfigurationAggregator{}, - "AWS::Config::ConfigurationRecorder": &resources.AWSConfigConfigurationRecorder{}, - "AWS::Config::DeliveryChannel": &resources.AWSConfigDeliveryChannel{}, - "AWS::Config::OrganizationConfigRule": &resources.AWSConfigOrganizationConfigRule{}, - "AWS::Config::RemediationConfiguration": &resources.AWSConfigRemediationConfiguration{}, - "AWS::DAX::Cluster": &resources.AWSDAXCluster{}, - "AWS::DAX::ParameterGroup": &resources.AWSDAXParameterGroup{}, - "AWS::DAX::SubnetGroup": &resources.AWSDAXSubnetGroup{}, - "AWS::DLM::LifecyclePolicy": &resources.AWSDLMLifecyclePolicy{}, - "AWS::DMS::Certificate": &resources.AWSDMSCertificate{}, - "AWS::DMS::Endpoint": &resources.AWSDMSEndpoint{}, - "AWS::DMS::EventSubscription": &resources.AWSDMSEventSubscription{}, - "AWS::DMS::ReplicationInstance": &resources.AWSDMSReplicationInstance{}, - "AWS::DMS::ReplicationSubnetGroup": &resources.AWSDMSReplicationSubnetGroup{}, - "AWS::DMS::ReplicationTask": &resources.AWSDMSReplicationTask{}, - "AWS::DataPipeline::Pipeline": &resources.AWSDataPipelinePipeline{}, - "AWS::DirectoryService::MicrosoftAD": &resources.AWSDirectoryServiceMicrosoftAD{}, - "AWS::DirectoryService::SimpleAD": &resources.AWSDirectoryServiceSimpleAD{}, - "AWS::DocDB::DBCluster": &resources.AWSDocDBDBCluster{}, - "AWS::DocDB::DBClusterParameterGroup": &resources.AWSDocDBDBClusterParameterGroup{}, - "AWS::DocDB::DBInstance": &resources.AWSDocDBDBInstance{}, - "AWS::DocDB::DBSubnetGroup": &resources.AWSDocDBDBSubnetGroup{}, - "AWS::DynamoDB::Table": &resources.AWSDynamoDBTable{}, - "AWS::EC2::CapacityReservation": &resources.AWSEC2CapacityReservation{}, - "AWS::EC2::ClientVpnAuthorizationRule": &resources.AWSEC2ClientVpnAuthorizationRule{}, - "AWS::EC2::ClientVpnEndpoint": &resources.AWSEC2ClientVpnEndpoint{}, - "AWS::EC2::ClientVpnRoute": &resources.AWSEC2ClientVpnRoute{}, - "AWS::EC2::ClientVpnTargetNetworkAssociation": &resources.AWSEC2ClientVpnTargetNetworkAssociation{}, - "AWS::EC2::CustomerGateway": &resources.AWSEC2CustomerGateway{}, - "AWS::EC2::DHCPOptions": &resources.AWSEC2DHCPOptions{}, - "AWS::EC2::EC2Fleet": &resources.AWSEC2EC2Fleet{}, - "AWS::EC2::EIP": &resources.AWSEC2EIP{}, - "AWS::EC2::EIPAssociation": &resources.AWSEC2EIPAssociation{}, - "AWS::EC2::EgressOnlyInternetGateway": &resources.AWSEC2EgressOnlyInternetGateway{}, - "AWS::EC2::FlowLog": &resources.AWSEC2FlowLog{}, - "AWS::EC2::Host": &resources.AWSEC2Host{}, - "AWS::EC2::Instance": &resources.AWSEC2Instance{}, - "AWS::EC2::InternetGateway": &resources.AWSEC2InternetGateway{}, - "AWS::EC2::LaunchTemplate": &resources.AWSEC2LaunchTemplate{}, - "AWS::EC2::NatGateway": &resources.AWSEC2NatGateway{}, - "AWS::EC2::NetworkAcl": &resources.AWSEC2NetworkAcl{}, - "AWS::EC2::NetworkAclEntry": &resources.AWSEC2NetworkAclEntry{}, - "AWS::EC2::NetworkInterface": &resources.AWSEC2NetworkInterface{}, - "AWS::EC2::NetworkInterfaceAttachment": &resources.AWSEC2NetworkInterfaceAttachment{}, - "AWS::EC2::NetworkInterfacePermission": &resources.AWSEC2NetworkInterfacePermission{}, - "AWS::EC2::PlacementGroup": &resources.AWSEC2PlacementGroup{}, - "AWS::EC2::Route": &resources.AWSEC2Route{}, - "AWS::EC2::RouteTable": &resources.AWSEC2RouteTable{}, - "AWS::EC2::SecurityGroup": &resources.AWSEC2SecurityGroup{}, - "AWS::EC2::SecurityGroupEgress": &resources.AWSEC2SecurityGroupEgress{}, - "AWS::EC2::SecurityGroupIngress": &resources.AWSEC2SecurityGroupIngress{}, - "AWS::EC2::SpotFleet": &resources.AWSEC2SpotFleet{}, - "AWS::EC2::Subnet": &resources.AWSEC2Subnet{}, - "AWS::EC2::SubnetCidrBlock": &resources.AWSEC2SubnetCidrBlock{}, - "AWS::EC2::SubnetNetworkAclAssociation": &resources.AWSEC2SubnetNetworkAclAssociation{}, - "AWS::EC2::SubnetRouteTableAssociation": &resources.AWSEC2SubnetRouteTableAssociation{}, - "AWS::EC2::TrafficMirrorFilter": &resources.AWSEC2TrafficMirrorFilter{}, - "AWS::EC2::TrafficMirrorFilterRule": &resources.AWSEC2TrafficMirrorFilterRule{}, - "AWS::EC2::TrafficMirrorSession": &resources.AWSEC2TrafficMirrorSession{}, - "AWS::EC2::TrafficMirrorTarget": &resources.AWSEC2TrafficMirrorTarget{}, - "AWS::EC2::TransitGateway": &resources.AWSEC2TransitGateway{}, - "AWS::EC2::TransitGatewayAttachment": &resources.AWSEC2TransitGatewayAttachment{}, - "AWS::EC2::TransitGatewayRoute": &resources.AWSEC2TransitGatewayRoute{}, - "AWS::EC2::TransitGatewayRouteTable": &resources.AWSEC2TransitGatewayRouteTable{}, - "AWS::EC2::TransitGatewayRouteTableAssociation": &resources.AWSEC2TransitGatewayRouteTableAssociation{}, - "AWS::EC2::TransitGatewayRouteTablePropagation": &resources.AWSEC2TransitGatewayRouteTablePropagation{}, - "AWS::EC2::VPC": &resources.AWSEC2VPC{}, - "AWS::EC2::VPCCidrBlock": &resources.AWSEC2VPCCidrBlock{}, - "AWS::EC2::VPCDHCPOptionsAssociation": &resources.AWSEC2VPCDHCPOptionsAssociation{}, - "AWS::EC2::VPCEndpoint": &resources.AWSEC2VPCEndpoint{}, - "AWS::EC2::VPCEndpointConnectionNotification": &resources.AWSEC2VPCEndpointConnectionNotification{}, - "AWS::EC2::VPCEndpointService": &resources.AWSEC2VPCEndpointService{}, - "AWS::EC2::VPCEndpointServicePermissions": &resources.AWSEC2VPCEndpointServicePermissions{}, - "AWS::EC2::VPCGatewayAttachment": &resources.AWSEC2VPCGatewayAttachment{}, - "AWS::EC2::VPCPeeringConnection": &resources.AWSEC2VPCPeeringConnection{}, - "AWS::EC2::VPNConnection": &resources.AWSEC2VPNConnection{}, - "AWS::EC2::VPNConnectionRoute": &resources.AWSEC2VPNConnectionRoute{}, - "AWS::EC2::VPNGateway": &resources.AWSEC2VPNGateway{}, - "AWS::EC2::VPNGatewayRoutePropagation": &resources.AWSEC2VPNGatewayRoutePropagation{}, - "AWS::EC2::Volume": &resources.AWSEC2Volume{}, - "AWS::EC2::VolumeAttachment": &resources.AWSEC2VolumeAttachment{}, - "AWS::ECR::Repository": &resources.AWSECRRepository{}, - "AWS::ECS::Cluster": &resources.AWSECSCluster{}, - "AWS::ECS::Service": &resources.AWSECSService{}, - "AWS::ECS::TaskDefinition": &resources.AWSECSTaskDefinition{}, - "AWS::EFS::FileSystem": &resources.AWSEFSFileSystem{}, - "AWS::EFS::MountTarget": &resources.AWSEFSMountTarget{}, - "AWS::EKS::Cluster": &resources.AWSEKSCluster{}, - "AWS::EMR::Cluster": &resources.AWSEMRCluster{}, - "AWS::EMR::InstanceFleetConfig": &resources.AWSEMRInstanceFleetConfig{}, - "AWS::EMR::InstanceGroupConfig": &resources.AWSEMRInstanceGroupConfig{}, - "AWS::EMR::SecurityConfiguration": &resources.AWSEMRSecurityConfiguration{}, - "AWS::EMR::Step": &resources.AWSEMRStep{}, - "AWS::ElastiCache::CacheCluster": &resources.AWSElastiCacheCacheCluster{}, - "AWS::ElastiCache::ParameterGroup": &resources.AWSElastiCacheParameterGroup{}, - "AWS::ElastiCache::ReplicationGroup": &resources.AWSElastiCacheReplicationGroup{}, - "AWS::ElastiCache::SecurityGroup": &resources.AWSElastiCacheSecurityGroup{}, - "AWS::ElastiCache::SecurityGroupIngress": &resources.AWSElastiCacheSecurityGroupIngress{}, - "AWS::ElastiCache::SubnetGroup": &resources.AWSElastiCacheSubnetGroup{}, - "AWS::ElasticBeanstalk::Application": &resources.AWSElasticBeanstalkApplication{}, - "AWS::ElasticBeanstalk::ApplicationVersion": &resources.AWSElasticBeanstalkApplicationVersion{}, - "AWS::ElasticBeanstalk::ConfigurationTemplate": &resources.AWSElasticBeanstalkConfigurationTemplate{}, - "AWS::ElasticBeanstalk::Environment": &resources.AWSElasticBeanstalkEnvironment{}, - "AWS::ElasticLoadBalancing::LoadBalancer": &resources.AWSElasticLoadBalancingLoadBalancer{}, - "AWS::ElasticLoadBalancingV2::Listener": &resources.AWSElasticLoadBalancingV2Listener{}, - "AWS::ElasticLoadBalancingV2::ListenerCertificate": &resources.AWSElasticLoadBalancingV2ListenerCertificate{}, - "AWS::ElasticLoadBalancingV2::ListenerRule": &resources.AWSElasticLoadBalancingV2ListenerRule{}, - "AWS::ElasticLoadBalancingV2::LoadBalancer": &resources.AWSElasticLoadBalancingV2LoadBalancer{}, - "AWS::ElasticLoadBalancingV2::TargetGroup": &resources.AWSElasticLoadBalancingV2TargetGroup{}, - "AWS::Elasticsearch::Domain": &resources.AWSElasticsearchDomain{}, - "AWS::Events::EventBus": &resources.AWSEventsEventBus{}, - "AWS::Events::EventBusPolicy": &resources.AWSEventsEventBusPolicy{}, - "AWS::Events::Rule": &resources.AWSEventsRule{}, - "AWS::FSx::FileSystem": &resources.AWSFSxFileSystem{}, - "AWS::GameLift::Alias": &resources.AWSGameLiftAlias{}, - "AWS::GameLift::Build": &resources.AWSGameLiftBuild{}, - "AWS::GameLift::Fleet": &resources.AWSGameLiftFleet{}, - "AWS::Glue::Classifier": &resources.AWSGlueClassifier{}, - "AWS::Glue::Connection": &resources.AWSGlueConnection{}, - "AWS::Glue::Crawler": &resources.AWSGlueCrawler{}, - "AWS::Glue::DataCatalogEncryptionSettings": &resources.AWSGlueDataCatalogEncryptionSettings{}, - "AWS::Glue::Database": &resources.AWSGlueDatabase{}, - "AWS::Glue::DevEndpoint": &resources.AWSGlueDevEndpoint{}, - "AWS::Glue::Job": &resources.AWSGlueJob{}, - "AWS::Glue::MLTransform": &resources.AWSGlueMLTransform{}, - "AWS::Glue::Partition": &resources.AWSGluePartition{}, - "AWS::Glue::SecurityConfiguration": &resources.AWSGlueSecurityConfiguration{}, - "AWS::Glue::Table": &resources.AWSGlueTable{}, - "AWS::Glue::Trigger": &resources.AWSGlueTrigger{}, - "AWS::Glue::Workflow": &resources.AWSGlueWorkflow{}, - "AWS::Greengrass::ConnectorDefinition": &resources.AWSGreengrassConnectorDefinition{}, - "AWS::Greengrass::ConnectorDefinitionVersion": &resources.AWSGreengrassConnectorDefinitionVersion{}, - "AWS::Greengrass::CoreDefinition": &resources.AWSGreengrassCoreDefinition{}, - "AWS::Greengrass::CoreDefinitionVersion": &resources.AWSGreengrassCoreDefinitionVersion{}, - "AWS::Greengrass::DeviceDefinition": &resources.AWSGreengrassDeviceDefinition{}, - "AWS::Greengrass::DeviceDefinitionVersion": &resources.AWSGreengrassDeviceDefinitionVersion{}, - "AWS::Greengrass::FunctionDefinition": &resources.AWSGreengrassFunctionDefinition{}, - "AWS::Greengrass::FunctionDefinitionVersion": &resources.AWSGreengrassFunctionDefinitionVersion{}, - "AWS::Greengrass::Group": &resources.AWSGreengrassGroup{}, - "AWS::Greengrass::GroupVersion": &resources.AWSGreengrassGroupVersion{}, - "AWS::Greengrass::LoggerDefinition": &resources.AWSGreengrassLoggerDefinition{}, - "AWS::Greengrass::LoggerDefinitionVersion": &resources.AWSGreengrassLoggerDefinitionVersion{}, - "AWS::Greengrass::ResourceDefinition": &resources.AWSGreengrassResourceDefinition{}, - "AWS::Greengrass::ResourceDefinitionVersion": &resources.AWSGreengrassResourceDefinitionVersion{}, - "AWS::Greengrass::SubscriptionDefinition": &resources.AWSGreengrassSubscriptionDefinition{}, - "AWS::Greengrass::SubscriptionDefinitionVersion": &resources.AWSGreengrassSubscriptionDefinitionVersion{}, - "AWS::GuardDuty::Detector": &resources.AWSGuardDutyDetector{}, - "AWS::GuardDuty::Filter": &resources.AWSGuardDutyFilter{}, - "AWS::GuardDuty::IPSet": &resources.AWSGuardDutyIPSet{}, - "AWS::GuardDuty::Master": &resources.AWSGuardDutyMaster{}, - "AWS::GuardDuty::Member": &resources.AWSGuardDutyMember{}, - "AWS::GuardDuty::ThreatIntelSet": &resources.AWSGuardDutyThreatIntelSet{}, - "AWS::IAM::AccessKey": &resources.AWSIAMAccessKey{}, - "AWS::IAM::Group": &resources.AWSIAMGroup{}, - "AWS::IAM::InstanceProfile": &resources.AWSIAMInstanceProfile{}, - "AWS::IAM::ManagedPolicy": &resources.AWSIAMManagedPolicy{}, - "AWS::IAM::Policy": &resources.AWSIAMPolicy{}, - "AWS::IAM::Role": &resources.AWSIAMRole{}, - "AWS::IAM::ServiceLinkedRole": &resources.AWSIAMServiceLinkedRole{}, - "AWS::IAM::User": &resources.AWSIAMUser{}, - "AWS::IAM::UserToGroupAddition": &resources.AWSIAMUserToGroupAddition{}, - "AWS::Inspector::AssessmentTarget": &resources.AWSInspectorAssessmentTarget{}, - "AWS::Inspector::AssessmentTemplate": &resources.AWSInspectorAssessmentTemplate{}, - "AWS::Inspector::ResourceGroup": &resources.AWSInspectorResourceGroup{}, - "AWS::IoT1Click::Device": &resources.AWSIoT1ClickDevice{}, - "AWS::IoT1Click::Placement": &resources.AWSIoT1ClickPlacement{}, - "AWS::IoT1Click::Project": &resources.AWSIoT1ClickProject{}, - "AWS::IoT::Certificate": &resources.AWSIoTCertificate{}, - "AWS::IoT::Policy": &resources.AWSIoTPolicy{}, - "AWS::IoT::PolicyPrincipalAttachment": &resources.AWSIoTPolicyPrincipalAttachment{}, - "AWS::IoT::Thing": &resources.AWSIoTThing{}, - "AWS::IoT::ThingPrincipalAttachment": &resources.AWSIoTThingPrincipalAttachment{}, - "AWS::IoT::TopicRule": &resources.AWSIoTTopicRule{}, - "AWS::IoTAnalytics::Channel": &resources.AWSIoTAnalyticsChannel{}, - "AWS::IoTAnalytics::Dataset": &resources.AWSIoTAnalyticsDataset{}, - "AWS::IoTAnalytics::Datastore": &resources.AWSIoTAnalyticsDatastore{}, - "AWS::IoTAnalytics::Pipeline": &resources.AWSIoTAnalyticsPipeline{}, - "AWS::IoTEvents::DetectorModel": &resources.AWSIoTEventsDetectorModel{}, - "AWS::IoTEvents::Input": &resources.AWSIoTEventsInput{}, - "AWS::IoTThingsGraph::FlowTemplate": &resources.AWSIoTThingsGraphFlowTemplate{}, - "AWS::KMS::Alias": &resources.AWSKMSAlias{}, - "AWS::KMS::Key": &resources.AWSKMSKey{}, - "AWS::Kinesis::Stream": &resources.AWSKinesisStream{}, - "AWS::Kinesis::StreamConsumer": &resources.AWSKinesisStreamConsumer{}, - "AWS::KinesisAnalytics::Application": &resources.AWSKinesisAnalyticsApplication{}, - "AWS::KinesisAnalytics::ApplicationOutput": &resources.AWSKinesisAnalyticsApplicationOutput{}, - "AWS::KinesisAnalytics::ApplicationReferenceDataSource": &resources.AWSKinesisAnalyticsApplicationReferenceDataSource{}, - "AWS::KinesisAnalyticsV2::Application": &resources.AWSKinesisAnalyticsV2Application{}, - "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption": &resources.AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption{}, - "AWS::KinesisAnalyticsV2::ApplicationOutput": &resources.AWSKinesisAnalyticsV2ApplicationOutput{}, - "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource": &resources.AWSKinesisAnalyticsV2ApplicationReferenceDataSource{}, - "AWS::KinesisFirehose::DeliveryStream": &resources.AWSKinesisFirehoseDeliveryStream{}, - "AWS::LakeFormation::DataLakeSettings": &resources.AWSLakeFormationDataLakeSettings{}, - "AWS::LakeFormation::Permissions": &resources.AWSLakeFormationPermissions{}, - "AWS::LakeFormation::Resource": &resources.AWSLakeFormationResource{}, - "AWS::Lambda::Alias": &resources.AWSLambdaAlias{}, - "AWS::Lambda::EventSourceMapping": &resources.AWSLambdaEventSourceMapping{}, - "AWS::Lambda::Function": &resources.AWSLambdaFunction{}, - "AWS::Lambda::LayerVersion": &resources.AWSLambdaLayerVersion{}, - "AWS::Lambda::LayerVersionPermission": &resources.AWSLambdaLayerVersionPermission{}, - "AWS::Lambda::Permission": &resources.AWSLambdaPermission{}, - "AWS::Lambda::Version": &resources.AWSLambdaVersion{}, - "AWS::Logs::Destination": &resources.AWSLogsDestination{}, - "AWS::Logs::LogGroup": &resources.AWSLogsLogGroup{}, - "AWS::Logs::LogStream": &resources.AWSLogsLogStream{}, - "AWS::Logs::MetricFilter": &resources.AWSLogsMetricFilter{}, - "AWS::Logs::SubscriptionFilter": &resources.AWSLogsSubscriptionFilter{}, - "AWS::MSK::Cluster": &resources.AWSMSKCluster{}, - "AWS::ManagedBlockchain::Member": &resources.AWSManagedBlockchainMember{}, - "AWS::ManagedBlockchain::Node": &resources.AWSManagedBlockchainNode{}, - "AWS::MediaLive::Channel": &resources.AWSMediaLiveChannel{}, - "AWS::MediaLive::Input": &resources.AWSMediaLiveInput{}, - "AWS::MediaLive::InputSecurityGroup": &resources.AWSMediaLiveInputSecurityGroup{}, - "AWS::MediaStore::Container": &resources.AWSMediaStoreContainer{}, - "AWS::Neptune::DBCluster": &resources.AWSNeptuneDBCluster{}, - "AWS::Neptune::DBClusterParameterGroup": &resources.AWSNeptuneDBClusterParameterGroup{}, - "AWS::Neptune::DBInstance": &resources.AWSNeptuneDBInstance{}, - "AWS::Neptune::DBParameterGroup": &resources.AWSNeptuneDBParameterGroup{}, - "AWS::Neptune::DBSubnetGroup": &resources.AWSNeptuneDBSubnetGroup{}, - "AWS::OpsWorks::App": &resources.AWSOpsWorksApp{}, - "AWS::OpsWorks::ElasticLoadBalancerAttachment": &resources.AWSOpsWorksElasticLoadBalancerAttachment{}, - "AWS::OpsWorks::Instance": &resources.AWSOpsWorksInstance{}, - "AWS::OpsWorks::Layer": &resources.AWSOpsWorksLayer{}, - "AWS::OpsWorks::Stack": &resources.AWSOpsWorksStack{}, - "AWS::OpsWorks::UserProfile": &resources.AWSOpsWorksUserProfile{}, - "AWS::OpsWorks::Volume": &resources.AWSOpsWorksVolume{}, - "AWS::OpsWorksCM::Server": &resources.AWSOpsWorksCMServer{}, - "AWS::Pinpoint::ADMChannel": &resources.AWSPinpointADMChannel{}, - "AWS::Pinpoint::APNSChannel": &resources.AWSPinpointAPNSChannel{}, - "AWS::Pinpoint::APNSSandboxChannel": &resources.AWSPinpointAPNSSandboxChannel{}, - "AWS::Pinpoint::APNSVoipChannel": &resources.AWSPinpointAPNSVoipChannel{}, - "AWS::Pinpoint::APNSVoipSandboxChannel": &resources.AWSPinpointAPNSVoipSandboxChannel{}, - "AWS::Pinpoint::App": &resources.AWSPinpointApp{}, - "AWS::Pinpoint::ApplicationSettings": &resources.AWSPinpointApplicationSettings{}, - "AWS::Pinpoint::BaiduChannel": &resources.AWSPinpointBaiduChannel{}, - "AWS::Pinpoint::Campaign": &resources.AWSPinpointCampaign{}, - "AWS::Pinpoint::EmailChannel": &resources.AWSPinpointEmailChannel{}, - "AWS::Pinpoint::EventStream": &resources.AWSPinpointEventStream{}, - "AWS::Pinpoint::GCMChannel": &resources.AWSPinpointGCMChannel{}, - "AWS::Pinpoint::SMSChannel": &resources.AWSPinpointSMSChannel{}, - "AWS::Pinpoint::Segment": &resources.AWSPinpointSegment{}, - "AWS::Pinpoint::VoiceChannel": &resources.AWSPinpointVoiceChannel{}, - "AWS::PinpointEmail::ConfigurationSet": &resources.AWSPinpointEmailConfigurationSet{}, - "AWS::PinpointEmail::ConfigurationSetEventDestination": &resources.AWSPinpointEmailConfigurationSetEventDestination{}, - "AWS::PinpointEmail::DedicatedIpPool": &resources.AWSPinpointEmailDedicatedIpPool{}, - "AWS::PinpointEmail::Identity": &resources.AWSPinpointEmailIdentity{}, - "AWS::QLDB::Ledger": &resources.AWSQLDBLedger{}, - "AWS::RAM::ResourceShare": &resources.AWSRAMResourceShare{}, - "AWS::RDS::DBCluster": &resources.AWSRDSDBCluster{}, - "AWS::RDS::DBClusterParameterGroup": &resources.AWSRDSDBClusterParameterGroup{}, - "AWS::RDS::DBInstance": &resources.AWSRDSDBInstance{}, - "AWS::RDS::DBParameterGroup": &resources.AWSRDSDBParameterGroup{}, - "AWS::RDS::DBSecurityGroup": &resources.AWSRDSDBSecurityGroup{}, - "AWS::RDS::DBSecurityGroupIngress": &resources.AWSRDSDBSecurityGroupIngress{}, - "AWS::RDS::DBSubnetGroup": &resources.AWSRDSDBSubnetGroup{}, - "AWS::RDS::EventSubscription": &resources.AWSRDSEventSubscription{}, - "AWS::RDS::OptionGroup": &resources.AWSRDSOptionGroup{}, - "AWS::Redshift::Cluster": &resources.AWSRedshiftCluster{}, - "AWS::Redshift::ClusterParameterGroup": &resources.AWSRedshiftClusterParameterGroup{}, - "AWS::Redshift::ClusterSecurityGroup": &resources.AWSRedshiftClusterSecurityGroup{}, - "AWS::Redshift::ClusterSecurityGroupIngress": &resources.AWSRedshiftClusterSecurityGroupIngress{}, - "AWS::Redshift::ClusterSubnetGroup": &resources.AWSRedshiftClusterSubnetGroup{}, - "AWS::RoboMaker::Fleet": &resources.AWSRoboMakerFleet{}, - "AWS::RoboMaker::Robot": &resources.AWSRoboMakerRobot{}, - "AWS::RoboMaker::RobotApplication": &resources.AWSRoboMakerRobotApplication{}, - "AWS::RoboMaker::RobotApplicationVersion": &resources.AWSRoboMakerRobotApplicationVersion{}, - "AWS::RoboMaker::SimulationApplication": &resources.AWSRoboMakerSimulationApplication{}, - "AWS::RoboMaker::SimulationApplicationVersion": &resources.AWSRoboMakerSimulationApplicationVersion{}, - "AWS::Route53::HealthCheck": &resources.AWSRoute53HealthCheck{}, - "AWS::Route53::HostedZone": &resources.AWSRoute53HostedZone{}, - "AWS::Route53::RecordSet": &resources.AWSRoute53RecordSet{}, - "AWS::Route53::RecordSetGroup": &resources.AWSRoute53RecordSetGroup{}, - "AWS::Route53Resolver::ResolverEndpoint": &resources.AWSRoute53ResolverResolverEndpoint{}, - "AWS::Route53Resolver::ResolverRule": &resources.AWSRoute53ResolverResolverRule{}, - "AWS::Route53Resolver::ResolverRuleAssociation": &resources.AWSRoute53ResolverResolverRuleAssociation{}, - "AWS::S3::Bucket": &resources.AWSS3Bucket{}, - "AWS::S3::BucketPolicy": &resources.AWSS3BucketPolicy{}, - "AWS::SDB::Domain": &resources.AWSSDBDomain{}, - "AWS::SES::ConfigurationSet": &resources.AWSSESConfigurationSet{}, - "AWS::SES::ConfigurationSetEventDestination": &resources.AWSSESConfigurationSetEventDestination{}, - "AWS::SES::ReceiptFilter": &resources.AWSSESReceiptFilter{}, - "AWS::SES::ReceiptRule": &resources.AWSSESReceiptRule{}, - "AWS::SES::ReceiptRuleSet": &resources.AWSSESReceiptRuleSet{}, - "AWS::SES::Template": &resources.AWSSESTemplate{}, - "AWS::SNS::Subscription": &resources.AWSSNSSubscription{}, - "AWS::SNS::Topic": &resources.AWSSNSTopic{}, - "AWS::SNS::TopicPolicy": &resources.AWSSNSTopicPolicy{}, - "AWS::SQS::Queue": &resources.AWSSQSQueue{}, - "AWS::SQS::QueuePolicy": &resources.AWSSQSQueuePolicy{}, - "AWS::SSM::Association": &resources.AWSSSMAssociation{}, - "AWS::SSM::Document": &resources.AWSSSMDocument{}, - "AWS::SSM::MaintenanceWindow": &resources.AWSSSMMaintenanceWindow{}, - "AWS::SSM::MaintenanceWindowTarget": &resources.AWSSSMMaintenanceWindowTarget{}, - "AWS::SSM::MaintenanceWindowTask": &resources.AWSSSMMaintenanceWindowTask{}, - "AWS::SSM::Parameter": &resources.AWSSSMParameter{}, - "AWS::SSM::PatchBaseline": &resources.AWSSSMPatchBaseline{}, - "AWS::SSM::ResourceDataSync": &resources.AWSSSMResourceDataSync{}, - "AWS::SageMaker::CodeRepository": &resources.AWSSageMakerCodeRepository{}, - "AWS::SageMaker::Endpoint": &resources.AWSSageMakerEndpoint{}, - "AWS::SageMaker::EndpointConfig": &resources.AWSSageMakerEndpointConfig{}, - "AWS::SageMaker::Model": &resources.AWSSageMakerModel{}, - "AWS::SageMaker::NotebookInstance": &resources.AWSSageMakerNotebookInstance{}, - "AWS::SageMaker::NotebookInstanceLifecycleConfig": &resources.AWSSageMakerNotebookInstanceLifecycleConfig{}, - "AWS::SageMaker::Workteam": &resources.AWSSageMakerWorkteam{}, - "AWS::SecretsManager::ResourcePolicy": &resources.AWSSecretsManagerResourcePolicy{}, - "AWS::SecretsManager::RotationSchedule": &resources.AWSSecretsManagerRotationSchedule{}, - "AWS::SecretsManager::Secret": &resources.AWSSecretsManagerSecret{}, - "AWS::SecretsManager::SecretTargetAttachment": &resources.AWSSecretsManagerSecretTargetAttachment{}, - "AWS::SecurityHub::Hub": &resources.AWSSecurityHubHub{}, - "AWS::Serverless::Api": &resources.AWSServerlessApi{}, - "AWS::Serverless::Application": &resources.AWSServerlessApplication{}, - "AWS::Serverless::Function": &resources.AWSServerlessFunction{}, - "AWS::Serverless::LayerVersion": &resources.AWSServerlessLayerVersion{}, - "AWS::Serverless::SimpleTable": &resources.AWSServerlessSimpleTable{}, - "AWS::ServiceCatalog::AcceptedPortfolioShare": &resources.AWSServiceCatalogAcceptedPortfolioShare{}, - "AWS::ServiceCatalog::CloudFormationProduct": &resources.AWSServiceCatalogCloudFormationProduct{}, - "AWS::ServiceCatalog::CloudFormationProvisionedProduct": &resources.AWSServiceCatalogCloudFormationProvisionedProduct{}, - "AWS::ServiceCatalog::LaunchNotificationConstraint": &resources.AWSServiceCatalogLaunchNotificationConstraint{}, - "AWS::ServiceCatalog::LaunchRoleConstraint": &resources.AWSServiceCatalogLaunchRoleConstraint{}, - "AWS::ServiceCatalog::LaunchTemplateConstraint": &resources.AWSServiceCatalogLaunchTemplateConstraint{}, - "AWS::ServiceCatalog::Portfolio": &resources.AWSServiceCatalogPortfolio{}, - "AWS::ServiceCatalog::PortfolioPrincipalAssociation": &resources.AWSServiceCatalogPortfolioPrincipalAssociation{}, - "AWS::ServiceCatalog::PortfolioProductAssociation": &resources.AWSServiceCatalogPortfolioProductAssociation{}, - "AWS::ServiceCatalog::PortfolioShare": &resources.AWSServiceCatalogPortfolioShare{}, - "AWS::ServiceCatalog::ResourceUpdateConstraint": &resources.AWSServiceCatalogResourceUpdateConstraint{}, - "AWS::ServiceCatalog::StackSetConstraint": &resources.AWSServiceCatalogStackSetConstraint{}, - "AWS::ServiceCatalog::TagOption": &resources.AWSServiceCatalogTagOption{}, - "AWS::ServiceCatalog::TagOptionAssociation": &resources.AWSServiceCatalogTagOptionAssociation{}, - "AWS::ServiceDiscovery::HttpNamespace": &resources.AWSServiceDiscoveryHttpNamespace{}, - "AWS::ServiceDiscovery::Instance": &resources.AWSServiceDiscoveryInstance{}, - "AWS::ServiceDiscovery::PrivateDnsNamespace": &resources.AWSServiceDiscoveryPrivateDnsNamespace{}, - "AWS::ServiceDiscovery::PublicDnsNamespace": &resources.AWSServiceDiscoveryPublicDnsNamespace{}, - "AWS::ServiceDiscovery::Service": &resources.AWSServiceDiscoveryService{}, - "AWS::StepFunctions::Activity": &resources.AWSStepFunctionsActivity{}, - "AWS::StepFunctions::StateMachine": &resources.AWSStepFunctionsStateMachine{}, - "AWS::Transfer::Server": &resources.AWSTransferServer{}, - "AWS::Transfer::User": &resources.AWSTransferUser{}, - "AWS::WAF::ByteMatchSet": &resources.AWSWAFByteMatchSet{}, - "AWS::WAF::IPSet": &resources.AWSWAFIPSet{}, - "AWS::WAF::Rule": &resources.AWSWAFRule{}, - "AWS::WAF::SizeConstraintSet": &resources.AWSWAFSizeConstraintSet{}, - "AWS::WAF::SqlInjectionMatchSet": &resources.AWSWAFSqlInjectionMatchSet{}, - "AWS::WAF::WebACL": &resources.AWSWAFWebACL{}, - "AWS::WAF::XssMatchSet": &resources.AWSWAFXssMatchSet{}, - "AWS::WAFRegional::ByteMatchSet": &resources.AWSWAFRegionalByteMatchSet{}, - "AWS::WAFRegional::GeoMatchSet": &resources.AWSWAFRegionalGeoMatchSet{}, - "AWS::WAFRegional::IPSet": &resources.AWSWAFRegionalIPSet{}, - "AWS::WAFRegional::RateBasedRule": &resources.AWSWAFRegionalRateBasedRule{}, - "AWS::WAFRegional::RegexPatternSet": &resources.AWSWAFRegionalRegexPatternSet{}, - "AWS::WAFRegional::Rule": &resources.AWSWAFRegionalRule{}, - "AWS::WAFRegional::SizeConstraintSet": &resources.AWSWAFRegionalSizeConstraintSet{}, - "AWS::WAFRegional::SqlInjectionMatchSet": &resources.AWSWAFRegionalSqlInjectionMatchSet{}, - "AWS::WAFRegional::WebACL": &resources.AWSWAFRegionalWebACL{}, - "AWS::WAFRegional::WebACLAssociation": &resources.AWSWAFRegionalWebACLAssociation{}, - "AWS::WAFRegional::XssMatchSet": &resources.AWSWAFRegionalXssMatchSet{}, - "AWS::WorkSpaces::Workspace": &resources.AWSWorkSpacesWorkspace{}, - "Alexa::ASK::Skill": &resources.AlexaASKSkill{}, + "AWS::AppStream::ImageBuilder": &appstream.ImageBuilder{}, + "AWS::Pinpoint::APNSSandboxChannel": &pinpoint.APNSSandboxChannel{}, + "AWS::FSx::FileSystem": &fsx.FileSystem{}, + "AWS::ElasticBeanstalk::Environment": &elasticbeanstalk.Environment{}, + "AWS::CloudFront::StreamingDistribution": &cloudfront.StreamingDistribution{}, + "AWS::SES::Template": &ses.Template{}, + "AWS::CloudTrail::Trail": &cloudtrail.Trail{}, + "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption": &kinesisanalyticsv2.ApplicationCloudWatchLoggingOption{}, + "AWS::ElastiCache::SecurityGroup": &elasticache.SecurityGroup{}, + "AWS::DAX::SubnetGroup": &dax.SubnetGroup{}, + "AWS::Pinpoint::ADMChannel": &pinpoint.ADMChannel{}, + "AWS::OpsWorks::Layer": &opsworks.Layer{}, + "AWS::ApiGateway::Stage": &apigateway.Stage{}, + "AWS::SES::ReceiptRule": &ses.ReceiptRule{}, + "AWS::EC2::VPCDHCPOptionsAssociation": &ec2.VPCDHCPOptionsAssociation{}, + "AWS::ServiceDiscovery::PublicDnsNamespace": &servicediscovery.PublicDnsNamespace{}, + "AWS::ElasticBeanstalk::ConfigurationTemplate": &elasticbeanstalk.ConfigurationTemplate{}, + "AWS::AutoScalingPlans::ScalingPlan": &autoscalingplans.ScalingPlan{}, + "AWS::ApiGateway::Authorizer": &apigateway.Authorizer{}, + "AWS::EC2::TrafficMirrorFilter": &ec2.TrafficMirrorFilter{}, + "AWS::SecretsManager::SecretTargetAttachment": &secretsmanager.SecretTargetAttachment{}, + "AWS::Greengrass::FunctionDefinitionVersion": &greengrass.FunctionDefinitionVersion{}, + "AWS::ServiceCatalog::TagOptionAssociation": &servicecatalog.TagOptionAssociation{}, + "AWS::Events::EventBusPolicy": &events.EventBusPolicy{}, + "AWS::SSM::MaintenanceWindowTarget": &ssm.MaintenanceWindowTarget{}, + "AWS::Config::DeliveryChannel": &config.DeliveryChannel{}, + "AWS::EC2::NetworkAcl": &ec2.NetworkAcl{}, + "AWS::KinesisFirehose::DeliveryStream": &kinesisfirehose.DeliveryStream{}, + "AWS::StepFunctions::Activity": &stepfunctions.Activity{}, + "AWS::ElasticLoadBalancing::LoadBalancer": &elasticloadbalancing.LoadBalancer{}, + "Alexa::ASK::Skill": &ask.Skill{}, + "AWS::ApiGateway::DocumentationPart": &apigateway.DocumentationPart{}, + "AWS::EFS::FileSystem": &efs.FileSystem{}, + "AWS::WAF::ByteMatchSet": &waf.ByteMatchSet{}, + "AWS::GuardDuty::Detector": &guardduty.Detector{}, + "AWS::AppStream::DirectoryConfig": &appstream.DirectoryConfig{}, + "AWS::EC2::TransitGatewayRoute": &ec2.TransitGatewayRoute{}, + "AWS::AppStream::StackUserAssociation": &appstream.StackUserAssociation{}, + "AWS::DMS::ReplicationInstance": &dms.ReplicationInstance{}, + "AWS::RDS::DBParameterGroup": &rds.DBParameterGroup{}, + "AWS::Events::EventBus": &events.EventBus{}, + "AWS::ServiceDiscovery::Service": &servicediscovery.Service{}, + "AWS::EC2::NetworkInterface": &ec2.NetworkInterface{}, + "AWS::Transfer::User": &transfer.User{}, + "AWS::Config::ConfigRule": &config.ConfigRule{}, + "AWS::ApiGatewayV2::Stage": &apigatewayv2.Stage{}, + "AWS::IoT::TopicRule": &iot.TopicRule{}, + "AWS::Events::Rule": &events.Rule{}, + "AWS::Greengrass::CoreDefinitionVersion": &greengrass.CoreDefinitionVersion{}, + "AWS::WAFRegional::GeoMatchSet": &wafregional.GeoMatchSet{}, + "AWS::CertificateManager::Certificate": &certificatemanager.Certificate{}, + "AWS::StepFunctions::StateMachine": &stepfunctions.StateMachine{}, + "AWS::EC2::TransitGatewayAttachment": &ec2.TransitGatewayAttachment{}, + "AWS::EC2::Subnet": &ec2.Subnet{}, + "AWS::Glue::DevEndpoint": &glue.DevEndpoint{}, + "AWS::EC2::ClientVpnRoute": &ec2.ClientVpnRoute{}, + "AWS::ApiGateway::Account": &apigateway.Account{}, + "AWS::Lambda::LayerVersionPermission": &lambda.LayerVersionPermission{}, + "AWS::SageMaker::CodeRepository": &sagemaker.CodeRepository{}, + "AWS::Transfer::Server": &transfer.Server{}, + "AWS::DMS::ReplicationTask": &dms.ReplicationTask{}, + "AWS::GuardDuty::ThreatIntelSet": &guardduty.ThreatIntelSet{}, + "AWS::DMS::EventSubscription": &dms.EventSubscription{}, + "AWS::AppStream::User": &appstream.User{}, + "AWS::IoTThingsGraph::FlowTemplate": &iotthingsgraph.FlowTemplate{}, + "AWS::EC2::TransitGatewayRouteTablePropagation": &ec2.TransitGatewayRouteTablePropagation{}, + "AWS::ServiceCatalog::CloudFormationProvisionedProduct": &servicecatalog.CloudFormationProvisionedProduct{}, + "AWS::SNS::Subscription": &sns.Subscription{}, + "AWS::Pinpoint::EventStream": &pinpoint.EventStream{}, + "AWS::EMR::Cluster": &emr.Cluster{}, + "AWS::RDS::EventSubscription": &rds.EventSubscription{}, + "AWS::ApiGateway::VpcLink": &apigateway.VpcLink{}, + "AWS::RoboMaker::Robot": &robomaker.Robot{}, + "AWS::EC2::TrafficMirrorTarget": &ec2.TrafficMirrorTarget{}, + "AWS::KinesisAnalytics::ApplicationOutput": &kinesisanalytics.ApplicationOutput{}, + "AWS::EC2::Volume": &ec2.Volume{}, + "AWS::SecretsManager::ResourcePolicy": &secretsmanager.ResourcePolicy{}, + "AWS::CodePipeline::CustomActionType": &codepipeline.CustomActionType{}, + "AWS::ApiGateway::RestApi": &apigateway.RestApi{}, + "AWS::ApplicationAutoScaling::ScalingPolicy": &applicationautoscaling.ScalingPolicy{}, + "AWS::ApiGatewayV2::Model": &apigatewayv2.Model{}, + "AWS::EC2::VPCPeeringConnection": &ec2.VPCPeeringConnection{}, + "AWS::EC2::CustomerGateway": &ec2.CustomerGateway{}, + "AWS::ServiceDiscovery::PrivateDnsNamespace": &servicediscovery.PrivateDnsNamespace{}, + "AWS::GameLift::Alias": &gamelift.Alias{}, + "AWS::Glue::Partition": &glue.Partition{}, + "AWS::CloudFormation::Macro": &cloudformation.Macro{}, + "AWS::EC2::TransitGatewayRouteTableAssociation": &ec2.TransitGatewayRouteTableAssociation{}, + "AWS::Inspector::AssessmentTarget": &inspector.AssessmentTarget{}, + "AWS::EC2::VPCEndpointService": &ec2.VPCEndpointService{}, + "AWS::EC2::VPCEndpoint": &ec2.VPCEndpoint{}, + "AWS::ElasticLoadBalancingV2::TargetGroup": &elasticloadbalancingv2.TargetGroup{}, + "AWS::EC2::VPCCidrBlock": &ec2.VPCCidrBlock{}, + "AWS::EC2::DHCPOptions": &ec2.DHCPOptions{}, + "AWS::EC2::EgressOnlyInternetGateway": &ec2.EgressOnlyInternetGateway{}, + "AWS::AppSync::DataSource": &appsync.DataSource{}, + "AWS::DMS::Certificate": &dms.Certificate{}, + "AWS::EC2::ClientVpnTargetNetworkAssociation": &ec2.ClientVpnTargetNetworkAssociation{}, + "AWS::Lambda::LayerVersion": &lambda.LayerVersion{}, + "AWS::ElasticLoadBalancingV2::Listener": &elasticloadbalancingv2.Listener{}, + "AWS::EC2::VPCEndpointServicePermissions": &ec2.VPCEndpointServicePermissions{}, + "AWS::SES::ConfigurationSet": &ses.ConfigurationSet{}, + "AWS::EC2::NetworkInterfaceAttachment": &ec2.NetworkInterfaceAttachment{}, + "AWS::LakeFormation::Resource": &lakeformation.Resource{}, + "AWS::ServiceDiscovery::Instance": &servicediscovery.Instance{}, + "AWS::AutoScaling::ScalingPolicy": &autoscaling.ScalingPolicy{}, + "AWS::Glue::Classifier": &glue.Classifier{}, + "AWS::ServiceCatalog::Portfolio": &servicecatalog.Portfolio{}, + "AWS::GuardDuty::Member": &guardduty.Member{}, + "AWS::EC2::VolumeAttachment": &ec2.VolumeAttachment{}, + "AWS::EC2::TrafficMirrorSession": &ec2.TrafficMirrorSession{}, + "AWS::IAM::Group": &iam.Group{}, + "AWS::CodeBuild::Project": &codebuild.Project{}, + "AWS::WAF::XssMatchSet": &waf.XssMatchSet{}, + "AWS::QLDB::Ledger": &qldb.Ledger{}, + "AWS::IAM::UserToGroupAddition": &iam.UserToGroupAddition{}, + "AWS::Redshift::ClusterSecurityGroupIngress": &redshift.ClusterSecurityGroupIngress{}, + "AWS::PinpointEmail::ConfigurationSetEventDestination": &pinpointemail.ConfigurationSetEventDestination{}, + "AWS::OpsWorks::Instance": &opsworks.Instance{}, + "AWS::ECS::Service": &ecs.Service{}, + "AWS::WAF::SqlInjectionMatchSet": &waf.SqlInjectionMatchSet{}, + "AWS::EKS::Cluster": &eks.Cluster{}, + "AWS::GuardDuty::Master": &guardduty.Master{}, + "AWS::ElastiCache::ReplicationGroup": &elasticache.ReplicationGroup{}, + "AWS::AppMesh::Route": &appmesh.Route{}, + "AWS::ApiGateway::DomainName": &apigateway.DomainName{}, + "AWS::Logs::MetricFilter": &logs.MetricFilter{}, + "AWS::Greengrass::ConnectorDefinition": &greengrass.ConnectorDefinition{}, + "AWS::Cognito::UserPoolUser": &cognito.UserPoolUser{}, + "AWS::AutoScaling::AutoScalingGroup": &autoscaling.AutoScalingGroup{}, + "AWS::DAX::ParameterGroup": &dax.ParameterGroup{}, + "AWS::Greengrass::SubscriptionDefinitionVersion": &greengrass.SubscriptionDefinitionVersion{}, + "AWS::EC2::ClientVpnAuthorizationRule": &ec2.ClientVpnAuthorizationRule{}, + "AWS::SES::ReceiptRuleSet": &ses.ReceiptRuleSet{}, + "AWS::Glue::Workflow": &glue.Workflow{}, + "AWS::DocDB::DBInstance": &docdb.DBInstance{}, + "AWS::Cognito::UserPoolClient": &cognito.UserPoolClient{}, + "AWS::CodeCommit::Repository": &codecommit.Repository{}, + "AWS::Config::ConfigurationAggregator": &config.ConfigurationAggregator{}, + "AWS::DocDB::DBCluster": &docdb.DBCluster{}, + "AWS::ElastiCache::SubnetGroup": &elasticache.SubnetGroup{}, + "AWS::SageMaker::Endpoint": &sagemaker.Endpoint{}, + "AWS::MediaLive::Input": &medialive.Input{}, + "AWS::EC2::NatGateway": &ec2.NatGateway{}, + "AWS::EC2::Host": &ec2.Host{}, + "AWS::KinesisAnalytics::Application": &kinesisanalytics.Application{}, + "AWS::SSM::Association": &ssm.Association{}, + "AWS::ElasticLoadBalancingV2::LoadBalancer": &elasticloadbalancingv2.LoadBalancer{}, + "AWS::S3::BucketPolicy": &s3.BucketPolicy{}, + "AWS::PinpointEmail::ConfigurationSet": &pinpointemail.ConfigurationSet{}, + "AWS::ApiGatewayV2::ApiMapping": &apigatewayv2.ApiMapping{}, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource": &kinesisanalytics.ApplicationReferenceDataSource{}, + "AWS::ApiGateway::RequestValidator": &apigateway.RequestValidator{}, + "AWS::EC2::NetworkAclEntry": &ec2.NetworkAclEntry{}, + "AWS::EC2::InternetGateway": &ec2.InternetGateway{}, + "AWS::Pinpoint::Campaign": &pinpoint.Campaign{}, + "AWS::DocDB::DBClusterParameterGroup": &docdb.DBClusterParameterGroup{}, + "AWS::Glue::Trigger": &glue.Trigger{}, + "AWS::Cognito::UserPoolRiskConfigurationAttachment": &cognito.UserPoolRiskConfigurationAttachment{}, + "AWS::SNS::Topic": &sns.Topic{}, + "AWS::EC2::SecurityGroupEgress": &ec2.SecurityGroupEgress{}, + "AWS::Lambda::Version": &lambda.Version{}, + "AWS::OpsWorks::Volume": &opsworks.Volume{}, + "AWS::Config::RemediationConfiguration": &config.RemediationConfiguration{}, + "AWS::ServiceCatalog::AcceptedPortfolioShare": &servicecatalog.AcceptedPortfolioShare{}, + "AWS::EC2::VPNGateway": &ec2.VPNGateway{}, + "AWS::Neptune::DBParameterGroup": &neptune.DBParameterGroup{}, + "AWS::ElastiCache::ParameterGroup": &elasticache.ParameterGroup{}, + "AWS::RoboMaker::RobotApplicationVersion": &robomaker.RobotApplicationVersion{}, + "AWS::Glue::Job": &glue.Job{}, + "AWS::Glue::Crawler": &glue.Crawler{}, + "AWS::RoboMaker::Fleet": &robomaker.Fleet{}, + "AWS::EC2::SubnetRouteTableAssociation": &ec2.SubnetRouteTableAssociation{}, + "AWS::LakeFormation::DataLakeSettings": &lakeformation.DataLakeSettings{}, + "AWS::ElasticLoadBalancingV2::ListenerCertificate": &elasticloadbalancingv2.ListenerCertificate{}, + "AWS::Glue::SecurityConfiguration": &glue.SecurityConfiguration{}, + "AWS::Cognito::UserPoolGroup": &cognito.UserPoolGroup{}, + "AWS::IoTAnalytics::Channel": &iotanalytics.Channel{}, + "AWS::Greengrass::Group": &greengrass.Group{}, + "AWS::MediaLive::InputSecurityGroup": &medialive.InputSecurityGroup{}, + "AWS::WAF::WebACL": &waf.WebACL{}, + "AWS::Route53::RecordSetGroup": &route53.RecordSetGroup{}, + "AWS::ApiGateway::Method": &apigateway.Method{}, + "AWS::WAF::IPSet": &waf.IPSet{}, + "AWS::AppSync::GraphQLApi": &appsync.GraphQLApi{}, + "AWS::CloudFront::Distribution": &cloudfront.Distribution{}, + "AWS::Cognito::UserPool": &cognito.UserPool{}, + "AWS::PinpointEmail::DedicatedIpPool": &pinpointemail.DedicatedIpPool{}, + "AWS::RDS::OptionGroup": &rds.OptionGroup{}, + "AWS::Inspector::AssessmentTemplate": &inspector.AssessmentTemplate{}, + "AWS::WAFRegional::SqlInjectionMatchSet": &wafregional.SqlInjectionMatchSet{}, + "AWS::EC2::EC2Fleet": &ec2.EC2Fleet{}, + "AWS::WorkSpaces::Workspace": &workspaces.Workspace{}, + "AWS::RoboMaker::SimulationApplicationVersion": &robomaker.SimulationApplicationVersion{}, + "AWS::ApiGatewayV2::DomainName": &apigatewayv2.DomainName{}, + "AWS::Neptune::DBClusterParameterGroup": &neptune.DBClusterParameterGroup{}, + "AWS::ApiGateway::BasePathMapping": &apigateway.BasePathMapping{}, + "AWS::ServiceCatalog::ResourceUpdateConstraint": &servicecatalog.ResourceUpdateConstraint{}, + "AWS::IAM::ServiceLinkedRole": &iam.ServiceLinkedRole{}, + "AWS::SageMaker::EndpointConfig": &sagemaker.EndpointConfig{}, + "AWS::OpsWorks::ElasticLoadBalancerAttachment": &opsworks.ElasticLoadBalancerAttachment{}, + "AWS::EC2::EIPAssociation": &ec2.EIPAssociation{}, + "AWS::Cognito::UserPoolIdentityProvider": &cognito.UserPoolIdentityProvider{}, + "AWS::Lambda::Permission": &lambda.Permission{}, + "AWS::AppMesh::Mesh": &appmesh.Mesh{}, + "AWS::GuardDuty::IPSet": &guardduty.IPSet{}, + "AWS::EC2::EIP": &ec2.EIP{}, + "AWS::Lambda::Alias": &lambda.Alias{}, + "AWS::Greengrass::LoggerDefinitionVersion": &greengrass.LoggerDefinitionVersion{}, + "AWS::EC2::VPNConnection": &ec2.VPNConnection{}, + "AWS::ApiGateway::DocumentationVersion": &apigateway.DocumentationVersion{}, + "AWS::SSM::MaintenanceWindowTask": &ssm.MaintenanceWindowTask{}, + "AWS::EC2::FlowLog": &ec2.FlowLog{}, + "AWS::IAM::AccessKey": &iam.AccessKey{}, + "AWS::ElasticLoadBalancingV2::ListenerRule": &elasticloadbalancingv2.ListenerRule{}, + "AWS::RAM::ResourceShare": &ram.ResourceShare{}, + "AWS::ServiceCatalog::StackSetConstraint": &servicecatalog.StackSetConstraint{}, + "AWS::EC2::SecurityGroupIngress": &ec2.SecurityGroupIngress{}, + "AWS::Greengrass::ResourceDefinitionVersion": &greengrass.ResourceDefinitionVersion{}, + "AWS::MSK::Cluster": &msk.Cluster{}, + "AWS::EC2::VPCGatewayAttachment": &ec2.VPCGatewayAttachment{}, + "AWS::EC2::Route": &ec2.Route{}, + "AWS::Lambda::Function": &lambda.Function{}, + "AWS::ElasticBeanstalk::ApplicationVersion": &elasticbeanstalk.ApplicationVersion{}, + "AWS::Route53Resolver::ResolverEndpoint": &route53resolver.ResolverEndpoint{}, + "AWS::OpsWorks::App": &opsworks.App{}, + "AWS::CloudFront::CloudFrontOriginAccessIdentity": &cloudfront.CloudFrontOriginAccessIdentity{}, + "AWS::Pinpoint::BaiduChannel": &pinpoint.BaiduChannel{}, + "AWS::Redshift::ClusterSubnetGroup": &redshift.ClusterSubnetGroup{}, + "AWS::ApiGateway::UsagePlanKey": &apigateway.UsagePlanKey{}, + "AWS::Greengrass::CoreDefinition": &greengrass.CoreDefinition{}, + "AWS::SES::ConfigurationSetEventDestination": &ses.ConfigurationSetEventDestination{}, + "AWS::Route53::HealthCheck": &route53.HealthCheck{}, + "AWS::ApiGateway::Resource": &apigateway.Resource{}, + "AWS::Pinpoint::Segment": &pinpoint.Segment{}, + "AWS::Pinpoint::EmailChannel": &pinpoint.EmailChannel{}, + "AWS::SQS::Queue": &sqs.Queue{}, + "AWS::GuardDuty::Filter": &guardduty.Filter{}, + "AWS::Lambda::EventSourceMapping": &lambda.EventSourceMapping{}, + "AWS::EC2::PlacementGroup": &ec2.PlacementGroup{}, + "AWS::EC2::TrafficMirrorFilterRule": &ec2.TrafficMirrorFilterRule{}, + "AWS::ApiGateway::Model": &apigateway.Model{}, + "AWS::WAFRegional::RegexPatternSet": &wafregional.RegexPatternSet{}, + "AWS::AutoScaling::LifecycleHook": &autoscaling.LifecycleHook{}, + "AWS::ApiGatewayV2::IntegrationResponse": &apigatewayv2.IntegrationResponse{}, + "AWS::EC2::CapacityReservation": &ec2.CapacityReservation{}, + "AWS::AppSync::Resolver": &appsync.Resolver{}, + "AWS::AmazonMQ::Configuration": &amazonmq.Configuration{}, + "AWS::GameLift::Build": &gamelift.Build{}, + "AWS::SecurityHub::Hub": &securityhub.Hub{}, + "AWS::DLM::LifecyclePolicy": &dlm.LifecyclePolicy{}, + "AWS::Greengrass::FunctionDefinition": &greengrass.FunctionDefinition{}, + "AWS::EC2::TransitGateway": &ec2.TransitGateway{}, + "AWS::CodeDeploy::DeploymentConfig": &codedeploy.DeploymentConfig{}, + "AWS::WAFRegional::Rule": &wafregional.Rule{}, + "AWS::IAM::Policy": &iam.Policy{}, + "AWS::ServiceCatalog::PortfolioProductAssociation": &servicecatalog.PortfolioProductAssociation{}, + "AWS::IoT1Click::Placement": &iot1click.Placement{}, + "AWS::IoTAnalytics::Datastore": &iotanalytics.Datastore{}, + "AWS::ServiceDiscovery::HttpNamespace": &servicediscovery.HttpNamespace{}, + "AWS::Logs::LogGroup": &logs.LogGroup{}, + "AWS::EC2::RouteTable": &ec2.RouteTable{}, + "AWS::ApiGatewayV2::Route": &apigatewayv2.Route{}, + "AWS::EC2::VPNConnectionRoute": &ec2.VPNConnectionRoute{}, + "AWS::OpsWorks::Stack": &opsworks.Stack{}, + "AWS::DirectoryService::MicrosoftAD": &directoryservice.MicrosoftAD{}, + "AWS::DataPipeline::Pipeline": &datapipeline.Pipeline{}, + "AWS::Batch::JobDefinition": &batch.JobDefinition{}, + "AWS::Greengrass::ResourceDefinition": &greengrass.ResourceDefinition{}, + "AWS::IAM::Role": &iam.Role{}, + "AWS::ServiceCatalog::LaunchTemplateConstraint": &servicecatalog.LaunchTemplateConstraint{}, + "AWS::Batch::ComputeEnvironment": &batch.ComputeEnvironment{}, + "AWS::DMS::Endpoint": &dms.Endpoint{}, + "AWS::Glue::DataCatalogEncryptionSettings": &glue.DataCatalogEncryptionSettings{}, + "AWS::AppMesh::VirtualRouter": &appmesh.VirtualRouter{}, + "AWS::Amplify::App": &lify.App{}, + "AWS::Neptune::DBSubnetGroup": &neptune.DBSubnetGroup{}, + "AWS::CloudFormation::WaitCondition": &cloudformation.WaitCondition{}, + "AWS::ApplicationAutoScaling::ScalableTarget": &applicationautoscaling.ScalableTarget{}, + "AWS::Redshift::Cluster": &redshift.Cluster{}, + "AWS::ApiGatewayV2::Integration": &apigatewayv2.Integration{}, + "AWS::AppSync::FunctionConfiguration": &appsync.FunctionConfiguration{}, + "AWS::Cognito::UserPoolUICustomizationAttachment": &cognito.UserPoolUICustomizationAttachment{}, + "AWS::DynamoDB::Table": &dynamodb.Table{}, + "AWS::Backup::BackupPlan": &backup.BackupPlan{}, + "AWS::Greengrass::DeviceDefinition": &greengrass.DeviceDefinition{}, + "AWS::CodePipeline::Pipeline": &codepipeline.Pipeline{}, + "AWS::EC2::SpotFleet": &ec2.SpotFleet{}, + "AWS::IoTAnalytics::Dataset": &iotanalytics.Dataset{}, + "AWS::Greengrass::LoggerDefinition": &greengrass.LoggerDefinition{}, + "AWS::AppSync::GraphQLSchema": &appsync.GraphQLSchema{}, + "AWS::S3::Bucket": &s3.Bucket{}, + "AWS::Cognito::UserPoolDomain": &cognito.UserPoolDomain{}, + "AWS::KMS::Key": &kms.Key{}, + "AWS::DMS::ReplicationSubnetGroup": &dms.ReplicationSubnetGroup{}, + "AWS::Config::ConfigurationRecorder": &config.ConfigurationRecorder{}, + "AWS::SSM::Document": &ssm.Document{}, + "AWS::EC2::VPCEndpointConnectionNotification": &ec2.VPCEndpointConnectionNotification{}, + "AWS::WAF::Rule": &waf.Rule{}, + "AWS::CloudWatch::Alarm": &cloudwatch.Alarm{}, + "AWS::CloudWatch::Dashboard": &cloudwatch.Dashboard{}, + "AWS::CodeBuild::SourceCredential": &codebuild.SourceCredential{}, + "AWS::CodePipeline::Webhook": &codepipeline.Webhook{}, + "AWS::EC2::VPNGatewayRoutePropagation": &ec2.VPNGatewayRoutePropagation{}, + "AWS::ECS::Cluster": &ecs.Cluster{}, + "AWS::ServiceCatalog::TagOption": &servicecatalog.TagOption{}, + "AWS::SSM::PatchBaseline": &ssm.PatchBaseline{}, + "AWS::ApiGateway::GatewayResponse": &apigateway.GatewayResponse{}, + "AWS::Pinpoint::APNSChannel": &pinpoint.APNSChannel{}, + "AWS::Batch::JobQueue": &batch.JobQueue{}, + "AWS::Backup::BackupVault": &backup.BackupVault{}, + "AWS::Route53Resolver::ResolverRuleAssociation": &route53resolver.ResolverRuleAssociation{}, + "AWS::RDS::DBSubnetGroup": &rds.DBSubnetGroup{}, + "AWS::SecretsManager::RotationSchedule": &secretsmanager.RotationSchedule{}, + "AWS::EMR::SecurityConfiguration": &emr.SecurityConfiguration{}, + "AWS::ElasticBeanstalk::Application": &elasticbeanstalk.Application{}, + "AWS::CloudFormation::WaitConditionHandle": &cloudformation.WaitConditionHandle{}, + "AWS::ApiGateway::Deployment": &apigateway.Deployment{}, + "AWS::GameLift::Fleet": &gamelift.Fleet{}, + "AWS::AppMesh::VirtualNode": &appmesh.VirtualNode{}, + "AWS::Inspector::ResourceGroup": &inspector.ResourceGroup{}, + "AWS::IoTAnalytics::Pipeline": &iotanalytics.Pipeline{}, + "AWS::WAFRegional::RateBasedRule": &wafregional.RateBasedRule{}, + "AWS::AutoScaling::LaunchConfiguration": &autoscaling.LaunchConfiguration{}, + "AWS::EMR::Step": &emr.Step{}, + "AWS::ServiceCatalog::PortfolioPrincipalAssociation": &servicecatalog.PortfolioPrincipalAssociation{}, + "AWS::EC2::SecurityGroup": &ec2.SecurityGroup{}, + "AWS::CloudWatch::AnomalyDetector": &cloudwatch.AnomalyDetector{}, + "AWS::ApiGatewayV2::Deployment": &apigatewayv2.Deployment{}, + "AWS::AutoScaling::ScheduledAction": &autoscaling.ScheduledAction{}, + "AWS::AppSync::ApiKey": &appsync.ApiKey{}, + "AWS::OpsWorksCM::Server": &opsworkscm.Server{}, + "AWS::Route53Resolver::ResolverRule": &route53resolver.ResolverRule{}, + "AWS::SecretsManager::Secret": &secretsmanager.Secret{}, + "AWS::IoT::PolicyPrincipalAttachment": &iot.PolicyPrincipalAttachment{}, + "AWS::LakeFormation::Permissions": &lakeformation.Permissions{}, + "AWS::SDB::Domain": &sdb.Domain{}, + "AWS::WAFRegional::SizeConstraintSet": &wafregional.SizeConstraintSet{}, + "AWS::MediaStore::Container": &mediastore.Container{}, + "AWS::Greengrass::ConnectorDefinitionVersion": &greengrass.ConnectorDefinitionVersion{}, + "AWS::Pinpoint::GCMChannel": &pinpoint.GCMChannel{}, + "AWS::RDS::DBSecurityGroupIngress": &rds.DBSecurityGroupIngress{}, + "AWS::Config::OrganizationConfigRule": &config.OrganizationConfigRule{}, + "AWS::IoT::Thing": &iot.Thing{}, + "AWS::CodeDeploy::DeploymentGroup": &codedeploy.DeploymentGroup{}, + "AWS::WAFRegional::WebACLAssociation": &wafregional.WebACLAssociation{}, + "AWS::IAM::User": &iam.User{}, + "AWS::IoTEvents::Input": &iotevents.Input{}, + "AWS::RDS::DBSecurityGroup": &rds.DBSecurityGroup{}, + "AWS::Logs::SubscriptionFilter": &logs.SubscriptionFilter{}, + "AWS::ElastiCache::SecurityGroupIngress": &elasticache.SecurityGroupIngress{}, + "AWS::EFS::MountTarget": &efs.MountTarget{}, + "AWS::DAX::Cluster": &dax.Cluster{}, + "AWS::ApiGatewayV2::RouteResponse": &apigatewayv2.RouteResponse{}, + "AWS::Logs::Destination": &logs.Destination{}, + "AWS::SSM::ResourceDataSync": &ssm.ResourceDataSync{}, + "AWS::Redshift::ClusterSecurityGroup": &redshift.ClusterSecurityGroup{}, + "AWS::AmazonMQ::Broker": &amazonmq.Broker{}, + "AWS::SSM::Parameter": &ssm.Parameter{}, + "AWS::EMR::InstanceFleetConfig": &emr.InstanceFleetConfig{}, + "AWS::Kinesis::Stream": &kinesis.Stream{}, + "AWS::ServiceCatalog::LaunchNotificationConstraint": &servicecatalog.LaunchNotificationConstraint{}, + "AWS::EC2::TransitGatewayRouteTable": &ec2.TransitGatewayRouteTable{}, + "AWS::AppMesh::VirtualService": &appmesh.VirtualService{}, + "AWS::IoT1Click::Device": &iot1click.Device{}, + "AWS::Pinpoint::APNSVoipChannel": &pinpoint.APNSVoipChannel{}, + "AWS::Greengrass::GroupVersion": &greengrass.GroupVersion{}, + "AWS::SES::ReceiptFilter": &ses.ReceiptFilter{}, + "AWS::Greengrass::SubscriptionDefinition": &greengrass.SubscriptionDefinition{}, + "AWS::Athena::NamedQuery": &athena.NamedQuery{}, + "AWS::SSM::MaintenanceWindow": &ssm.MaintenanceWindow{}, + "AWS::EMR::InstanceGroupConfig": &emr.InstanceGroupConfig{}, + "AWS::RoboMaker::SimulationApplication": &robomaker.SimulationApplication{}, + "AWS::ManagedBlockchain::Node": &managedblockchain.Node{}, + "AWS::IAM::InstanceProfile": &iam.InstanceProfile{}, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource": &kinesisanalyticsv2.ApplicationReferenceDataSource{}, + "AWS::RDS::DBInstance": &rds.DBInstance{}, + "AWS::RDS::DBClusterParameterGroup": &rds.DBClusterParameterGroup{}, + "AWS::Glue::MLTransform": &glue.MLTransform{}, + "AWS::Glue::Table": &glue.Table{}, + "AWS::ServiceCatalog::LaunchRoleConstraint": &servicecatalog.LaunchRoleConstraint{}, + "AWS::Logs::LogStream": &logs.LogStream{}, + "AWS::Redshift::ClusterParameterGroup": &redshift.ClusterParameterGroup{}, + "AWS::DirectoryService::SimpleAD": &directoryservice.SimpleAD{}, + "AWS::Route53::RecordSet": &route53.RecordSet{}, + "AWS::Budgets::Budget": &budgets.Budget{}, + "AWS::EC2::VPC": &ec2.VPC{}, + "AWS::Route53::HostedZone": &route53.HostedZone{}, + "AWS::Glue::Database": &glue.Database{}, + "AWS::OpsWorks::UserProfile": &opsworks.UserProfile{}, + "AWS::EC2::LaunchTemplate": &ec2.LaunchTemplate{}, + "AWS::EC2::SubnetCidrBlock": &ec2.SubnetCidrBlock{}, + "AWS::AppStream::Fleet": &appstream.Fleet{}, + "AWS::WAFRegional::ByteMatchSet": &wafregional.ByteMatchSet{}, + "AWS::Pinpoint::SMSChannel": &pinpoint.SMSChannel{}, + "AWS::SNS::TopicPolicy": &sns.TopicPolicy{}, + "AWS::SageMaker::Model": &sagemaker.Model{}, + "AWS::Cognito::UserPoolResourceServer": &cognito.UserPoolResourceServer{}, + "AWS::Glue::Connection": &glue.Connection{}, + "AWS::IoT::ThingPrincipalAttachment": &iot.ThingPrincipalAttachment{}, + "AWS::MediaLive::Channel": &medialive.Channel{}, + "AWS::Amplify::Branch": &lify.Branch{}, + "AWS::WAF::SizeConstraintSet": &waf.SizeConstraintSet{}, + "AWS::SageMaker::NotebookInstance": &sagemaker.NotebookInstance{}, + "AWS::ECR::Repository": &ecr.Repository{}, + "AWS::Pinpoint::APNSVoipSandboxChannel": &pinpoint.APNSVoipSandboxChannel{}, + "AWS::IoT::Policy": &iot.Policy{}, + "AWS::AppStream::StackFleetAssociation": &appstream.StackFleetAssociation{}, + "AWS::Pinpoint::VoiceChannel": &pinpoint.VoiceChannel{}, + "AWS::CodeDeploy::Application": &codedeploy.Application{}, + "AWS::ApiGateway::ClientCertificate": &apigateway.ClientCertificate{}, + "AWS::PinpointEmail::Identity": &pinpointemail.Identity{}, + "AWS::Pinpoint::ApplicationSettings": &pinpoint.ApplicationSettings{}, + "AWS::Greengrass::DeviceDefinitionVersion": &greengrass.DeviceDefinitionVersion{}, + "AWS::ElastiCache::CacheCluster": &elasticache.CacheCluster{}, + "AWS::CodeStar::GitHubRepository": &codestar.GitHubRepository{}, + "AWS::RDS::DBCluster": &rds.DBCluster{}, + "AWS::EC2::ClientVpnEndpoint": &ec2.ClientVpnEndpoint{}, + "AWS::Elasticsearch::Domain": &elasticsearch.Domain{}, + "AWS::KMS::Alias": &kms.Alias{}, + "AWS::ApiGateway::ApiKey": &apigateway.ApiKey{}, + "AWS::EC2::Instance": &ec2.Instance{}, + "AWS::Config::AggregationAuthorization": &config.AggregationAuthorization{}, + "AWS::SageMaker::Workteam": &sagemaker.Workteam{}, + "AWS::ServiceCatalog::CloudFormationProduct": &servicecatalog.CloudFormationProduct{}, + "AWS::WAFRegional::XssMatchSet": &wafregional.XssMatchSet{}, + "AWS::EC2::SubnetNetworkAclAssociation": &ec2.SubnetNetworkAclAssociation{}, + "AWS::Cognito::IdentityPool": &cognito.IdentityPool{}, + "AWS::KinesisAnalyticsV2::Application": &kinesisanalyticsv2.Application{}, + "AWS::Backup::BackupSelection": &backup.BackupSelection{}, + "AWS::ApiGatewayV2::Authorizer": &apigatewayv2.Authorizer{}, + "AWS::Pinpoint::App": &pinpoint.App{}, + "AWS::ServiceCatalog::PortfolioShare": &servicecatalog.PortfolioShare{}, + "AWS::ManagedBlockchain::Member": &managedblockchain.Member{}, + "AWS::WAFRegional::IPSet": &wafregional.IPSet{}, + "AWS::CloudFormation::CustomResource": &cloudformation.CustomResource{}, + "AWS::AmazonMQ::ConfigurationAssociation": &amazonmq.ConfigurationAssociation{}, + "AWS::RoboMaker::RobotApplication": &robomaker.RobotApplication{}, + "AWS::IAM::ManagedPolicy": &iam.ManagedPolicy{}, + "AWS::Neptune::DBInstance": &neptune.DBInstance{}, + "AWS::Cognito::UserPoolUserToGroupAttachment": &cognito.UserPoolUserToGroupAttachment{}, + "AWS::Cognito::IdentityPoolRoleAttachment": &cognito.IdentityPoolRoleAttachment{}, + "AWS::SageMaker::NotebookInstanceLifecycleConfig": &sagemaker.NotebookInstanceLifecycleConfig{}, + "AWS::Neptune::DBCluster": &neptune.DBCluster{}, + "AWS::IoTEvents::DetectorModel": &iotevents.DetectorModel{}, + "AWS::DocDB::DBSubnetGroup": &docdb.DBSubnetGroup{}, + "AWS::SQS::QueuePolicy": &sqs.QueuePolicy{}, + "AWS::ECS::TaskDefinition": &ecs.TaskDefinition{}, + "AWS::AppStream::Stack": &appstream.Stack{}, + "AWS::Cloud9::EnvironmentEC2": &cloud9.EnvironmentEC2{}, + "AWS::KinesisAnalyticsV2::ApplicationOutput": &kinesisanalyticsv2.ApplicationOutput{}, + "AWS::WAFRegional::WebACL": &wafregional.WebACL{}, + "AWS::EC2::NetworkInterfacePermission": &ec2.NetworkInterfacePermission{}, + "AWS::ApiGateway::UsagePlan": &apigateway.UsagePlan{}, + "AWS::Kinesis::StreamConsumer": &kinesis.StreamConsumer{}, + "AWS::Amplify::Domain": &lify.Domain{}, + "AWS::IoT1Click::Project": &iot1click.Project{}, + "AWS::CloudFormation::Stack": &cloudformation.Stack{}, + "AWS::ApiGatewayV2::Api": &apigatewayv2.Api{}, + "AWS::IoT::Certificate": &iot.Certificate{}, + "AWS::Serverless::SimpleTable": &serverless.SimpleTable{}, + "AWS::Serverless::LayerVersion": &serverless.LayerVersion{}, + "AWS::Serverless::Function": &serverless.Function{}, + "AWS::Serverless::Api": &serverless.Api{}, + "AWS::Serverless::Application": &serverless.Application{}, } } -// GetAllAWSAmazonMQBrokerResources retrieves all AWSAmazonMQBroker items from an AWS CloudFormation template -func (t *Template) GetAllAWSAmazonMQBrokerResources() map[string]*resources.AWSAmazonMQBroker { - results := map[string]*resources.AWSAmazonMQBroker{} +// GetAllAppStreamImageBuilderResources retrieves all appstream.ImageBuilder items from an AWS CloudFormation template +func (t *Template) GetAllAppStreamImageBuilderResources() map[string]*appstream.ImageBuilder { + results := map[string]*appstream.ImageBuilder{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAmazonMQBroker: + case *appstream.ImageBuilder: results[name] = resource } } return results } -// GetAWSAmazonMQBrokerWithName retrieves all AWSAmazonMQBroker items from an AWS CloudFormation template +// GetAppStreamImageBuilderWithName retrieves all appstream.ImageBuilder items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAmazonMQBrokerWithName(name string) (*resources.AWSAmazonMQBroker, error) { +func (t *Template) GetAppStreamImageBuilderWithName(name string) (*appstream.ImageBuilder, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAmazonMQBroker: + case *appstream.ImageBuilder: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAmazonMQBroker not found", name) + return nil, fmt.Errorf("resource %q of type appstream.ImageBuilder not found", name) } -// GetAllAWSAmazonMQConfigurationResources retrieves all AWSAmazonMQConfiguration items from an AWS CloudFormation template -func (t *Template) GetAllAWSAmazonMQConfigurationResources() map[string]*resources.AWSAmazonMQConfiguration { - results := map[string]*resources.AWSAmazonMQConfiguration{} +// GetAllPinpointAPNSSandboxChannelResources retrieves all pinpoint.APNSSandboxChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointAPNSSandboxChannelResources() map[string]*pinpoint.APNSSandboxChannel { + results := map[string]*pinpoint.APNSSandboxChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAmazonMQConfiguration: + case *pinpoint.APNSSandboxChannel: results[name] = resource } } return results } -// GetAWSAmazonMQConfigurationWithName retrieves all AWSAmazonMQConfiguration items from an AWS CloudFormation template +// GetPinpointAPNSSandboxChannelWithName retrieves all pinpoint.APNSSandboxChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAmazonMQConfigurationWithName(name string) (*resources.AWSAmazonMQConfiguration, error) { +func (t *Template) GetPinpointAPNSSandboxChannelWithName(name string) (*pinpoint.APNSSandboxChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAmazonMQConfiguration: + case *pinpoint.APNSSandboxChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAmazonMQConfiguration not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.APNSSandboxChannel not found", name) } -// GetAllAWSAmazonMQConfigurationAssociationResources retrieves all AWSAmazonMQConfigurationAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSAmazonMQConfigurationAssociationResources() map[string]*resources.AWSAmazonMQConfigurationAssociation { - results := map[string]*resources.AWSAmazonMQConfigurationAssociation{} +// GetAllFSxFileSystemResources retrieves all fsx.FileSystem items from an AWS CloudFormation template +func (t *Template) GetAllFSxFileSystemResources() map[string]*fsx.FileSystem { + results := map[string]*fsx.FileSystem{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAmazonMQConfigurationAssociation: + case *fsx.FileSystem: results[name] = resource } } return results } -// GetAWSAmazonMQConfigurationAssociationWithName retrieves all AWSAmazonMQConfigurationAssociation items from an AWS CloudFormation template +// GetFSxFileSystemWithName retrieves all fsx.FileSystem items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAmazonMQConfigurationAssociationWithName(name string) (*resources.AWSAmazonMQConfigurationAssociation, error) { +func (t *Template) GetFSxFileSystemWithName(name string) (*fsx.FileSystem, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAmazonMQConfigurationAssociation: + case *fsx.FileSystem: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAmazonMQConfigurationAssociation not found", name) + return nil, fmt.Errorf("resource %q of type fsx.FileSystem not found", name) } -// GetAllAWSAmplifyAppResources retrieves all AWSAmplifyApp items from an AWS CloudFormation template -func (t *Template) GetAllAWSAmplifyAppResources() map[string]*resources.AWSAmplifyApp { - results := map[string]*resources.AWSAmplifyApp{} +// GetAllElasticBeanstalkEnvironmentResources retrieves all elasticbeanstalk.Environment items from an AWS CloudFormation template +func (t *Template) GetAllElasticBeanstalkEnvironmentResources() map[string]*elasticbeanstalk.Environment { + results := map[string]*elasticbeanstalk.Environment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAmplifyApp: + case *elasticbeanstalk.Environment: results[name] = resource } } return results } -// GetAWSAmplifyAppWithName retrieves all AWSAmplifyApp items from an AWS CloudFormation template +// GetElasticBeanstalkEnvironmentWithName retrieves all elasticbeanstalk.Environment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAmplifyAppWithName(name string) (*resources.AWSAmplifyApp, error) { +func (t *Template) GetElasticBeanstalkEnvironmentWithName(name string) (*elasticbeanstalk.Environment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAmplifyApp: + case *elasticbeanstalk.Environment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAmplifyApp not found", name) + return nil, fmt.Errorf("resource %q of type elasticbeanstalk.Environment not found", name) } -// GetAllAWSAmplifyBranchResources retrieves all AWSAmplifyBranch items from an AWS CloudFormation template -func (t *Template) GetAllAWSAmplifyBranchResources() map[string]*resources.AWSAmplifyBranch { - results := map[string]*resources.AWSAmplifyBranch{} +// GetAllCloudFrontStreamingDistributionResources retrieves all cloudfront.StreamingDistribution items from an AWS CloudFormation template +func (t *Template) GetAllCloudFrontStreamingDistributionResources() map[string]*cloudfront.StreamingDistribution { + results := map[string]*cloudfront.StreamingDistribution{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAmplifyBranch: + case *cloudfront.StreamingDistribution: results[name] = resource } } return results } -// GetAWSAmplifyBranchWithName retrieves all AWSAmplifyBranch items from an AWS CloudFormation template +// GetCloudFrontStreamingDistributionWithName retrieves all cloudfront.StreamingDistribution items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAmplifyBranchWithName(name string) (*resources.AWSAmplifyBranch, error) { +func (t *Template) GetCloudFrontStreamingDistributionWithName(name string) (*cloudfront.StreamingDistribution, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAmplifyBranch: + case *cloudfront.StreamingDistribution: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAmplifyBranch not found", name) + return nil, fmt.Errorf("resource %q of type cloudfront.StreamingDistribution not found", name) } -// GetAllAWSAmplifyDomainResources retrieves all AWSAmplifyDomain items from an AWS CloudFormation template -func (t *Template) GetAllAWSAmplifyDomainResources() map[string]*resources.AWSAmplifyDomain { - results := map[string]*resources.AWSAmplifyDomain{} +// GetAllSESTemplateResources retrieves all ses.Template items from an AWS CloudFormation template +func (t *Template) GetAllSESTemplateResources() map[string]*ses.Template { + results := map[string]*ses.Template{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAmplifyDomain: + case *ses.Template: results[name] = resource } } return results } -// GetAWSAmplifyDomainWithName retrieves all AWSAmplifyDomain items from an AWS CloudFormation template +// GetSESTemplateWithName retrieves all ses.Template items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAmplifyDomainWithName(name string) (*resources.AWSAmplifyDomain, error) { +func (t *Template) GetSESTemplateWithName(name string) (*ses.Template, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAmplifyDomain: + case *ses.Template: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAmplifyDomain not found", name) + return nil, fmt.Errorf("resource %q of type ses.Template not found", name) } -// GetAllAWSApiGatewayAccountResources retrieves all AWSApiGatewayAccount items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayAccountResources() map[string]*resources.AWSApiGatewayAccount { - results := map[string]*resources.AWSApiGatewayAccount{} +// GetAllCloudTrailTrailResources retrieves all cloudtrail.Trail items from an AWS CloudFormation template +func (t *Template) GetAllCloudTrailTrailResources() map[string]*cloudtrail.Trail { + results := map[string]*cloudtrail.Trail{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayAccount: + case *cloudtrail.Trail: results[name] = resource } } return results } -// GetAWSApiGatewayAccountWithName retrieves all AWSApiGatewayAccount items from an AWS CloudFormation template +// GetCloudTrailTrailWithName retrieves all cloudtrail.Trail items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayAccountWithName(name string) (*resources.AWSApiGatewayAccount, error) { +func (t *Template) GetCloudTrailTrailWithName(name string) (*cloudtrail.Trail, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayAccount: + case *cloudtrail.Trail: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayAccount not found", name) + return nil, fmt.Errorf("resource %q of type cloudtrail.Trail not found", name) } -// GetAllAWSApiGatewayApiKeyResources retrieves all AWSApiGatewayApiKey items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayApiKeyResources() map[string]*resources.AWSApiGatewayApiKey { - results := map[string]*resources.AWSApiGatewayApiKey{} +// GetAllKinesisAnalyticsV2ApplicationCloudWatchLoggingOptionResources retrieves all kinesisanalyticsv2.ApplicationCloudWatchLoggingOption items from an AWS CloudFormation template +func (t *Template) GetAllKinesisAnalyticsV2ApplicationCloudWatchLoggingOptionResources() map[string]*kinesisanalyticsv2.ApplicationCloudWatchLoggingOption { + results := map[string]*kinesisanalyticsv2.ApplicationCloudWatchLoggingOption{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayApiKey: + case *kinesisanalyticsv2.ApplicationCloudWatchLoggingOption: results[name] = resource } } return results } -// GetAWSApiGatewayApiKeyWithName retrieves all AWSApiGatewayApiKey items from an AWS CloudFormation template +// GetKinesisAnalyticsV2ApplicationCloudWatchLoggingOptionWithName retrieves all kinesisanalyticsv2.ApplicationCloudWatchLoggingOption items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayApiKeyWithName(name string) (*resources.AWSApiGatewayApiKey, error) { +func (t *Template) GetKinesisAnalyticsV2ApplicationCloudWatchLoggingOptionWithName(name string) (*kinesisanalyticsv2.ApplicationCloudWatchLoggingOption, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayApiKey: + case *kinesisanalyticsv2.ApplicationCloudWatchLoggingOption: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayApiKey not found", name) + return nil, fmt.Errorf("resource %q of type kinesisanalyticsv2.ApplicationCloudWatchLoggingOption not found", name) } -// GetAllAWSApiGatewayAuthorizerResources retrieves all AWSApiGatewayAuthorizer items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayAuthorizerResources() map[string]*resources.AWSApiGatewayAuthorizer { - results := map[string]*resources.AWSApiGatewayAuthorizer{} +// GetAllElastiCacheSecurityGroupResources retrieves all elasticache.SecurityGroup items from an AWS CloudFormation template +func (t *Template) GetAllElastiCacheSecurityGroupResources() map[string]*elasticache.SecurityGroup { + results := map[string]*elasticache.SecurityGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayAuthorizer: + case *elasticache.SecurityGroup: results[name] = resource } } return results } -// GetAWSApiGatewayAuthorizerWithName retrieves all AWSApiGatewayAuthorizer items from an AWS CloudFormation template +// GetElastiCacheSecurityGroupWithName retrieves all elasticache.SecurityGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayAuthorizerWithName(name string) (*resources.AWSApiGatewayAuthorizer, error) { +func (t *Template) GetElastiCacheSecurityGroupWithName(name string) (*elasticache.SecurityGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayAuthorizer: + case *elasticache.SecurityGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayAuthorizer not found", name) + return nil, fmt.Errorf("resource %q of type elasticache.SecurityGroup not found", name) } -// GetAllAWSApiGatewayBasePathMappingResources retrieves all AWSApiGatewayBasePathMapping items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayBasePathMappingResources() map[string]*resources.AWSApiGatewayBasePathMapping { - results := map[string]*resources.AWSApiGatewayBasePathMapping{} +// GetAllDAXSubnetGroupResources retrieves all dax.SubnetGroup items from an AWS CloudFormation template +func (t *Template) GetAllDAXSubnetGroupResources() map[string]*dax.SubnetGroup { + results := map[string]*dax.SubnetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayBasePathMapping: + case *dax.SubnetGroup: results[name] = resource } } return results } -// GetAWSApiGatewayBasePathMappingWithName retrieves all AWSApiGatewayBasePathMapping items from an AWS CloudFormation template +// GetDAXSubnetGroupWithName retrieves all dax.SubnetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayBasePathMappingWithName(name string) (*resources.AWSApiGatewayBasePathMapping, error) { +func (t *Template) GetDAXSubnetGroupWithName(name string) (*dax.SubnetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayBasePathMapping: + case *dax.SubnetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayBasePathMapping not found", name) + return nil, fmt.Errorf("resource %q of type dax.SubnetGroup not found", name) } -// GetAllAWSApiGatewayClientCertificateResources retrieves all AWSApiGatewayClientCertificate items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayClientCertificateResources() map[string]*resources.AWSApiGatewayClientCertificate { - results := map[string]*resources.AWSApiGatewayClientCertificate{} +// GetAllPinpointADMChannelResources retrieves all pinpoint.ADMChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointADMChannelResources() map[string]*pinpoint.ADMChannel { + results := map[string]*pinpoint.ADMChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayClientCertificate: + case *pinpoint.ADMChannel: results[name] = resource } } return results } -// GetAWSApiGatewayClientCertificateWithName retrieves all AWSApiGatewayClientCertificate items from an AWS CloudFormation template +// GetPinpointADMChannelWithName retrieves all pinpoint.ADMChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayClientCertificateWithName(name string) (*resources.AWSApiGatewayClientCertificate, error) { +func (t *Template) GetPinpointADMChannelWithName(name string) (*pinpoint.ADMChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayClientCertificate: + case *pinpoint.ADMChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayClientCertificate not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.ADMChannel not found", name) } -// GetAllAWSApiGatewayDeploymentResources retrieves all AWSApiGatewayDeployment items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayDeploymentResources() map[string]*resources.AWSApiGatewayDeployment { - results := map[string]*resources.AWSApiGatewayDeployment{} +// GetAllOpsWorksLayerResources retrieves all opsworks.Layer items from an AWS CloudFormation template +func (t *Template) GetAllOpsWorksLayerResources() map[string]*opsworks.Layer { + results := map[string]*opsworks.Layer{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayDeployment: + case *opsworks.Layer: results[name] = resource } } return results } -// GetAWSApiGatewayDeploymentWithName retrieves all AWSApiGatewayDeployment items from an AWS CloudFormation template +// GetOpsWorksLayerWithName retrieves all opsworks.Layer items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayDeploymentWithName(name string) (*resources.AWSApiGatewayDeployment, error) { +func (t *Template) GetOpsWorksLayerWithName(name string) (*opsworks.Layer, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayDeployment: + case *opsworks.Layer: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayDeployment not found", name) + return nil, fmt.Errorf("resource %q of type opsworks.Layer not found", name) } -// GetAllAWSApiGatewayDocumentationPartResources retrieves all AWSApiGatewayDocumentationPart items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayDocumentationPartResources() map[string]*resources.AWSApiGatewayDocumentationPart { - results := map[string]*resources.AWSApiGatewayDocumentationPart{} +// GetAllApiGatewayStageResources retrieves all apigateway.Stage items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayStageResources() map[string]*apigateway.Stage { + results := map[string]*apigateway.Stage{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayDocumentationPart: + case *apigateway.Stage: results[name] = resource } } return results } -// GetAWSApiGatewayDocumentationPartWithName retrieves all AWSApiGatewayDocumentationPart items from an AWS CloudFormation template +// GetApiGatewayStageWithName retrieves all apigateway.Stage items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayDocumentationPartWithName(name string) (*resources.AWSApiGatewayDocumentationPart, error) { +func (t *Template) GetApiGatewayStageWithName(name string) (*apigateway.Stage, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayDocumentationPart: + case *apigateway.Stage: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayDocumentationPart not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.Stage not found", name) } -// GetAllAWSApiGatewayDocumentationVersionResources retrieves all AWSApiGatewayDocumentationVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayDocumentationVersionResources() map[string]*resources.AWSApiGatewayDocumentationVersion { - results := map[string]*resources.AWSApiGatewayDocumentationVersion{} +// GetAllSESReceiptRuleResources retrieves all ses.ReceiptRule items from an AWS CloudFormation template +func (t *Template) GetAllSESReceiptRuleResources() map[string]*ses.ReceiptRule { + results := map[string]*ses.ReceiptRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayDocumentationVersion: + case *ses.ReceiptRule: results[name] = resource } } return results } -// GetAWSApiGatewayDocumentationVersionWithName retrieves all AWSApiGatewayDocumentationVersion items from an AWS CloudFormation template +// GetSESReceiptRuleWithName retrieves all ses.ReceiptRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayDocumentationVersionWithName(name string) (*resources.AWSApiGatewayDocumentationVersion, error) { +func (t *Template) GetSESReceiptRuleWithName(name string) (*ses.ReceiptRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayDocumentationVersion: + case *ses.ReceiptRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayDocumentationVersion not found", name) + return nil, fmt.Errorf("resource %q of type ses.ReceiptRule not found", name) } -// GetAllAWSApiGatewayDomainNameResources retrieves all AWSApiGatewayDomainName items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayDomainNameResources() map[string]*resources.AWSApiGatewayDomainName { - results := map[string]*resources.AWSApiGatewayDomainName{} +// GetAllEC2VPCDHCPOptionsAssociationResources retrieves all ec2.VPCDHCPOptionsAssociation items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCDHCPOptionsAssociationResources() map[string]*ec2.VPCDHCPOptionsAssociation { + results := map[string]*ec2.VPCDHCPOptionsAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayDomainName: + case *ec2.VPCDHCPOptionsAssociation: results[name] = resource } } return results } -// GetAWSApiGatewayDomainNameWithName retrieves all AWSApiGatewayDomainName items from an AWS CloudFormation template +// GetEC2VPCDHCPOptionsAssociationWithName retrieves all ec2.VPCDHCPOptionsAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayDomainNameWithName(name string) (*resources.AWSApiGatewayDomainName, error) { +func (t *Template) GetEC2VPCDHCPOptionsAssociationWithName(name string) (*ec2.VPCDHCPOptionsAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayDomainName: + case *ec2.VPCDHCPOptionsAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayDomainName not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPCDHCPOptionsAssociation not found", name) } -// GetAllAWSApiGatewayGatewayResponseResources retrieves all AWSApiGatewayGatewayResponse items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayGatewayResponseResources() map[string]*resources.AWSApiGatewayGatewayResponse { - results := map[string]*resources.AWSApiGatewayGatewayResponse{} +// GetAllServiceDiscoveryPublicDnsNamespaceResources retrieves all servicediscovery.PublicDnsNamespace items from an AWS CloudFormation template +func (t *Template) GetAllServiceDiscoveryPublicDnsNamespaceResources() map[string]*servicediscovery.PublicDnsNamespace { + results := map[string]*servicediscovery.PublicDnsNamespace{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayGatewayResponse: + case *servicediscovery.PublicDnsNamespace: results[name] = resource } } return results } -// GetAWSApiGatewayGatewayResponseWithName retrieves all AWSApiGatewayGatewayResponse items from an AWS CloudFormation template +// GetServiceDiscoveryPublicDnsNamespaceWithName retrieves all servicediscovery.PublicDnsNamespace items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayGatewayResponseWithName(name string) (*resources.AWSApiGatewayGatewayResponse, error) { +func (t *Template) GetServiceDiscoveryPublicDnsNamespaceWithName(name string) (*servicediscovery.PublicDnsNamespace, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayGatewayResponse: + case *servicediscovery.PublicDnsNamespace: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayGatewayResponse not found", name) + return nil, fmt.Errorf("resource %q of type servicediscovery.PublicDnsNamespace not found", name) } -// GetAllAWSApiGatewayMethodResources retrieves all AWSApiGatewayMethod items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayMethodResources() map[string]*resources.AWSApiGatewayMethod { - results := map[string]*resources.AWSApiGatewayMethod{} +// GetAllElasticBeanstalkConfigurationTemplateResources retrieves all elasticbeanstalk.ConfigurationTemplate items from an AWS CloudFormation template +func (t *Template) GetAllElasticBeanstalkConfigurationTemplateResources() map[string]*elasticbeanstalk.ConfigurationTemplate { + results := map[string]*elasticbeanstalk.ConfigurationTemplate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayMethod: + case *elasticbeanstalk.ConfigurationTemplate: results[name] = resource } } return results } -// GetAWSApiGatewayMethodWithName retrieves all AWSApiGatewayMethod items from an AWS CloudFormation template +// GetElasticBeanstalkConfigurationTemplateWithName retrieves all elasticbeanstalk.ConfigurationTemplate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayMethodWithName(name string) (*resources.AWSApiGatewayMethod, error) { +func (t *Template) GetElasticBeanstalkConfigurationTemplateWithName(name string) (*elasticbeanstalk.ConfigurationTemplate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayMethod: + case *elasticbeanstalk.ConfigurationTemplate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayMethod not found", name) + return nil, fmt.Errorf("resource %q of type elasticbeanstalk.ConfigurationTemplate not found", name) } -// GetAllAWSApiGatewayModelResources retrieves all AWSApiGatewayModel items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayModelResources() map[string]*resources.AWSApiGatewayModel { - results := map[string]*resources.AWSApiGatewayModel{} +// GetAllAutoScalingPlansScalingPlanResources retrieves all autoscalingplans.ScalingPlan items from an AWS CloudFormation template +func (t *Template) GetAllAutoScalingPlansScalingPlanResources() map[string]*autoscalingplans.ScalingPlan { + results := map[string]*autoscalingplans.ScalingPlan{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayModel: + case *autoscalingplans.ScalingPlan: results[name] = resource } } return results } -// GetAWSApiGatewayModelWithName retrieves all AWSApiGatewayModel items from an AWS CloudFormation template +// GetAutoScalingPlansScalingPlanWithName retrieves all autoscalingplans.ScalingPlan items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayModelWithName(name string) (*resources.AWSApiGatewayModel, error) { +func (t *Template) GetAutoScalingPlansScalingPlanWithName(name string) (*autoscalingplans.ScalingPlan, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayModel: + case *autoscalingplans.ScalingPlan: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayModel not found", name) + return nil, fmt.Errorf("resource %q of type autoscalingplans.ScalingPlan not found", name) } -// GetAllAWSApiGatewayRequestValidatorResources retrieves all AWSApiGatewayRequestValidator items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayRequestValidatorResources() map[string]*resources.AWSApiGatewayRequestValidator { - results := map[string]*resources.AWSApiGatewayRequestValidator{} +// GetAllApiGatewayAuthorizerResources retrieves all apigateway.Authorizer items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayAuthorizerResources() map[string]*apigateway.Authorizer { + results := map[string]*apigateway.Authorizer{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayRequestValidator: + case *apigateway.Authorizer: results[name] = resource } } return results } -// GetAWSApiGatewayRequestValidatorWithName retrieves all AWSApiGatewayRequestValidator items from an AWS CloudFormation template +// GetApiGatewayAuthorizerWithName retrieves all apigateway.Authorizer items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayRequestValidatorWithName(name string) (*resources.AWSApiGatewayRequestValidator, error) { +func (t *Template) GetApiGatewayAuthorizerWithName(name string) (*apigateway.Authorizer, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayRequestValidator: + case *apigateway.Authorizer: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayRequestValidator not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.Authorizer not found", name) } -// GetAllAWSApiGatewayResourceResources retrieves all AWSApiGatewayResource items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayResourceResources() map[string]*resources.AWSApiGatewayResource { - results := map[string]*resources.AWSApiGatewayResource{} +// GetAllEC2TrafficMirrorFilterResources retrieves all ec2.TrafficMirrorFilter items from an AWS CloudFormation template +func (t *Template) GetAllEC2TrafficMirrorFilterResources() map[string]*ec2.TrafficMirrorFilter { + results := map[string]*ec2.TrafficMirrorFilter{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayResource: + case *ec2.TrafficMirrorFilter: results[name] = resource } } return results } -// GetAWSApiGatewayResourceWithName retrieves all AWSApiGatewayResource items from an AWS CloudFormation template +// GetEC2TrafficMirrorFilterWithName retrieves all ec2.TrafficMirrorFilter items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayResourceWithName(name string) (*resources.AWSApiGatewayResource, error) { +func (t *Template) GetEC2TrafficMirrorFilterWithName(name string) (*ec2.TrafficMirrorFilter, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayResource: + case *ec2.TrafficMirrorFilter: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayResource not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TrafficMirrorFilter not found", name) } -// GetAllAWSApiGatewayRestApiResources retrieves all AWSApiGatewayRestApi items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayRestApiResources() map[string]*resources.AWSApiGatewayRestApi { - results := map[string]*resources.AWSApiGatewayRestApi{} +// GetAllSecretsManagerSecretTargetAttachmentResources retrieves all secretsmanager.SecretTargetAttachment items from an AWS CloudFormation template +func (t *Template) GetAllSecretsManagerSecretTargetAttachmentResources() map[string]*secretsmanager.SecretTargetAttachment { + results := map[string]*secretsmanager.SecretTargetAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayRestApi: + case *secretsmanager.SecretTargetAttachment: results[name] = resource } } return results } -// GetAWSApiGatewayRestApiWithName retrieves all AWSApiGatewayRestApi items from an AWS CloudFormation template +// GetSecretsManagerSecretTargetAttachmentWithName retrieves all secretsmanager.SecretTargetAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayRestApiWithName(name string) (*resources.AWSApiGatewayRestApi, error) { +func (t *Template) GetSecretsManagerSecretTargetAttachmentWithName(name string) (*secretsmanager.SecretTargetAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayRestApi: + case *secretsmanager.SecretTargetAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayRestApi not found", name) + return nil, fmt.Errorf("resource %q of type secretsmanager.SecretTargetAttachment not found", name) } -// GetAllAWSApiGatewayStageResources retrieves all AWSApiGatewayStage items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayStageResources() map[string]*resources.AWSApiGatewayStage { - results := map[string]*resources.AWSApiGatewayStage{} +// GetAllGreengrassFunctionDefinitionVersionResources retrieves all greengrass.FunctionDefinitionVersion items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassFunctionDefinitionVersionResources() map[string]*greengrass.FunctionDefinitionVersion { + results := map[string]*greengrass.FunctionDefinitionVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayStage: + case *greengrass.FunctionDefinitionVersion: results[name] = resource } } return results } -// GetAWSApiGatewayStageWithName retrieves all AWSApiGatewayStage items from an AWS CloudFormation template +// GetGreengrassFunctionDefinitionVersionWithName retrieves all greengrass.FunctionDefinitionVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayStageWithName(name string) (*resources.AWSApiGatewayStage, error) { +func (t *Template) GetGreengrassFunctionDefinitionVersionWithName(name string) (*greengrass.FunctionDefinitionVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayStage: + case *greengrass.FunctionDefinitionVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayStage not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.FunctionDefinitionVersion not found", name) } -// GetAllAWSApiGatewayUsagePlanResources retrieves all AWSApiGatewayUsagePlan items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayUsagePlanResources() map[string]*resources.AWSApiGatewayUsagePlan { - results := map[string]*resources.AWSApiGatewayUsagePlan{} +// GetAllServiceCatalogTagOptionAssociationResources retrieves all servicecatalog.TagOptionAssociation items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogTagOptionAssociationResources() map[string]*servicecatalog.TagOptionAssociation { + results := map[string]*servicecatalog.TagOptionAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayUsagePlan: + case *servicecatalog.TagOptionAssociation: results[name] = resource } } return results } -// GetAWSApiGatewayUsagePlanWithName retrieves all AWSApiGatewayUsagePlan items from an AWS CloudFormation template +// GetServiceCatalogTagOptionAssociationWithName retrieves all servicecatalog.TagOptionAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayUsagePlanWithName(name string) (*resources.AWSApiGatewayUsagePlan, error) { +func (t *Template) GetServiceCatalogTagOptionAssociationWithName(name string) (*servicecatalog.TagOptionAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayUsagePlan: + case *servicecatalog.TagOptionAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayUsagePlan not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.TagOptionAssociation not found", name) } -// GetAllAWSApiGatewayUsagePlanKeyResources retrieves all AWSApiGatewayUsagePlanKey items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayUsagePlanKeyResources() map[string]*resources.AWSApiGatewayUsagePlanKey { - results := map[string]*resources.AWSApiGatewayUsagePlanKey{} +// GetAllEventsEventBusPolicyResources retrieves all events.EventBusPolicy items from an AWS CloudFormation template +func (t *Template) GetAllEventsEventBusPolicyResources() map[string]*events.EventBusPolicy { + results := map[string]*events.EventBusPolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayUsagePlanKey: + case *events.EventBusPolicy: results[name] = resource } } return results } -// GetAWSApiGatewayUsagePlanKeyWithName retrieves all AWSApiGatewayUsagePlanKey items from an AWS CloudFormation template +// GetEventsEventBusPolicyWithName retrieves all events.EventBusPolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayUsagePlanKeyWithName(name string) (*resources.AWSApiGatewayUsagePlanKey, error) { +func (t *Template) GetEventsEventBusPolicyWithName(name string) (*events.EventBusPolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayUsagePlanKey: + case *events.EventBusPolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayUsagePlanKey not found", name) + return nil, fmt.Errorf("resource %q of type events.EventBusPolicy not found", name) } -// GetAllAWSApiGatewayVpcLinkResources retrieves all AWSApiGatewayVpcLink items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayVpcLinkResources() map[string]*resources.AWSApiGatewayVpcLink { - results := map[string]*resources.AWSApiGatewayVpcLink{} +// GetAllSSMMaintenanceWindowTargetResources retrieves all ssm.MaintenanceWindowTarget items from an AWS CloudFormation template +func (t *Template) GetAllSSMMaintenanceWindowTargetResources() map[string]*ssm.MaintenanceWindowTarget { + results := map[string]*ssm.MaintenanceWindowTarget{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayVpcLink: + case *ssm.MaintenanceWindowTarget: results[name] = resource } } return results } -// GetAWSApiGatewayVpcLinkWithName retrieves all AWSApiGatewayVpcLink items from an AWS CloudFormation template +// GetSSMMaintenanceWindowTargetWithName retrieves all ssm.MaintenanceWindowTarget items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayVpcLinkWithName(name string) (*resources.AWSApiGatewayVpcLink, error) { +func (t *Template) GetSSMMaintenanceWindowTargetWithName(name string) (*ssm.MaintenanceWindowTarget, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayVpcLink: + case *ssm.MaintenanceWindowTarget: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayVpcLink not found", name) + return nil, fmt.Errorf("resource %q of type ssm.MaintenanceWindowTarget not found", name) } -// GetAllAWSApiGatewayV2ApiResources retrieves all AWSApiGatewayV2Api items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2ApiResources() map[string]*resources.AWSApiGatewayV2Api { - results := map[string]*resources.AWSApiGatewayV2Api{} +// GetAllConfigDeliveryChannelResources retrieves all config.DeliveryChannel items from an AWS CloudFormation template +func (t *Template) GetAllConfigDeliveryChannelResources() map[string]*config.DeliveryChannel { + results := map[string]*config.DeliveryChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Api: + case *config.DeliveryChannel: results[name] = resource } } return results } -// GetAWSApiGatewayV2ApiWithName retrieves all AWSApiGatewayV2Api items from an AWS CloudFormation template +// GetConfigDeliveryChannelWithName retrieves all config.DeliveryChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2ApiWithName(name string) (*resources.AWSApiGatewayV2Api, error) { +func (t *Template) GetConfigDeliveryChannelWithName(name string) (*config.DeliveryChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Api: + case *config.DeliveryChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2Api not found", name) + return nil, fmt.Errorf("resource %q of type config.DeliveryChannel not found", name) } -// GetAllAWSApiGatewayV2ApiMappingResources retrieves all AWSApiGatewayV2ApiMapping items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2ApiMappingResources() map[string]*resources.AWSApiGatewayV2ApiMapping { - results := map[string]*resources.AWSApiGatewayV2ApiMapping{} +// GetAllEC2NetworkAclResources retrieves all ec2.NetworkAcl items from an AWS CloudFormation template +func (t *Template) GetAllEC2NetworkAclResources() map[string]*ec2.NetworkAcl { + results := map[string]*ec2.NetworkAcl{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2ApiMapping: + case *ec2.NetworkAcl: results[name] = resource } } return results } -// GetAWSApiGatewayV2ApiMappingWithName retrieves all AWSApiGatewayV2ApiMapping items from an AWS CloudFormation template +// GetEC2NetworkAclWithName retrieves all ec2.NetworkAcl items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2ApiMappingWithName(name string) (*resources.AWSApiGatewayV2ApiMapping, error) { +func (t *Template) GetEC2NetworkAclWithName(name string) (*ec2.NetworkAcl, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2ApiMapping: + case *ec2.NetworkAcl: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2ApiMapping not found", name) + return nil, fmt.Errorf("resource %q of type ec2.NetworkAcl not found", name) } -// GetAllAWSApiGatewayV2AuthorizerResources retrieves all AWSApiGatewayV2Authorizer items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2AuthorizerResources() map[string]*resources.AWSApiGatewayV2Authorizer { - results := map[string]*resources.AWSApiGatewayV2Authorizer{} +// GetAllKinesisFirehoseDeliveryStreamResources retrieves all kinesisfirehose.DeliveryStream items from an AWS CloudFormation template +func (t *Template) GetAllKinesisFirehoseDeliveryStreamResources() map[string]*kinesisfirehose.DeliveryStream { + results := map[string]*kinesisfirehose.DeliveryStream{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Authorizer: + case *kinesisfirehose.DeliveryStream: results[name] = resource } } return results } -// GetAWSApiGatewayV2AuthorizerWithName retrieves all AWSApiGatewayV2Authorizer items from an AWS CloudFormation template +// GetKinesisFirehoseDeliveryStreamWithName retrieves all kinesisfirehose.DeliveryStream items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2AuthorizerWithName(name string) (*resources.AWSApiGatewayV2Authorizer, error) { +func (t *Template) GetKinesisFirehoseDeliveryStreamWithName(name string) (*kinesisfirehose.DeliveryStream, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Authorizer: + case *kinesisfirehose.DeliveryStream: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2Authorizer not found", name) + return nil, fmt.Errorf("resource %q of type kinesisfirehose.DeliveryStream not found", name) } -// GetAllAWSApiGatewayV2DeploymentResources retrieves all AWSApiGatewayV2Deployment items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2DeploymentResources() map[string]*resources.AWSApiGatewayV2Deployment { - results := map[string]*resources.AWSApiGatewayV2Deployment{} +// GetAllStepFunctionsActivityResources retrieves all stepfunctions.Activity items from an AWS CloudFormation template +func (t *Template) GetAllStepFunctionsActivityResources() map[string]*stepfunctions.Activity { + results := map[string]*stepfunctions.Activity{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Deployment: + case *stepfunctions.Activity: results[name] = resource } } return results } -// GetAWSApiGatewayV2DeploymentWithName retrieves all AWSApiGatewayV2Deployment items from an AWS CloudFormation template +// GetStepFunctionsActivityWithName retrieves all stepfunctions.Activity items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2DeploymentWithName(name string) (*resources.AWSApiGatewayV2Deployment, error) { +func (t *Template) GetStepFunctionsActivityWithName(name string) (*stepfunctions.Activity, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Deployment: + case *stepfunctions.Activity: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2Deployment not found", name) + return nil, fmt.Errorf("resource %q of type stepfunctions.Activity not found", name) } -// GetAllAWSApiGatewayV2DomainNameResources retrieves all AWSApiGatewayV2DomainName items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2DomainNameResources() map[string]*resources.AWSApiGatewayV2DomainName { - results := map[string]*resources.AWSApiGatewayV2DomainName{} +// GetAllElasticLoadBalancingLoadBalancerResources retrieves all elasticloadbalancing.LoadBalancer items from an AWS CloudFormation template +func (t *Template) GetAllElasticLoadBalancingLoadBalancerResources() map[string]*elasticloadbalancing.LoadBalancer { + results := map[string]*elasticloadbalancing.LoadBalancer{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2DomainName: + case *elasticloadbalancing.LoadBalancer: results[name] = resource } } return results } -// GetAWSApiGatewayV2DomainNameWithName retrieves all AWSApiGatewayV2DomainName items from an AWS CloudFormation template +// GetElasticLoadBalancingLoadBalancerWithName retrieves all elasticloadbalancing.LoadBalancer items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2DomainNameWithName(name string) (*resources.AWSApiGatewayV2DomainName, error) { +func (t *Template) GetElasticLoadBalancingLoadBalancerWithName(name string) (*elasticloadbalancing.LoadBalancer, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2DomainName: + case *elasticloadbalancing.LoadBalancer: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2DomainName not found", name) + return nil, fmt.Errorf("resource %q of type elasticloadbalancing.LoadBalancer not found", name) } -// GetAllAWSApiGatewayV2IntegrationResources retrieves all AWSApiGatewayV2Integration items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2IntegrationResources() map[string]*resources.AWSApiGatewayV2Integration { - results := map[string]*resources.AWSApiGatewayV2Integration{} +// GetAllASKSkillResources retrieves all ask.Skill items from an AWS CloudFormation template +func (t *Template) GetAllASKSkillResources() map[string]*ask.Skill { + results := map[string]*ask.Skill{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Integration: + case *ask.Skill: results[name] = resource } } return results } -// GetAWSApiGatewayV2IntegrationWithName retrieves all AWSApiGatewayV2Integration items from an AWS CloudFormation template +// GetASKSkillWithName retrieves all ask.Skill items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2IntegrationWithName(name string) (*resources.AWSApiGatewayV2Integration, error) { +func (t *Template) GetASKSkillWithName(name string) (*ask.Skill, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Integration: + case *ask.Skill: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2Integration not found", name) + return nil, fmt.Errorf("resource %q of type ask.Skill not found", name) } -// GetAllAWSApiGatewayV2IntegrationResponseResources retrieves all AWSApiGatewayV2IntegrationResponse items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2IntegrationResponseResources() map[string]*resources.AWSApiGatewayV2IntegrationResponse { - results := map[string]*resources.AWSApiGatewayV2IntegrationResponse{} +// GetAllApiGatewayDocumentationPartResources retrieves all apigateway.DocumentationPart items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayDocumentationPartResources() map[string]*apigateway.DocumentationPart { + results := map[string]*apigateway.DocumentationPart{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2IntegrationResponse: + case *apigateway.DocumentationPart: results[name] = resource } } return results } -// GetAWSApiGatewayV2IntegrationResponseWithName retrieves all AWSApiGatewayV2IntegrationResponse items from an AWS CloudFormation template +// GetApiGatewayDocumentationPartWithName retrieves all apigateway.DocumentationPart items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2IntegrationResponseWithName(name string) (*resources.AWSApiGatewayV2IntegrationResponse, error) { +func (t *Template) GetApiGatewayDocumentationPartWithName(name string) (*apigateway.DocumentationPart, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2IntegrationResponse: + case *apigateway.DocumentationPart: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2IntegrationResponse not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.DocumentationPart not found", name) } -// GetAllAWSApiGatewayV2ModelResources retrieves all AWSApiGatewayV2Model items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2ModelResources() map[string]*resources.AWSApiGatewayV2Model { - results := map[string]*resources.AWSApiGatewayV2Model{} +// GetAllEFSFileSystemResources retrieves all efs.FileSystem items from an AWS CloudFormation template +func (t *Template) GetAllEFSFileSystemResources() map[string]*efs.FileSystem { + results := map[string]*efs.FileSystem{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Model: + case *efs.FileSystem: results[name] = resource } } return results } -// GetAWSApiGatewayV2ModelWithName retrieves all AWSApiGatewayV2Model items from an AWS CloudFormation template +// GetEFSFileSystemWithName retrieves all efs.FileSystem items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2ModelWithName(name string) (*resources.AWSApiGatewayV2Model, error) { +func (t *Template) GetEFSFileSystemWithName(name string) (*efs.FileSystem, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Model: + case *efs.FileSystem: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2Model not found", name) + return nil, fmt.Errorf("resource %q of type efs.FileSystem not found", name) } -// GetAllAWSApiGatewayV2RouteResources retrieves all AWSApiGatewayV2Route items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2RouteResources() map[string]*resources.AWSApiGatewayV2Route { - results := map[string]*resources.AWSApiGatewayV2Route{} +// GetAllWAFByteMatchSetResources retrieves all waf.ByteMatchSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFByteMatchSetResources() map[string]*waf.ByteMatchSet { + results := map[string]*waf.ByteMatchSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Route: + case *waf.ByteMatchSet: results[name] = resource } } return results } -// GetAWSApiGatewayV2RouteWithName retrieves all AWSApiGatewayV2Route items from an AWS CloudFormation template +// GetWAFByteMatchSetWithName retrieves all waf.ByteMatchSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2RouteWithName(name string) (*resources.AWSApiGatewayV2Route, error) { +func (t *Template) GetWAFByteMatchSetWithName(name string) (*waf.ByteMatchSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Route: + case *waf.ByteMatchSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2Route not found", name) + return nil, fmt.Errorf("resource %q of type waf.ByteMatchSet not found", name) } -// GetAllAWSApiGatewayV2RouteResponseResources retrieves all AWSApiGatewayV2RouteResponse items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2RouteResponseResources() map[string]*resources.AWSApiGatewayV2RouteResponse { - results := map[string]*resources.AWSApiGatewayV2RouteResponse{} +// GetAllGuardDutyDetectorResources retrieves all guardduty.Detector items from an AWS CloudFormation template +func (t *Template) GetAllGuardDutyDetectorResources() map[string]*guardduty.Detector { + results := map[string]*guardduty.Detector{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2RouteResponse: + case *guardduty.Detector: results[name] = resource } } return results } -// GetAWSApiGatewayV2RouteResponseWithName retrieves all AWSApiGatewayV2RouteResponse items from an AWS CloudFormation template +// GetGuardDutyDetectorWithName retrieves all guardduty.Detector items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2RouteResponseWithName(name string) (*resources.AWSApiGatewayV2RouteResponse, error) { +func (t *Template) GetGuardDutyDetectorWithName(name string) (*guardduty.Detector, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2RouteResponse: + case *guardduty.Detector: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2RouteResponse not found", name) + return nil, fmt.Errorf("resource %q of type guardduty.Detector not found", name) } -// GetAllAWSApiGatewayV2StageResources retrieves all AWSApiGatewayV2Stage items from an AWS CloudFormation template -func (t *Template) GetAllAWSApiGatewayV2StageResources() map[string]*resources.AWSApiGatewayV2Stage { - results := map[string]*resources.AWSApiGatewayV2Stage{} +// GetAllAppStreamDirectoryConfigResources retrieves all appstream.DirectoryConfig items from an AWS CloudFormation template +func (t *Template) GetAllAppStreamDirectoryConfigResources() map[string]*appstream.DirectoryConfig { + results := map[string]*appstream.DirectoryConfig{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Stage: + case *appstream.DirectoryConfig: results[name] = resource } } return results } -// GetAWSApiGatewayV2StageWithName retrieves all AWSApiGatewayV2Stage items from an AWS CloudFormation template +// GetAppStreamDirectoryConfigWithName retrieves all appstream.DirectoryConfig items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApiGatewayV2StageWithName(name string) (*resources.AWSApiGatewayV2Stage, error) { +func (t *Template) GetAppStreamDirectoryConfigWithName(name string) (*appstream.DirectoryConfig, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApiGatewayV2Stage: + case *appstream.DirectoryConfig: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApiGatewayV2Stage not found", name) + return nil, fmt.Errorf("resource %q of type appstream.DirectoryConfig not found", name) } -// GetAllAWSAppMeshMeshResources retrieves all AWSAppMeshMesh items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppMeshMeshResources() map[string]*resources.AWSAppMeshMesh { - results := map[string]*resources.AWSAppMeshMesh{} +// GetAllEC2TransitGatewayRouteResources retrieves all ec2.TransitGatewayRoute items from an AWS CloudFormation template +func (t *Template) GetAllEC2TransitGatewayRouteResources() map[string]*ec2.TransitGatewayRoute { + results := map[string]*ec2.TransitGatewayRoute{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppMeshMesh: + case *ec2.TransitGatewayRoute: results[name] = resource } } return results } -// GetAWSAppMeshMeshWithName retrieves all AWSAppMeshMesh items from an AWS CloudFormation template +// GetEC2TransitGatewayRouteWithName retrieves all ec2.TransitGatewayRoute items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppMeshMeshWithName(name string) (*resources.AWSAppMeshMesh, error) { +func (t *Template) GetEC2TransitGatewayRouteWithName(name string) (*ec2.TransitGatewayRoute, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppMeshMesh: + case *ec2.TransitGatewayRoute: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppMeshMesh not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TransitGatewayRoute not found", name) } -// GetAllAWSAppMeshRouteResources retrieves all AWSAppMeshRoute items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppMeshRouteResources() map[string]*resources.AWSAppMeshRoute { - results := map[string]*resources.AWSAppMeshRoute{} +// GetAllAppStreamStackUserAssociationResources retrieves all appstream.StackUserAssociation items from an AWS CloudFormation template +func (t *Template) GetAllAppStreamStackUserAssociationResources() map[string]*appstream.StackUserAssociation { + results := map[string]*appstream.StackUserAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppMeshRoute: + case *appstream.StackUserAssociation: results[name] = resource } } return results } -// GetAWSAppMeshRouteWithName retrieves all AWSAppMeshRoute items from an AWS CloudFormation template +// GetAppStreamStackUserAssociationWithName retrieves all appstream.StackUserAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppMeshRouteWithName(name string) (*resources.AWSAppMeshRoute, error) { +func (t *Template) GetAppStreamStackUserAssociationWithName(name string) (*appstream.StackUserAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppMeshRoute: + case *appstream.StackUserAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppMeshRoute not found", name) + return nil, fmt.Errorf("resource %q of type appstream.StackUserAssociation not found", name) } -// GetAllAWSAppMeshVirtualNodeResources retrieves all AWSAppMeshVirtualNode items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppMeshVirtualNodeResources() map[string]*resources.AWSAppMeshVirtualNode { - results := map[string]*resources.AWSAppMeshVirtualNode{} +// GetAllDMSReplicationInstanceResources retrieves all dms.ReplicationInstance items from an AWS CloudFormation template +func (t *Template) GetAllDMSReplicationInstanceResources() map[string]*dms.ReplicationInstance { + results := map[string]*dms.ReplicationInstance{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppMeshVirtualNode: + case *dms.ReplicationInstance: results[name] = resource } } return results } -// GetAWSAppMeshVirtualNodeWithName retrieves all AWSAppMeshVirtualNode items from an AWS CloudFormation template +// GetDMSReplicationInstanceWithName retrieves all dms.ReplicationInstance items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppMeshVirtualNodeWithName(name string) (*resources.AWSAppMeshVirtualNode, error) { +func (t *Template) GetDMSReplicationInstanceWithName(name string) (*dms.ReplicationInstance, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppMeshVirtualNode: + case *dms.ReplicationInstance: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppMeshVirtualNode not found", name) + return nil, fmt.Errorf("resource %q of type dms.ReplicationInstance not found", name) } -// GetAllAWSAppMeshVirtualRouterResources retrieves all AWSAppMeshVirtualRouter items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppMeshVirtualRouterResources() map[string]*resources.AWSAppMeshVirtualRouter { - results := map[string]*resources.AWSAppMeshVirtualRouter{} +// GetAllRDSDBParameterGroupResources retrieves all rds.DBParameterGroup items from an AWS CloudFormation template +func (t *Template) GetAllRDSDBParameterGroupResources() map[string]*rds.DBParameterGroup { + results := map[string]*rds.DBParameterGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppMeshVirtualRouter: + case *rds.DBParameterGroup: results[name] = resource } } return results } -// GetAWSAppMeshVirtualRouterWithName retrieves all AWSAppMeshVirtualRouter items from an AWS CloudFormation template +// GetRDSDBParameterGroupWithName retrieves all rds.DBParameterGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppMeshVirtualRouterWithName(name string) (*resources.AWSAppMeshVirtualRouter, error) { +func (t *Template) GetRDSDBParameterGroupWithName(name string) (*rds.DBParameterGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppMeshVirtualRouter: + case *rds.DBParameterGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppMeshVirtualRouter not found", name) + return nil, fmt.Errorf("resource %q of type rds.DBParameterGroup not found", name) } -// GetAllAWSAppMeshVirtualServiceResources retrieves all AWSAppMeshVirtualService items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppMeshVirtualServiceResources() map[string]*resources.AWSAppMeshVirtualService { - results := map[string]*resources.AWSAppMeshVirtualService{} +// GetAllEventsEventBusResources retrieves all events.EventBus items from an AWS CloudFormation template +func (t *Template) GetAllEventsEventBusResources() map[string]*events.EventBus { + results := map[string]*events.EventBus{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppMeshVirtualService: + case *events.EventBus: results[name] = resource } } return results } -// GetAWSAppMeshVirtualServiceWithName retrieves all AWSAppMeshVirtualService items from an AWS CloudFormation template +// GetEventsEventBusWithName retrieves all events.EventBus items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppMeshVirtualServiceWithName(name string) (*resources.AWSAppMeshVirtualService, error) { +func (t *Template) GetEventsEventBusWithName(name string) (*events.EventBus, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppMeshVirtualService: + case *events.EventBus: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppMeshVirtualService not found", name) + return nil, fmt.Errorf("resource %q of type events.EventBus not found", name) } -// GetAllAWSAppStreamDirectoryConfigResources retrieves all AWSAppStreamDirectoryConfig items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppStreamDirectoryConfigResources() map[string]*resources.AWSAppStreamDirectoryConfig { - results := map[string]*resources.AWSAppStreamDirectoryConfig{} +// GetAllServiceDiscoveryServiceResources retrieves all servicediscovery.Service items from an AWS CloudFormation template +func (t *Template) GetAllServiceDiscoveryServiceResources() map[string]*servicediscovery.Service { + results := map[string]*servicediscovery.Service{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppStreamDirectoryConfig: + case *servicediscovery.Service: results[name] = resource } } return results } -// GetAWSAppStreamDirectoryConfigWithName retrieves all AWSAppStreamDirectoryConfig items from an AWS CloudFormation template +// GetServiceDiscoveryServiceWithName retrieves all servicediscovery.Service items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppStreamDirectoryConfigWithName(name string) (*resources.AWSAppStreamDirectoryConfig, error) { +func (t *Template) GetServiceDiscoveryServiceWithName(name string) (*servicediscovery.Service, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppStreamDirectoryConfig: + case *servicediscovery.Service: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppStreamDirectoryConfig not found", name) + return nil, fmt.Errorf("resource %q of type servicediscovery.Service not found", name) } -// GetAllAWSAppStreamFleetResources retrieves all AWSAppStreamFleet items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppStreamFleetResources() map[string]*resources.AWSAppStreamFleet { - results := map[string]*resources.AWSAppStreamFleet{} +// GetAllEC2NetworkInterfaceResources retrieves all ec2.NetworkInterface items from an AWS CloudFormation template +func (t *Template) GetAllEC2NetworkInterfaceResources() map[string]*ec2.NetworkInterface { + results := map[string]*ec2.NetworkInterface{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppStreamFleet: + case *ec2.NetworkInterface: results[name] = resource } } return results } -// GetAWSAppStreamFleetWithName retrieves all AWSAppStreamFleet items from an AWS CloudFormation template +// GetEC2NetworkInterfaceWithName retrieves all ec2.NetworkInterface items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppStreamFleetWithName(name string) (*resources.AWSAppStreamFleet, error) { +func (t *Template) GetEC2NetworkInterfaceWithName(name string) (*ec2.NetworkInterface, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppStreamFleet: + case *ec2.NetworkInterface: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppStreamFleet not found", name) + return nil, fmt.Errorf("resource %q of type ec2.NetworkInterface not found", name) } -// GetAllAWSAppStreamImageBuilderResources retrieves all AWSAppStreamImageBuilder items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppStreamImageBuilderResources() map[string]*resources.AWSAppStreamImageBuilder { - results := map[string]*resources.AWSAppStreamImageBuilder{} +// GetAllTransferUserResources retrieves all transfer.User items from an AWS CloudFormation template +func (t *Template) GetAllTransferUserResources() map[string]*transfer.User { + results := map[string]*transfer.User{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppStreamImageBuilder: + case *transfer.User: results[name] = resource } } return results } -// GetAWSAppStreamImageBuilderWithName retrieves all AWSAppStreamImageBuilder items from an AWS CloudFormation template +// GetTransferUserWithName retrieves all transfer.User items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppStreamImageBuilderWithName(name string) (*resources.AWSAppStreamImageBuilder, error) { +func (t *Template) GetTransferUserWithName(name string) (*transfer.User, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppStreamImageBuilder: + case *transfer.User: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppStreamImageBuilder not found", name) + return nil, fmt.Errorf("resource %q of type transfer.User not found", name) } -// GetAllAWSAppStreamStackResources retrieves all AWSAppStreamStack items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppStreamStackResources() map[string]*resources.AWSAppStreamStack { - results := map[string]*resources.AWSAppStreamStack{} +// GetAllConfigConfigRuleResources retrieves all config.ConfigRule items from an AWS CloudFormation template +func (t *Template) GetAllConfigConfigRuleResources() map[string]*config.ConfigRule { + results := map[string]*config.ConfigRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppStreamStack: + case *config.ConfigRule: results[name] = resource } } return results } -// GetAWSAppStreamStackWithName retrieves all AWSAppStreamStack items from an AWS CloudFormation template +// GetConfigConfigRuleWithName retrieves all config.ConfigRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppStreamStackWithName(name string) (*resources.AWSAppStreamStack, error) { +func (t *Template) GetConfigConfigRuleWithName(name string) (*config.ConfigRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppStreamStack: + case *config.ConfigRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppStreamStack not found", name) + return nil, fmt.Errorf("resource %q of type config.ConfigRule not found", name) } -// GetAllAWSAppStreamStackFleetAssociationResources retrieves all AWSAppStreamStackFleetAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppStreamStackFleetAssociationResources() map[string]*resources.AWSAppStreamStackFleetAssociation { - results := map[string]*resources.AWSAppStreamStackFleetAssociation{} +// GetAllApiGatewayV2StageResources retrieves all apigatewayv2.Stage items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2StageResources() map[string]*apigatewayv2.Stage { + results := map[string]*apigatewayv2.Stage{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppStreamStackFleetAssociation: + case *apigatewayv2.Stage: results[name] = resource } } return results } -// GetAWSAppStreamStackFleetAssociationWithName retrieves all AWSAppStreamStackFleetAssociation items from an AWS CloudFormation template +// GetApiGatewayV2StageWithName retrieves all apigatewayv2.Stage items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppStreamStackFleetAssociationWithName(name string) (*resources.AWSAppStreamStackFleetAssociation, error) { +func (t *Template) GetApiGatewayV2StageWithName(name string) (*apigatewayv2.Stage, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppStreamStackFleetAssociation: + case *apigatewayv2.Stage: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppStreamStackFleetAssociation not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.Stage not found", name) } -// GetAllAWSAppStreamStackUserAssociationResources retrieves all AWSAppStreamStackUserAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppStreamStackUserAssociationResources() map[string]*resources.AWSAppStreamStackUserAssociation { - results := map[string]*resources.AWSAppStreamStackUserAssociation{} +// GetAllIoTTopicRuleResources retrieves all iot.TopicRule items from an AWS CloudFormation template +func (t *Template) GetAllIoTTopicRuleResources() map[string]*iot.TopicRule { + results := map[string]*iot.TopicRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppStreamStackUserAssociation: + case *iot.TopicRule: results[name] = resource } } return results } -// GetAWSAppStreamStackUserAssociationWithName retrieves all AWSAppStreamStackUserAssociation items from an AWS CloudFormation template +// GetIoTTopicRuleWithName retrieves all iot.TopicRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppStreamStackUserAssociationWithName(name string) (*resources.AWSAppStreamStackUserAssociation, error) { +func (t *Template) GetIoTTopicRuleWithName(name string) (*iot.TopicRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppStreamStackUserAssociation: + case *iot.TopicRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppStreamStackUserAssociation not found", name) + return nil, fmt.Errorf("resource %q of type iot.TopicRule not found", name) } -// GetAllAWSAppStreamUserResources retrieves all AWSAppStreamUser items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppStreamUserResources() map[string]*resources.AWSAppStreamUser { - results := map[string]*resources.AWSAppStreamUser{} +// GetAllEventsRuleResources retrieves all events.Rule items from an AWS CloudFormation template +func (t *Template) GetAllEventsRuleResources() map[string]*events.Rule { + results := map[string]*events.Rule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppStreamUser: + case *events.Rule: results[name] = resource } } return results } -// GetAWSAppStreamUserWithName retrieves all AWSAppStreamUser items from an AWS CloudFormation template +// GetEventsRuleWithName retrieves all events.Rule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppStreamUserWithName(name string) (*resources.AWSAppStreamUser, error) { +func (t *Template) GetEventsRuleWithName(name string) (*events.Rule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppStreamUser: + case *events.Rule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppStreamUser not found", name) + return nil, fmt.Errorf("resource %q of type events.Rule not found", name) } -// GetAllAWSAppSyncApiKeyResources retrieves all AWSAppSyncApiKey items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppSyncApiKeyResources() map[string]*resources.AWSAppSyncApiKey { - results := map[string]*resources.AWSAppSyncApiKey{} +// GetAllGreengrassCoreDefinitionVersionResources retrieves all greengrass.CoreDefinitionVersion items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassCoreDefinitionVersionResources() map[string]*greengrass.CoreDefinitionVersion { + results := map[string]*greengrass.CoreDefinitionVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppSyncApiKey: + case *greengrass.CoreDefinitionVersion: results[name] = resource } } return results } -// GetAWSAppSyncApiKeyWithName retrieves all AWSAppSyncApiKey items from an AWS CloudFormation template +// GetGreengrassCoreDefinitionVersionWithName retrieves all greengrass.CoreDefinitionVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppSyncApiKeyWithName(name string) (*resources.AWSAppSyncApiKey, error) { +func (t *Template) GetGreengrassCoreDefinitionVersionWithName(name string) (*greengrass.CoreDefinitionVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppSyncApiKey: + case *greengrass.CoreDefinitionVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppSyncApiKey not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.CoreDefinitionVersion not found", name) } -// GetAllAWSAppSyncDataSourceResources retrieves all AWSAppSyncDataSource items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppSyncDataSourceResources() map[string]*resources.AWSAppSyncDataSource { - results := map[string]*resources.AWSAppSyncDataSource{} +// GetAllWAFRegionalGeoMatchSetResources retrieves all wafregional.GeoMatchSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalGeoMatchSetResources() map[string]*wafregional.GeoMatchSet { + results := map[string]*wafregional.GeoMatchSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppSyncDataSource: + case *wafregional.GeoMatchSet: results[name] = resource } } return results } -// GetAWSAppSyncDataSourceWithName retrieves all AWSAppSyncDataSource items from an AWS CloudFormation template +// GetWAFRegionalGeoMatchSetWithName retrieves all wafregional.GeoMatchSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppSyncDataSourceWithName(name string) (*resources.AWSAppSyncDataSource, error) { +func (t *Template) GetWAFRegionalGeoMatchSetWithName(name string) (*wafregional.GeoMatchSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppSyncDataSource: + case *wafregional.GeoMatchSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppSyncDataSource not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.GeoMatchSet not found", name) } -// GetAllAWSAppSyncFunctionConfigurationResources retrieves all AWSAppSyncFunctionConfiguration items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppSyncFunctionConfigurationResources() map[string]*resources.AWSAppSyncFunctionConfiguration { - results := map[string]*resources.AWSAppSyncFunctionConfiguration{} +// GetAllCertificateManagerCertificateResources retrieves all certificatemanager.Certificate items from an AWS CloudFormation template +func (t *Template) GetAllCertificateManagerCertificateResources() map[string]*certificatemanager.Certificate { + results := map[string]*certificatemanager.Certificate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppSyncFunctionConfiguration: + case *certificatemanager.Certificate: results[name] = resource } } return results } -// GetAWSAppSyncFunctionConfigurationWithName retrieves all AWSAppSyncFunctionConfiguration items from an AWS CloudFormation template +// GetCertificateManagerCertificateWithName retrieves all certificatemanager.Certificate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppSyncFunctionConfigurationWithName(name string) (*resources.AWSAppSyncFunctionConfiguration, error) { +func (t *Template) GetCertificateManagerCertificateWithName(name string) (*certificatemanager.Certificate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppSyncFunctionConfiguration: + case *certificatemanager.Certificate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppSyncFunctionConfiguration not found", name) + return nil, fmt.Errorf("resource %q of type certificatemanager.Certificate not found", name) } -// GetAllAWSAppSyncGraphQLApiResources retrieves all AWSAppSyncGraphQLApi items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppSyncGraphQLApiResources() map[string]*resources.AWSAppSyncGraphQLApi { - results := map[string]*resources.AWSAppSyncGraphQLApi{} +// GetAllStepFunctionsStateMachineResources retrieves all stepfunctions.StateMachine items from an AWS CloudFormation template +func (t *Template) GetAllStepFunctionsStateMachineResources() map[string]*stepfunctions.StateMachine { + results := map[string]*stepfunctions.StateMachine{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppSyncGraphQLApi: + case *stepfunctions.StateMachine: results[name] = resource } } return results } -// GetAWSAppSyncGraphQLApiWithName retrieves all AWSAppSyncGraphQLApi items from an AWS CloudFormation template +// GetStepFunctionsStateMachineWithName retrieves all stepfunctions.StateMachine items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppSyncGraphQLApiWithName(name string) (*resources.AWSAppSyncGraphQLApi, error) { +func (t *Template) GetStepFunctionsStateMachineWithName(name string) (*stepfunctions.StateMachine, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppSyncGraphQLApi: + case *stepfunctions.StateMachine: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppSyncGraphQLApi not found", name) + return nil, fmt.Errorf("resource %q of type stepfunctions.StateMachine not found", name) } -// GetAllAWSAppSyncGraphQLSchemaResources retrieves all AWSAppSyncGraphQLSchema items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppSyncGraphQLSchemaResources() map[string]*resources.AWSAppSyncGraphQLSchema { - results := map[string]*resources.AWSAppSyncGraphQLSchema{} +// GetAllEC2TransitGatewayAttachmentResources retrieves all ec2.TransitGatewayAttachment items from an AWS CloudFormation template +func (t *Template) GetAllEC2TransitGatewayAttachmentResources() map[string]*ec2.TransitGatewayAttachment { + results := map[string]*ec2.TransitGatewayAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppSyncGraphQLSchema: + case *ec2.TransitGatewayAttachment: results[name] = resource } } return results } -// GetAWSAppSyncGraphQLSchemaWithName retrieves all AWSAppSyncGraphQLSchema items from an AWS CloudFormation template +// GetEC2TransitGatewayAttachmentWithName retrieves all ec2.TransitGatewayAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppSyncGraphQLSchemaWithName(name string) (*resources.AWSAppSyncGraphQLSchema, error) { +func (t *Template) GetEC2TransitGatewayAttachmentWithName(name string) (*ec2.TransitGatewayAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppSyncGraphQLSchema: + case *ec2.TransitGatewayAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppSyncGraphQLSchema not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TransitGatewayAttachment not found", name) } -// GetAllAWSAppSyncResolverResources retrieves all AWSAppSyncResolver items from an AWS CloudFormation template -func (t *Template) GetAllAWSAppSyncResolverResources() map[string]*resources.AWSAppSyncResolver { - results := map[string]*resources.AWSAppSyncResolver{} +// GetAllEC2SubnetResources retrieves all ec2.Subnet items from an AWS CloudFormation template +func (t *Template) GetAllEC2SubnetResources() map[string]*ec2.Subnet { + results := map[string]*ec2.Subnet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAppSyncResolver: + case *ec2.Subnet: results[name] = resource } } return results } -// GetAWSAppSyncResolverWithName retrieves all AWSAppSyncResolver items from an AWS CloudFormation template +// GetEC2SubnetWithName retrieves all ec2.Subnet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAppSyncResolverWithName(name string) (*resources.AWSAppSyncResolver, error) { +func (t *Template) GetEC2SubnetWithName(name string) (*ec2.Subnet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAppSyncResolver: + case *ec2.Subnet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAppSyncResolver not found", name) + return nil, fmt.Errorf("resource %q of type ec2.Subnet not found", name) } -// GetAllAWSApplicationAutoScalingScalableTargetResources retrieves all AWSApplicationAutoScalingScalableTarget items from an AWS CloudFormation template -func (t *Template) GetAllAWSApplicationAutoScalingScalableTargetResources() map[string]*resources.AWSApplicationAutoScalingScalableTarget { - results := map[string]*resources.AWSApplicationAutoScalingScalableTarget{} +// GetAllGlueDevEndpointResources retrieves all glue.DevEndpoint items from an AWS CloudFormation template +func (t *Template) GetAllGlueDevEndpointResources() map[string]*glue.DevEndpoint { + results := map[string]*glue.DevEndpoint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApplicationAutoScalingScalableTarget: + case *glue.DevEndpoint: results[name] = resource } } return results } -// GetAWSApplicationAutoScalingScalableTargetWithName retrieves all AWSApplicationAutoScalingScalableTarget items from an AWS CloudFormation template +// GetGlueDevEndpointWithName retrieves all glue.DevEndpoint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApplicationAutoScalingScalableTargetWithName(name string) (*resources.AWSApplicationAutoScalingScalableTarget, error) { +func (t *Template) GetGlueDevEndpointWithName(name string) (*glue.DevEndpoint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApplicationAutoScalingScalableTarget: + case *glue.DevEndpoint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApplicationAutoScalingScalableTarget not found", name) + return nil, fmt.Errorf("resource %q of type glue.DevEndpoint not found", name) } -// GetAllAWSApplicationAutoScalingScalingPolicyResources retrieves all AWSApplicationAutoScalingScalingPolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSApplicationAutoScalingScalingPolicyResources() map[string]*resources.AWSApplicationAutoScalingScalingPolicy { - results := map[string]*resources.AWSApplicationAutoScalingScalingPolicy{} +// GetAllEC2ClientVpnRouteResources retrieves all ec2.ClientVpnRoute items from an AWS CloudFormation template +func (t *Template) GetAllEC2ClientVpnRouteResources() map[string]*ec2.ClientVpnRoute { + results := map[string]*ec2.ClientVpnRoute{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSApplicationAutoScalingScalingPolicy: + case *ec2.ClientVpnRoute: results[name] = resource } } return results } -// GetAWSApplicationAutoScalingScalingPolicyWithName retrieves all AWSApplicationAutoScalingScalingPolicy items from an AWS CloudFormation template +// GetEC2ClientVpnRouteWithName retrieves all ec2.ClientVpnRoute items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSApplicationAutoScalingScalingPolicyWithName(name string) (*resources.AWSApplicationAutoScalingScalingPolicy, error) { +func (t *Template) GetEC2ClientVpnRouteWithName(name string) (*ec2.ClientVpnRoute, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSApplicationAutoScalingScalingPolicy: + case *ec2.ClientVpnRoute: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSApplicationAutoScalingScalingPolicy not found", name) + return nil, fmt.Errorf("resource %q of type ec2.ClientVpnRoute not found", name) } -// GetAllAWSAthenaNamedQueryResources retrieves all AWSAthenaNamedQuery items from an AWS CloudFormation template -func (t *Template) GetAllAWSAthenaNamedQueryResources() map[string]*resources.AWSAthenaNamedQuery { - results := map[string]*resources.AWSAthenaNamedQuery{} +// GetAllApiGatewayAccountResources retrieves all apigateway.Account items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayAccountResources() map[string]*apigateway.Account { + results := map[string]*apigateway.Account{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAthenaNamedQuery: + case *apigateway.Account: results[name] = resource } } return results } -// GetAWSAthenaNamedQueryWithName retrieves all AWSAthenaNamedQuery items from an AWS CloudFormation template +// GetApiGatewayAccountWithName retrieves all apigateway.Account items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAthenaNamedQueryWithName(name string) (*resources.AWSAthenaNamedQuery, error) { +func (t *Template) GetApiGatewayAccountWithName(name string) (*apigateway.Account, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAthenaNamedQuery: + case *apigateway.Account: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAthenaNamedQuery not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.Account not found", name) } -// GetAllAWSAutoScalingAutoScalingGroupResources retrieves all AWSAutoScalingAutoScalingGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSAutoScalingAutoScalingGroupResources() map[string]*resources.AWSAutoScalingAutoScalingGroup { - results := map[string]*resources.AWSAutoScalingAutoScalingGroup{} +// GetAllLambdaLayerVersionPermissionResources retrieves all lambda.LayerVersionPermission items from an AWS CloudFormation template +func (t *Template) GetAllLambdaLayerVersionPermissionResources() map[string]*lambda.LayerVersionPermission { + results := map[string]*lambda.LayerVersionPermission{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAutoScalingAutoScalingGroup: + case *lambda.LayerVersionPermission: results[name] = resource } } return results } -// GetAWSAutoScalingAutoScalingGroupWithName retrieves all AWSAutoScalingAutoScalingGroup items from an AWS CloudFormation template +// GetLambdaLayerVersionPermissionWithName retrieves all lambda.LayerVersionPermission items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAutoScalingAutoScalingGroupWithName(name string) (*resources.AWSAutoScalingAutoScalingGroup, error) { +func (t *Template) GetLambdaLayerVersionPermissionWithName(name string) (*lambda.LayerVersionPermission, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAutoScalingAutoScalingGroup: + case *lambda.LayerVersionPermission: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAutoScalingAutoScalingGroup not found", name) + return nil, fmt.Errorf("resource %q of type lambda.LayerVersionPermission not found", name) } -// GetAllAWSAutoScalingLaunchConfigurationResources retrieves all AWSAutoScalingLaunchConfiguration items from an AWS CloudFormation template -func (t *Template) GetAllAWSAutoScalingLaunchConfigurationResources() map[string]*resources.AWSAutoScalingLaunchConfiguration { - results := map[string]*resources.AWSAutoScalingLaunchConfiguration{} +// GetAllSageMakerCodeRepositoryResources retrieves all sagemaker.CodeRepository items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerCodeRepositoryResources() map[string]*sagemaker.CodeRepository { + results := map[string]*sagemaker.CodeRepository{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAutoScalingLaunchConfiguration: + case *sagemaker.CodeRepository: results[name] = resource } } return results } -// GetAWSAutoScalingLaunchConfigurationWithName retrieves all AWSAutoScalingLaunchConfiguration items from an AWS CloudFormation template +// GetSageMakerCodeRepositoryWithName retrieves all sagemaker.CodeRepository items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAutoScalingLaunchConfigurationWithName(name string) (*resources.AWSAutoScalingLaunchConfiguration, error) { +func (t *Template) GetSageMakerCodeRepositoryWithName(name string) (*sagemaker.CodeRepository, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAutoScalingLaunchConfiguration: + case *sagemaker.CodeRepository: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAutoScalingLaunchConfiguration not found", name) + return nil, fmt.Errorf("resource %q of type sagemaker.CodeRepository not found", name) } -// GetAllAWSAutoScalingLifecycleHookResources retrieves all AWSAutoScalingLifecycleHook items from an AWS CloudFormation template -func (t *Template) GetAllAWSAutoScalingLifecycleHookResources() map[string]*resources.AWSAutoScalingLifecycleHook { - results := map[string]*resources.AWSAutoScalingLifecycleHook{} +// GetAllTransferServerResources retrieves all transfer.Server items from an AWS CloudFormation template +func (t *Template) GetAllTransferServerResources() map[string]*transfer.Server { + results := map[string]*transfer.Server{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAutoScalingLifecycleHook: + case *transfer.Server: results[name] = resource } } return results } -// GetAWSAutoScalingLifecycleHookWithName retrieves all AWSAutoScalingLifecycleHook items from an AWS CloudFormation template +// GetTransferServerWithName retrieves all transfer.Server items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAutoScalingLifecycleHookWithName(name string) (*resources.AWSAutoScalingLifecycleHook, error) { +func (t *Template) GetTransferServerWithName(name string) (*transfer.Server, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAutoScalingLifecycleHook: + case *transfer.Server: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAutoScalingLifecycleHook not found", name) + return nil, fmt.Errorf("resource %q of type transfer.Server not found", name) } -// GetAllAWSAutoScalingScalingPolicyResources retrieves all AWSAutoScalingScalingPolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSAutoScalingScalingPolicyResources() map[string]*resources.AWSAutoScalingScalingPolicy { - results := map[string]*resources.AWSAutoScalingScalingPolicy{} +// GetAllDMSReplicationTaskResources retrieves all dms.ReplicationTask items from an AWS CloudFormation template +func (t *Template) GetAllDMSReplicationTaskResources() map[string]*dms.ReplicationTask { + results := map[string]*dms.ReplicationTask{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAutoScalingScalingPolicy: + case *dms.ReplicationTask: results[name] = resource } } return results } -// GetAWSAutoScalingScalingPolicyWithName retrieves all AWSAutoScalingScalingPolicy items from an AWS CloudFormation template +// GetDMSReplicationTaskWithName retrieves all dms.ReplicationTask items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAutoScalingScalingPolicyWithName(name string) (*resources.AWSAutoScalingScalingPolicy, error) { +func (t *Template) GetDMSReplicationTaskWithName(name string) (*dms.ReplicationTask, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAutoScalingScalingPolicy: + case *dms.ReplicationTask: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAutoScalingScalingPolicy not found", name) + return nil, fmt.Errorf("resource %q of type dms.ReplicationTask not found", name) } -// GetAllAWSAutoScalingScheduledActionResources retrieves all AWSAutoScalingScheduledAction items from an AWS CloudFormation template -func (t *Template) GetAllAWSAutoScalingScheduledActionResources() map[string]*resources.AWSAutoScalingScheduledAction { - results := map[string]*resources.AWSAutoScalingScheduledAction{} +// GetAllGuardDutyThreatIntelSetResources retrieves all guardduty.ThreatIntelSet items from an AWS CloudFormation template +func (t *Template) GetAllGuardDutyThreatIntelSetResources() map[string]*guardduty.ThreatIntelSet { + results := map[string]*guardduty.ThreatIntelSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAutoScalingScheduledAction: + case *guardduty.ThreatIntelSet: results[name] = resource } } return results } -// GetAWSAutoScalingScheduledActionWithName retrieves all AWSAutoScalingScheduledAction items from an AWS CloudFormation template +// GetGuardDutyThreatIntelSetWithName retrieves all guardduty.ThreatIntelSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAutoScalingScheduledActionWithName(name string) (*resources.AWSAutoScalingScheduledAction, error) { +func (t *Template) GetGuardDutyThreatIntelSetWithName(name string) (*guardduty.ThreatIntelSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAutoScalingScheduledAction: + case *guardduty.ThreatIntelSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAutoScalingScheduledAction not found", name) + return nil, fmt.Errorf("resource %q of type guardduty.ThreatIntelSet not found", name) } -// GetAllAWSAutoScalingPlansScalingPlanResources retrieves all AWSAutoScalingPlansScalingPlan items from an AWS CloudFormation template -func (t *Template) GetAllAWSAutoScalingPlansScalingPlanResources() map[string]*resources.AWSAutoScalingPlansScalingPlan { - results := map[string]*resources.AWSAutoScalingPlansScalingPlan{} +// GetAllDMSEventSubscriptionResources retrieves all dms.EventSubscription items from an AWS CloudFormation template +func (t *Template) GetAllDMSEventSubscriptionResources() map[string]*dms.EventSubscription { + results := map[string]*dms.EventSubscription{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSAutoScalingPlansScalingPlan: + case *dms.EventSubscription: results[name] = resource } } return results } -// GetAWSAutoScalingPlansScalingPlanWithName retrieves all AWSAutoScalingPlansScalingPlan items from an AWS CloudFormation template +// GetDMSEventSubscriptionWithName retrieves all dms.EventSubscription items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSAutoScalingPlansScalingPlanWithName(name string) (*resources.AWSAutoScalingPlansScalingPlan, error) { +func (t *Template) GetDMSEventSubscriptionWithName(name string) (*dms.EventSubscription, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSAutoScalingPlansScalingPlan: + case *dms.EventSubscription: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSAutoScalingPlansScalingPlan not found", name) + return nil, fmt.Errorf("resource %q of type dms.EventSubscription not found", name) } -// GetAllAWSBackupBackupPlanResources retrieves all AWSBackupBackupPlan items from an AWS CloudFormation template -func (t *Template) GetAllAWSBackupBackupPlanResources() map[string]*resources.AWSBackupBackupPlan { - results := map[string]*resources.AWSBackupBackupPlan{} +// GetAllAppStreamUserResources retrieves all appstream.User items from an AWS CloudFormation template +func (t *Template) GetAllAppStreamUserResources() map[string]*appstream.User { + results := map[string]*appstream.User{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSBackupBackupPlan: + case *appstream.User: results[name] = resource } } return results } -// GetAWSBackupBackupPlanWithName retrieves all AWSBackupBackupPlan items from an AWS CloudFormation template +// GetAppStreamUserWithName retrieves all appstream.User items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSBackupBackupPlanWithName(name string) (*resources.AWSBackupBackupPlan, error) { +func (t *Template) GetAppStreamUserWithName(name string) (*appstream.User, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSBackupBackupPlan: + case *appstream.User: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSBackupBackupPlan not found", name) + return nil, fmt.Errorf("resource %q of type appstream.User not found", name) } -// GetAllAWSBackupBackupSelectionResources retrieves all AWSBackupBackupSelection items from an AWS CloudFormation template -func (t *Template) GetAllAWSBackupBackupSelectionResources() map[string]*resources.AWSBackupBackupSelection { - results := map[string]*resources.AWSBackupBackupSelection{} +// GetAllIoTThingsGraphFlowTemplateResources retrieves all iotthingsgraph.FlowTemplate items from an AWS CloudFormation template +func (t *Template) GetAllIoTThingsGraphFlowTemplateResources() map[string]*iotthingsgraph.FlowTemplate { + results := map[string]*iotthingsgraph.FlowTemplate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSBackupBackupSelection: + case *iotthingsgraph.FlowTemplate: results[name] = resource } } return results } -// GetAWSBackupBackupSelectionWithName retrieves all AWSBackupBackupSelection items from an AWS CloudFormation template +// GetIoTThingsGraphFlowTemplateWithName retrieves all iotthingsgraph.FlowTemplate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSBackupBackupSelectionWithName(name string) (*resources.AWSBackupBackupSelection, error) { +func (t *Template) GetIoTThingsGraphFlowTemplateWithName(name string) (*iotthingsgraph.FlowTemplate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSBackupBackupSelection: + case *iotthingsgraph.FlowTemplate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSBackupBackupSelection not found", name) + return nil, fmt.Errorf("resource %q of type iotthingsgraph.FlowTemplate not found", name) } -// GetAllAWSBackupBackupVaultResources retrieves all AWSBackupBackupVault items from an AWS CloudFormation template -func (t *Template) GetAllAWSBackupBackupVaultResources() map[string]*resources.AWSBackupBackupVault { - results := map[string]*resources.AWSBackupBackupVault{} +// GetAllEC2TransitGatewayRouteTablePropagationResources retrieves all ec2.TransitGatewayRouteTablePropagation items from an AWS CloudFormation template +func (t *Template) GetAllEC2TransitGatewayRouteTablePropagationResources() map[string]*ec2.TransitGatewayRouteTablePropagation { + results := map[string]*ec2.TransitGatewayRouteTablePropagation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSBackupBackupVault: + case *ec2.TransitGatewayRouteTablePropagation: results[name] = resource } } return results } -// GetAWSBackupBackupVaultWithName retrieves all AWSBackupBackupVault items from an AWS CloudFormation template +// GetEC2TransitGatewayRouteTablePropagationWithName retrieves all ec2.TransitGatewayRouteTablePropagation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSBackupBackupVaultWithName(name string) (*resources.AWSBackupBackupVault, error) { +func (t *Template) GetEC2TransitGatewayRouteTablePropagationWithName(name string) (*ec2.TransitGatewayRouteTablePropagation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSBackupBackupVault: + case *ec2.TransitGatewayRouteTablePropagation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSBackupBackupVault not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TransitGatewayRouteTablePropagation not found", name) } -// GetAllAWSBatchComputeEnvironmentResources retrieves all AWSBatchComputeEnvironment items from an AWS CloudFormation template -func (t *Template) GetAllAWSBatchComputeEnvironmentResources() map[string]*resources.AWSBatchComputeEnvironment { - results := map[string]*resources.AWSBatchComputeEnvironment{} +// GetAllServiceCatalogCloudFormationProvisionedProductResources retrieves all servicecatalog.CloudFormationProvisionedProduct items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogCloudFormationProvisionedProductResources() map[string]*servicecatalog.CloudFormationProvisionedProduct { + results := map[string]*servicecatalog.CloudFormationProvisionedProduct{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSBatchComputeEnvironment: + case *servicecatalog.CloudFormationProvisionedProduct: results[name] = resource } } return results } -// GetAWSBatchComputeEnvironmentWithName retrieves all AWSBatchComputeEnvironment items from an AWS CloudFormation template +// GetServiceCatalogCloudFormationProvisionedProductWithName retrieves all servicecatalog.CloudFormationProvisionedProduct items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSBatchComputeEnvironmentWithName(name string) (*resources.AWSBatchComputeEnvironment, error) { +func (t *Template) GetServiceCatalogCloudFormationProvisionedProductWithName(name string) (*servicecatalog.CloudFormationProvisionedProduct, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSBatchComputeEnvironment: + case *servicecatalog.CloudFormationProvisionedProduct: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSBatchComputeEnvironment not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.CloudFormationProvisionedProduct not found", name) } -// GetAllAWSBatchJobDefinitionResources retrieves all AWSBatchJobDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSBatchJobDefinitionResources() map[string]*resources.AWSBatchJobDefinition { - results := map[string]*resources.AWSBatchJobDefinition{} +// GetAllSNSSubscriptionResources retrieves all sns.Subscription items from an AWS CloudFormation template +func (t *Template) GetAllSNSSubscriptionResources() map[string]*sns.Subscription { + results := map[string]*sns.Subscription{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSBatchJobDefinition: + case *sns.Subscription: results[name] = resource } } return results } -// GetAWSBatchJobDefinitionWithName retrieves all AWSBatchJobDefinition items from an AWS CloudFormation template +// GetSNSSubscriptionWithName retrieves all sns.Subscription items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSBatchJobDefinitionWithName(name string) (*resources.AWSBatchJobDefinition, error) { +func (t *Template) GetSNSSubscriptionWithName(name string) (*sns.Subscription, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSBatchJobDefinition: + case *sns.Subscription: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSBatchJobDefinition not found", name) + return nil, fmt.Errorf("resource %q of type sns.Subscription not found", name) } -// GetAllAWSBatchJobQueueResources retrieves all AWSBatchJobQueue items from an AWS CloudFormation template -func (t *Template) GetAllAWSBatchJobQueueResources() map[string]*resources.AWSBatchJobQueue { - results := map[string]*resources.AWSBatchJobQueue{} +// GetAllPinpointEventStreamResources retrieves all pinpoint.EventStream items from an AWS CloudFormation template +func (t *Template) GetAllPinpointEventStreamResources() map[string]*pinpoint.EventStream { + results := map[string]*pinpoint.EventStream{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSBatchJobQueue: + case *pinpoint.EventStream: results[name] = resource } } return results } -// GetAWSBatchJobQueueWithName retrieves all AWSBatchJobQueue items from an AWS CloudFormation template +// GetPinpointEventStreamWithName retrieves all pinpoint.EventStream items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSBatchJobQueueWithName(name string) (*resources.AWSBatchJobQueue, error) { +func (t *Template) GetPinpointEventStreamWithName(name string) (*pinpoint.EventStream, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSBatchJobQueue: + case *pinpoint.EventStream: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSBatchJobQueue not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.EventStream not found", name) } -// GetAllAWSBudgetsBudgetResources retrieves all AWSBudgetsBudget items from an AWS CloudFormation template -func (t *Template) GetAllAWSBudgetsBudgetResources() map[string]*resources.AWSBudgetsBudget { - results := map[string]*resources.AWSBudgetsBudget{} +// GetAllEMRClusterResources retrieves all emr.Cluster items from an AWS CloudFormation template +func (t *Template) GetAllEMRClusterResources() map[string]*emr.Cluster { + results := map[string]*emr.Cluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSBudgetsBudget: + case *emr.Cluster: results[name] = resource } } return results } -// GetAWSBudgetsBudgetWithName retrieves all AWSBudgetsBudget items from an AWS CloudFormation template +// GetEMRClusterWithName retrieves all emr.Cluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSBudgetsBudgetWithName(name string) (*resources.AWSBudgetsBudget, error) { +func (t *Template) GetEMRClusterWithName(name string) (*emr.Cluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSBudgetsBudget: + case *emr.Cluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSBudgetsBudget not found", name) + return nil, fmt.Errorf("resource %q of type emr.Cluster not found", name) } -// GetAllAWSCertificateManagerCertificateResources retrieves all AWSCertificateManagerCertificate items from an AWS CloudFormation template -func (t *Template) GetAllAWSCertificateManagerCertificateResources() map[string]*resources.AWSCertificateManagerCertificate { - results := map[string]*resources.AWSCertificateManagerCertificate{} +// GetAllRDSEventSubscriptionResources retrieves all rds.EventSubscription items from an AWS CloudFormation template +func (t *Template) GetAllRDSEventSubscriptionResources() map[string]*rds.EventSubscription { + results := map[string]*rds.EventSubscription{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCertificateManagerCertificate: + case *rds.EventSubscription: results[name] = resource } } return results } -// GetAWSCertificateManagerCertificateWithName retrieves all AWSCertificateManagerCertificate items from an AWS CloudFormation template +// GetRDSEventSubscriptionWithName retrieves all rds.EventSubscription items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCertificateManagerCertificateWithName(name string) (*resources.AWSCertificateManagerCertificate, error) { +func (t *Template) GetRDSEventSubscriptionWithName(name string) (*rds.EventSubscription, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCertificateManagerCertificate: + case *rds.EventSubscription: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCertificateManagerCertificate not found", name) + return nil, fmt.Errorf("resource %q of type rds.EventSubscription not found", name) } -// GetAllAWSCloud9EnvironmentEC2Resources retrieves all AWSCloud9EnvironmentEC2 items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloud9EnvironmentEC2Resources() map[string]*resources.AWSCloud9EnvironmentEC2 { - results := map[string]*resources.AWSCloud9EnvironmentEC2{} +// GetAllApiGatewayVpcLinkResources retrieves all apigateway.VpcLink items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayVpcLinkResources() map[string]*apigateway.VpcLink { + results := map[string]*apigateway.VpcLink{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloud9EnvironmentEC2: + case *apigateway.VpcLink: results[name] = resource } } return results } -// GetAWSCloud9EnvironmentEC2WithName retrieves all AWSCloud9EnvironmentEC2 items from an AWS CloudFormation template +// GetApiGatewayVpcLinkWithName retrieves all apigateway.VpcLink items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloud9EnvironmentEC2WithName(name string) (*resources.AWSCloud9EnvironmentEC2, error) { +func (t *Template) GetApiGatewayVpcLinkWithName(name string) (*apigateway.VpcLink, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloud9EnvironmentEC2: + case *apigateway.VpcLink: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloud9EnvironmentEC2 not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.VpcLink not found", name) } -// GetAllAWSCloudFormationCustomResourceResources retrieves all AWSCloudFormationCustomResource items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudFormationCustomResourceResources() map[string]*resources.AWSCloudFormationCustomResource { - results := map[string]*resources.AWSCloudFormationCustomResource{} +// GetAllRoboMakerRobotResources retrieves all robomaker.Robot items from an AWS CloudFormation template +func (t *Template) GetAllRoboMakerRobotResources() map[string]*robomaker.Robot { + results := map[string]*robomaker.Robot{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudFormationCustomResource: + case *robomaker.Robot: results[name] = resource } } return results } -// GetAWSCloudFormationCustomResourceWithName retrieves all AWSCloudFormationCustomResource items from an AWS CloudFormation template +// GetRoboMakerRobotWithName retrieves all robomaker.Robot items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudFormationCustomResourceWithName(name string) (*resources.AWSCloudFormationCustomResource, error) { +func (t *Template) GetRoboMakerRobotWithName(name string) (*robomaker.Robot, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudFormationCustomResource: + case *robomaker.Robot: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudFormationCustomResource not found", name) + return nil, fmt.Errorf("resource %q of type robomaker.Robot not found", name) } -// GetAllAWSCloudFormationMacroResources retrieves all AWSCloudFormationMacro items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudFormationMacroResources() map[string]*resources.AWSCloudFormationMacro { - results := map[string]*resources.AWSCloudFormationMacro{} +// GetAllEC2TrafficMirrorTargetResources retrieves all ec2.TrafficMirrorTarget items from an AWS CloudFormation template +func (t *Template) GetAllEC2TrafficMirrorTargetResources() map[string]*ec2.TrafficMirrorTarget { + results := map[string]*ec2.TrafficMirrorTarget{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudFormationMacro: + case *ec2.TrafficMirrorTarget: results[name] = resource } } return results } -// GetAWSCloudFormationMacroWithName retrieves all AWSCloudFormationMacro items from an AWS CloudFormation template +// GetEC2TrafficMirrorTargetWithName retrieves all ec2.TrafficMirrorTarget items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudFormationMacroWithName(name string) (*resources.AWSCloudFormationMacro, error) { +func (t *Template) GetEC2TrafficMirrorTargetWithName(name string) (*ec2.TrafficMirrorTarget, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudFormationMacro: + case *ec2.TrafficMirrorTarget: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudFormationMacro not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TrafficMirrorTarget not found", name) } -// GetAllAWSCloudFormationStackResources retrieves all AWSCloudFormationStack items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudFormationStackResources() map[string]*resources.AWSCloudFormationStack { - results := map[string]*resources.AWSCloudFormationStack{} +// GetAllKinesisAnalyticsApplicationOutputResources retrieves all kinesisanalytics.ApplicationOutput items from an AWS CloudFormation template +func (t *Template) GetAllKinesisAnalyticsApplicationOutputResources() map[string]*kinesisanalytics.ApplicationOutput { + results := map[string]*kinesisanalytics.ApplicationOutput{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudFormationStack: + case *kinesisanalytics.ApplicationOutput: results[name] = resource } } return results } -// GetAWSCloudFormationStackWithName retrieves all AWSCloudFormationStack items from an AWS CloudFormation template +// GetKinesisAnalyticsApplicationOutputWithName retrieves all kinesisanalytics.ApplicationOutput items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudFormationStackWithName(name string) (*resources.AWSCloudFormationStack, error) { +func (t *Template) GetKinesisAnalyticsApplicationOutputWithName(name string) (*kinesisanalytics.ApplicationOutput, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudFormationStack: + case *kinesisanalytics.ApplicationOutput: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudFormationStack not found", name) + return nil, fmt.Errorf("resource %q of type kinesisanalytics.ApplicationOutput not found", name) } -// GetAllAWSCloudFormationWaitConditionResources retrieves all AWSCloudFormationWaitCondition items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudFormationWaitConditionResources() map[string]*resources.AWSCloudFormationWaitCondition { - results := map[string]*resources.AWSCloudFormationWaitCondition{} +// GetAllEC2VolumeResources retrieves all ec2.Volume items from an AWS CloudFormation template +func (t *Template) GetAllEC2VolumeResources() map[string]*ec2.Volume { + results := map[string]*ec2.Volume{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudFormationWaitCondition: + case *ec2.Volume: results[name] = resource } } return results } -// GetAWSCloudFormationWaitConditionWithName retrieves all AWSCloudFormationWaitCondition items from an AWS CloudFormation template +// GetEC2VolumeWithName retrieves all ec2.Volume items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudFormationWaitConditionWithName(name string) (*resources.AWSCloudFormationWaitCondition, error) { +func (t *Template) GetEC2VolumeWithName(name string) (*ec2.Volume, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudFormationWaitCondition: + case *ec2.Volume: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudFormationWaitCondition not found", name) + return nil, fmt.Errorf("resource %q of type ec2.Volume not found", name) } -// GetAllAWSCloudFormationWaitConditionHandleResources retrieves all AWSCloudFormationWaitConditionHandle items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudFormationWaitConditionHandleResources() map[string]*resources.AWSCloudFormationWaitConditionHandle { - results := map[string]*resources.AWSCloudFormationWaitConditionHandle{} +// GetAllSecretsManagerResourcePolicyResources retrieves all secretsmanager.ResourcePolicy items from an AWS CloudFormation template +func (t *Template) GetAllSecretsManagerResourcePolicyResources() map[string]*secretsmanager.ResourcePolicy { + results := map[string]*secretsmanager.ResourcePolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudFormationWaitConditionHandle: + case *secretsmanager.ResourcePolicy: results[name] = resource } } return results } -// GetAWSCloudFormationWaitConditionHandleWithName retrieves all AWSCloudFormationWaitConditionHandle items from an AWS CloudFormation template +// GetSecretsManagerResourcePolicyWithName retrieves all secretsmanager.ResourcePolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudFormationWaitConditionHandleWithName(name string) (*resources.AWSCloudFormationWaitConditionHandle, error) { +func (t *Template) GetSecretsManagerResourcePolicyWithName(name string) (*secretsmanager.ResourcePolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudFormationWaitConditionHandle: + case *secretsmanager.ResourcePolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudFormationWaitConditionHandle not found", name) + return nil, fmt.Errorf("resource %q of type secretsmanager.ResourcePolicy not found", name) } -// GetAllAWSCloudFrontCloudFrontOriginAccessIdentityResources retrieves all AWSCloudFrontCloudFrontOriginAccessIdentity items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudFrontCloudFrontOriginAccessIdentityResources() map[string]*resources.AWSCloudFrontCloudFrontOriginAccessIdentity { - results := map[string]*resources.AWSCloudFrontCloudFrontOriginAccessIdentity{} +// GetAllCodePipelineCustomActionTypeResources retrieves all codepipeline.CustomActionType items from an AWS CloudFormation template +func (t *Template) GetAllCodePipelineCustomActionTypeResources() map[string]*codepipeline.CustomActionType { + results := map[string]*codepipeline.CustomActionType{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudFrontCloudFrontOriginAccessIdentity: + case *codepipeline.CustomActionType: results[name] = resource } } return results } -// GetAWSCloudFrontCloudFrontOriginAccessIdentityWithName retrieves all AWSCloudFrontCloudFrontOriginAccessIdentity items from an AWS CloudFormation template +// GetCodePipelineCustomActionTypeWithName retrieves all codepipeline.CustomActionType items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudFrontCloudFrontOriginAccessIdentityWithName(name string) (*resources.AWSCloudFrontCloudFrontOriginAccessIdentity, error) { +func (t *Template) GetCodePipelineCustomActionTypeWithName(name string) (*codepipeline.CustomActionType, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudFrontCloudFrontOriginAccessIdentity: + case *codepipeline.CustomActionType: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudFrontCloudFrontOriginAccessIdentity not found", name) + return nil, fmt.Errorf("resource %q of type codepipeline.CustomActionType not found", name) } -// GetAllAWSCloudFrontDistributionResources retrieves all AWSCloudFrontDistribution items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudFrontDistributionResources() map[string]*resources.AWSCloudFrontDistribution { - results := map[string]*resources.AWSCloudFrontDistribution{} +// GetAllApiGatewayRestApiResources retrieves all apigateway.RestApi items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayRestApiResources() map[string]*apigateway.RestApi { + results := map[string]*apigateway.RestApi{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudFrontDistribution: + case *apigateway.RestApi: results[name] = resource } } return results } -// GetAWSCloudFrontDistributionWithName retrieves all AWSCloudFrontDistribution items from an AWS CloudFormation template +// GetApiGatewayRestApiWithName retrieves all apigateway.RestApi items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudFrontDistributionWithName(name string) (*resources.AWSCloudFrontDistribution, error) { +func (t *Template) GetApiGatewayRestApiWithName(name string) (*apigateway.RestApi, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudFrontDistribution: + case *apigateway.RestApi: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudFrontDistribution not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.RestApi not found", name) } -// GetAllAWSCloudFrontStreamingDistributionResources retrieves all AWSCloudFrontStreamingDistribution items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudFrontStreamingDistributionResources() map[string]*resources.AWSCloudFrontStreamingDistribution { - results := map[string]*resources.AWSCloudFrontStreamingDistribution{} +// GetAllApplicationAutoScalingScalingPolicyResources retrieves all applicationautoscaling.ScalingPolicy items from an AWS CloudFormation template +func (t *Template) GetAllApplicationAutoScalingScalingPolicyResources() map[string]*applicationautoscaling.ScalingPolicy { + results := map[string]*applicationautoscaling.ScalingPolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudFrontStreamingDistribution: + case *applicationautoscaling.ScalingPolicy: results[name] = resource } } return results } -// GetAWSCloudFrontStreamingDistributionWithName retrieves all AWSCloudFrontStreamingDistribution items from an AWS CloudFormation template +// GetApplicationAutoScalingScalingPolicyWithName retrieves all applicationautoscaling.ScalingPolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudFrontStreamingDistributionWithName(name string) (*resources.AWSCloudFrontStreamingDistribution, error) { +func (t *Template) GetApplicationAutoScalingScalingPolicyWithName(name string) (*applicationautoscaling.ScalingPolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudFrontStreamingDistribution: + case *applicationautoscaling.ScalingPolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudFrontStreamingDistribution not found", name) + return nil, fmt.Errorf("resource %q of type applicationautoscaling.ScalingPolicy not found", name) } -// GetAllAWSCloudTrailTrailResources retrieves all AWSCloudTrailTrail items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudTrailTrailResources() map[string]*resources.AWSCloudTrailTrail { - results := map[string]*resources.AWSCloudTrailTrail{} +// GetAllApiGatewayV2ModelResources retrieves all apigatewayv2.Model items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2ModelResources() map[string]*apigatewayv2.Model { + results := map[string]*apigatewayv2.Model{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudTrailTrail: + case *apigatewayv2.Model: results[name] = resource } } return results } -// GetAWSCloudTrailTrailWithName retrieves all AWSCloudTrailTrail items from an AWS CloudFormation template +// GetApiGatewayV2ModelWithName retrieves all apigatewayv2.Model items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudTrailTrailWithName(name string) (*resources.AWSCloudTrailTrail, error) { +func (t *Template) GetApiGatewayV2ModelWithName(name string) (*apigatewayv2.Model, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudTrailTrail: + case *apigatewayv2.Model: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudTrailTrail not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.Model not found", name) } -// GetAllAWSCloudWatchAlarmResources retrieves all AWSCloudWatchAlarm items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudWatchAlarmResources() map[string]*resources.AWSCloudWatchAlarm { - results := map[string]*resources.AWSCloudWatchAlarm{} +// GetAllEC2VPCPeeringConnectionResources retrieves all ec2.VPCPeeringConnection items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCPeeringConnectionResources() map[string]*ec2.VPCPeeringConnection { + results := map[string]*ec2.VPCPeeringConnection{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudWatchAlarm: + case *ec2.VPCPeeringConnection: results[name] = resource } } return results } -// GetAWSCloudWatchAlarmWithName retrieves all AWSCloudWatchAlarm items from an AWS CloudFormation template +// GetEC2VPCPeeringConnectionWithName retrieves all ec2.VPCPeeringConnection items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudWatchAlarmWithName(name string) (*resources.AWSCloudWatchAlarm, error) { +func (t *Template) GetEC2VPCPeeringConnectionWithName(name string) (*ec2.VPCPeeringConnection, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudWatchAlarm: + case *ec2.VPCPeeringConnection: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudWatchAlarm not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPCPeeringConnection not found", name) } -// GetAllAWSCloudWatchAnomalyDetectorResources retrieves all AWSCloudWatchAnomalyDetector items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudWatchAnomalyDetectorResources() map[string]*resources.AWSCloudWatchAnomalyDetector { - results := map[string]*resources.AWSCloudWatchAnomalyDetector{} +// GetAllEC2CustomerGatewayResources retrieves all ec2.CustomerGateway items from an AWS CloudFormation template +func (t *Template) GetAllEC2CustomerGatewayResources() map[string]*ec2.CustomerGateway { + results := map[string]*ec2.CustomerGateway{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudWatchAnomalyDetector: + case *ec2.CustomerGateway: results[name] = resource } } return results } -// GetAWSCloudWatchAnomalyDetectorWithName retrieves all AWSCloudWatchAnomalyDetector items from an AWS CloudFormation template +// GetEC2CustomerGatewayWithName retrieves all ec2.CustomerGateway items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudWatchAnomalyDetectorWithName(name string) (*resources.AWSCloudWatchAnomalyDetector, error) { +func (t *Template) GetEC2CustomerGatewayWithName(name string) (*ec2.CustomerGateway, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudWatchAnomalyDetector: + case *ec2.CustomerGateway: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudWatchAnomalyDetector not found", name) + return nil, fmt.Errorf("resource %q of type ec2.CustomerGateway not found", name) } -// GetAllAWSCloudWatchDashboardResources retrieves all AWSCloudWatchDashboard items from an AWS CloudFormation template -func (t *Template) GetAllAWSCloudWatchDashboardResources() map[string]*resources.AWSCloudWatchDashboard { - results := map[string]*resources.AWSCloudWatchDashboard{} +// GetAllServiceDiscoveryPrivateDnsNamespaceResources retrieves all servicediscovery.PrivateDnsNamespace items from an AWS CloudFormation template +func (t *Template) GetAllServiceDiscoveryPrivateDnsNamespaceResources() map[string]*servicediscovery.PrivateDnsNamespace { + results := map[string]*servicediscovery.PrivateDnsNamespace{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCloudWatchDashboard: + case *servicediscovery.PrivateDnsNamespace: results[name] = resource } } return results } -// GetAWSCloudWatchDashboardWithName retrieves all AWSCloudWatchDashboard items from an AWS CloudFormation template +// GetServiceDiscoveryPrivateDnsNamespaceWithName retrieves all servicediscovery.PrivateDnsNamespace items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCloudWatchDashboardWithName(name string) (*resources.AWSCloudWatchDashboard, error) { +func (t *Template) GetServiceDiscoveryPrivateDnsNamespaceWithName(name string) (*servicediscovery.PrivateDnsNamespace, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCloudWatchDashboard: + case *servicediscovery.PrivateDnsNamespace: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCloudWatchDashboard not found", name) + return nil, fmt.Errorf("resource %q of type servicediscovery.PrivateDnsNamespace not found", name) } -// GetAllAWSCodeBuildProjectResources retrieves all AWSCodeBuildProject items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodeBuildProjectResources() map[string]*resources.AWSCodeBuildProject { - results := map[string]*resources.AWSCodeBuildProject{} +// GetAllGameLiftAliasResources retrieves all gamelift.Alias items from an AWS CloudFormation template +func (t *Template) GetAllGameLiftAliasResources() map[string]*gamelift.Alias { + results := map[string]*gamelift.Alias{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodeBuildProject: + case *gamelift.Alias: results[name] = resource } } return results } -// GetAWSCodeBuildProjectWithName retrieves all AWSCodeBuildProject items from an AWS CloudFormation template +// GetGameLiftAliasWithName retrieves all gamelift.Alias items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodeBuildProjectWithName(name string) (*resources.AWSCodeBuildProject, error) { +func (t *Template) GetGameLiftAliasWithName(name string) (*gamelift.Alias, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodeBuildProject: + case *gamelift.Alias: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodeBuildProject not found", name) + return nil, fmt.Errorf("resource %q of type gamelift.Alias not found", name) } -// GetAllAWSCodeBuildSourceCredentialResources retrieves all AWSCodeBuildSourceCredential items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodeBuildSourceCredentialResources() map[string]*resources.AWSCodeBuildSourceCredential { - results := map[string]*resources.AWSCodeBuildSourceCredential{} +// GetAllGluePartitionResources retrieves all glue.Partition items from an AWS CloudFormation template +func (t *Template) GetAllGluePartitionResources() map[string]*glue.Partition { + results := map[string]*glue.Partition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodeBuildSourceCredential: + case *glue.Partition: results[name] = resource } } return results } -// GetAWSCodeBuildSourceCredentialWithName retrieves all AWSCodeBuildSourceCredential items from an AWS CloudFormation template +// GetGluePartitionWithName retrieves all glue.Partition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodeBuildSourceCredentialWithName(name string) (*resources.AWSCodeBuildSourceCredential, error) { +func (t *Template) GetGluePartitionWithName(name string) (*glue.Partition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodeBuildSourceCredential: + case *glue.Partition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodeBuildSourceCredential not found", name) + return nil, fmt.Errorf("resource %q of type glue.Partition not found", name) } -// GetAllAWSCodeCommitRepositoryResources retrieves all AWSCodeCommitRepository items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodeCommitRepositoryResources() map[string]*resources.AWSCodeCommitRepository { - results := map[string]*resources.AWSCodeCommitRepository{} +// GetAllCloudFormationMacroResources retrieves all cloudformation.Macro items from an AWS CloudFormation template +func (t *Template) GetAllCloudFormationMacroResources() map[string]*cloudformation.Macro { + results := map[string]*cloudformation.Macro{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodeCommitRepository: + case *cloudformation.Macro: results[name] = resource } } return results } -// GetAWSCodeCommitRepositoryWithName retrieves all AWSCodeCommitRepository items from an AWS CloudFormation template +// GetCloudFormationMacroWithName retrieves all cloudformation.Macro items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodeCommitRepositoryWithName(name string) (*resources.AWSCodeCommitRepository, error) { +func (t *Template) GetCloudFormationMacroWithName(name string) (*cloudformation.Macro, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodeCommitRepository: + case *cloudformation.Macro: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodeCommitRepository not found", name) + return nil, fmt.Errorf("resource %q of type cloudformation.Macro not found", name) } -// GetAllAWSCodeDeployApplicationResources retrieves all AWSCodeDeployApplication items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodeDeployApplicationResources() map[string]*resources.AWSCodeDeployApplication { - results := map[string]*resources.AWSCodeDeployApplication{} +// GetAllEC2TransitGatewayRouteTableAssociationResources retrieves all ec2.TransitGatewayRouteTableAssociation items from an AWS CloudFormation template +func (t *Template) GetAllEC2TransitGatewayRouteTableAssociationResources() map[string]*ec2.TransitGatewayRouteTableAssociation { + results := map[string]*ec2.TransitGatewayRouteTableAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodeDeployApplication: + case *ec2.TransitGatewayRouteTableAssociation: results[name] = resource } } return results } -// GetAWSCodeDeployApplicationWithName retrieves all AWSCodeDeployApplication items from an AWS CloudFormation template +// GetEC2TransitGatewayRouteTableAssociationWithName retrieves all ec2.TransitGatewayRouteTableAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodeDeployApplicationWithName(name string) (*resources.AWSCodeDeployApplication, error) { +func (t *Template) GetEC2TransitGatewayRouteTableAssociationWithName(name string) (*ec2.TransitGatewayRouteTableAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodeDeployApplication: + case *ec2.TransitGatewayRouteTableAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodeDeployApplication not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TransitGatewayRouteTableAssociation not found", name) } -// GetAllAWSCodeDeployDeploymentConfigResources retrieves all AWSCodeDeployDeploymentConfig items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodeDeployDeploymentConfigResources() map[string]*resources.AWSCodeDeployDeploymentConfig { - results := map[string]*resources.AWSCodeDeployDeploymentConfig{} +// GetAllInspectorAssessmentTargetResources retrieves all inspector.AssessmentTarget items from an AWS CloudFormation template +func (t *Template) GetAllInspectorAssessmentTargetResources() map[string]*inspector.AssessmentTarget { + results := map[string]*inspector.AssessmentTarget{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodeDeployDeploymentConfig: + case *inspector.AssessmentTarget: results[name] = resource } } return results } -// GetAWSCodeDeployDeploymentConfigWithName retrieves all AWSCodeDeployDeploymentConfig items from an AWS CloudFormation template +// GetInspectorAssessmentTargetWithName retrieves all inspector.AssessmentTarget items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodeDeployDeploymentConfigWithName(name string) (*resources.AWSCodeDeployDeploymentConfig, error) { +func (t *Template) GetInspectorAssessmentTargetWithName(name string) (*inspector.AssessmentTarget, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodeDeployDeploymentConfig: + case *inspector.AssessmentTarget: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodeDeployDeploymentConfig not found", name) + return nil, fmt.Errorf("resource %q of type inspector.AssessmentTarget not found", name) } -// GetAllAWSCodeDeployDeploymentGroupResources retrieves all AWSCodeDeployDeploymentGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodeDeployDeploymentGroupResources() map[string]*resources.AWSCodeDeployDeploymentGroup { - results := map[string]*resources.AWSCodeDeployDeploymentGroup{} +// GetAllEC2VPCEndpointServiceResources retrieves all ec2.VPCEndpointService items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCEndpointServiceResources() map[string]*ec2.VPCEndpointService { + results := map[string]*ec2.VPCEndpointService{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodeDeployDeploymentGroup: + case *ec2.VPCEndpointService: results[name] = resource } } return results } -// GetAWSCodeDeployDeploymentGroupWithName retrieves all AWSCodeDeployDeploymentGroup items from an AWS CloudFormation template +// GetEC2VPCEndpointServiceWithName retrieves all ec2.VPCEndpointService items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodeDeployDeploymentGroupWithName(name string) (*resources.AWSCodeDeployDeploymentGroup, error) { +func (t *Template) GetEC2VPCEndpointServiceWithName(name string) (*ec2.VPCEndpointService, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodeDeployDeploymentGroup: + case *ec2.VPCEndpointService: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodeDeployDeploymentGroup not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPCEndpointService not found", name) } -// GetAllAWSCodePipelineCustomActionTypeResources retrieves all AWSCodePipelineCustomActionType items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodePipelineCustomActionTypeResources() map[string]*resources.AWSCodePipelineCustomActionType { - results := map[string]*resources.AWSCodePipelineCustomActionType{} +// GetAllEC2VPCEndpointResources retrieves all ec2.VPCEndpoint items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCEndpointResources() map[string]*ec2.VPCEndpoint { + results := map[string]*ec2.VPCEndpoint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodePipelineCustomActionType: + case *ec2.VPCEndpoint: results[name] = resource } } return results } -// GetAWSCodePipelineCustomActionTypeWithName retrieves all AWSCodePipelineCustomActionType items from an AWS CloudFormation template +// GetEC2VPCEndpointWithName retrieves all ec2.VPCEndpoint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodePipelineCustomActionTypeWithName(name string) (*resources.AWSCodePipelineCustomActionType, error) { +func (t *Template) GetEC2VPCEndpointWithName(name string) (*ec2.VPCEndpoint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodePipelineCustomActionType: + case *ec2.VPCEndpoint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodePipelineCustomActionType not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPCEndpoint not found", name) } -// GetAllAWSCodePipelinePipelineResources retrieves all AWSCodePipelinePipeline items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodePipelinePipelineResources() map[string]*resources.AWSCodePipelinePipeline { - results := map[string]*resources.AWSCodePipelinePipeline{} +// GetAllElasticLoadBalancingV2TargetGroupResources retrieves all elasticloadbalancingv2.TargetGroup items from an AWS CloudFormation template +func (t *Template) GetAllElasticLoadBalancingV2TargetGroupResources() map[string]*elasticloadbalancingv2.TargetGroup { + results := map[string]*elasticloadbalancingv2.TargetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodePipelinePipeline: + case *elasticloadbalancingv2.TargetGroup: results[name] = resource } } return results } -// GetAWSCodePipelinePipelineWithName retrieves all AWSCodePipelinePipeline items from an AWS CloudFormation template +// GetElasticLoadBalancingV2TargetGroupWithName retrieves all elasticloadbalancingv2.TargetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodePipelinePipelineWithName(name string) (*resources.AWSCodePipelinePipeline, error) { +func (t *Template) GetElasticLoadBalancingV2TargetGroupWithName(name string) (*elasticloadbalancingv2.TargetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodePipelinePipeline: + case *elasticloadbalancingv2.TargetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodePipelinePipeline not found", name) + return nil, fmt.Errorf("resource %q of type elasticloadbalancingv2.TargetGroup not found", name) } -// GetAllAWSCodePipelineWebhookResources retrieves all AWSCodePipelineWebhook items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodePipelineWebhookResources() map[string]*resources.AWSCodePipelineWebhook { - results := map[string]*resources.AWSCodePipelineWebhook{} +// GetAllEC2VPCCidrBlockResources retrieves all ec2.VPCCidrBlock items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCCidrBlockResources() map[string]*ec2.VPCCidrBlock { + results := map[string]*ec2.VPCCidrBlock{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodePipelineWebhook: + case *ec2.VPCCidrBlock: results[name] = resource } } return results } -// GetAWSCodePipelineWebhookWithName retrieves all AWSCodePipelineWebhook items from an AWS CloudFormation template +// GetEC2VPCCidrBlockWithName retrieves all ec2.VPCCidrBlock items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodePipelineWebhookWithName(name string) (*resources.AWSCodePipelineWebhook, error) { +func (t *Template) GetEC2VPCCidrBlockWithName(name string) (*ec2.VPCCidrBlock, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodePipelineWebhook: + case *ec2.VPCCidrBlock: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodePipelineWebhook not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPCCidrBlock not found", name) } -// GetAllAWSCodeStarGitHubRepositoryResources retrieves all AWSCodeStarGitHubRepository items from an AWS CloudFormation template -func (t *Template) GetAllAWSCodeStarGitHubRepositoryResources() map[string]*resources.AWSCodeStarGitHubRepository { - results := map[string]*resources.AWSCodeStarGitHubRepository{} +// GetAllEC2DHCPOptionsResources retrieves all ec2.DHCPOptions items from an AWS CloudFormation template +func (t *Template) GetAllEC2DHCPOptionsResources() map[string]*ec2.DHCPOptions { + results := map[string]*ec2.DHCPOptions{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCodeStarGitHubRepository: + case *ec2.DHCPOptions: results[name] = resource } } return results } -// GetAWSCodeStarGitHubRepositoryWithName retrieves all AWSCodeStarGitHubRepository items from an AWS CloudFormation template +// GetEC2DHCPOptionsWithName retrieves all ec2.DHCPOptions items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCodeStarGitHubRepositoryWithName(name string) (*resources.AWSCodeStarGitHubRepository, error) { +func (t *Template) GetEC2DHCPOptionsWithName(name string) (*ec2.DHCPOptions, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCodeStarGitHubRepository: + case *ec2.DHCPOptions: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCodeStarGitHubRepository not found", name) + return nil, fmt.Errorf("resource %q of type ec2.DHCPOptions not found", name) } -// GetAllAWSCognitoIdentityPoolResources retrieves all AWSCognitoIdentityPool items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoIdentityPoolResources() map[string]*resources.AWSCognitoIdentityPool { - results := map[string]*resources.AWSCognitoIdentityPool{} +// GetAllEC2EgressOnlyInternetGatewayResources retrieves all ec2.EgressOnlyInternetGateway items from an AWS CloudFormation template +func (t *Template) GetAllEC2EgressOnlyInternetGatewayResources() map[string]*ec2.EgressOnlyInternetGateway { + results := map[string]*ec2.EgressOnlyInternetGateway{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoIdentityPool: + case *ec2.EgressOnlyInternetGateway: results[name] = resource } } return results } -// GetAWSCognitoIdentityPoolWithName retrieves all AWSCognitoIdentityPool items from an AWS CloudFormation template +// GetEC2EgressOnlyInternetGatewayWithName retrieves all ec2.EgressOnlyInternetGateway items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoIdentityPoolWithName(name string) (*resources.AWSCognitoIdentityPool, error) { +func (t *Template) GetEC2EgressOnlyInternetGatewayWithName(name string) (*ec2.EgressOnlyInternetGateway, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoIdentityPool: + case *ec2.EgressOnlyInternetGateway: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoIdentityPool not found", name) + return nil, fmt.Errorf("resource %q of type ec2.EgressOnlyInternetGateway not found", name) } -// GetAllAWSCognitoIdentityPoolRoleAttachmentResources retrieves all AWSCognitoIdentityPoolRoleAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoIdentityPoolRoleAttachmentResources() map[string]*resources.AWSCognitoIdentityPoolRoleAttachment { - results := map[string]*resources.AWSCognitoIdentityPoolRoleAttachment{} +// GetAllAppSyncDataSourceResources retrieves all appsync.DataSource items from an AWS CloudFormation template +func (t *Template) GetAllAppSyncDataSourceResources() map[string]*appsync.DataSource { + results := map[string]*appsync.DataSource{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoIdentityPoolRoleAttachment: + case *appsync.DataSource: results[name] = resource } } return results } -// GetAWSCognitoIdentityPoolRoleAttachmentWithName retrieves all AWSCognitoIdentityPoolRoleAttachment items from an AWS CloudFormation template +// GetAppSyncDataSourceWithName retrieves all appsync.DataSource items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoIdentityPoolRoleAttachmentWithName(name string) (*resources.AWSCognitoIdentityPoolRoleAttachment, error) { +func (t *Template) GetAppSyncDataSourceWithName(name string) (*appsync.DataSource, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoIdentityPoolRoleAttachment: + case *appsync.DataSource: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoIdentityPoolRoleAttachment not found", name) + return nil, fmt.Errorf("resource %q of type appsync.DataSource not found", name) } -// GetAllAWSCognitoUserPoolResources retrieves all AWSCognitoUserPool items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolResources() map[string]*resources.AWSCognitoUserPool { - results := map[string]*resources.AWSCognitoUserPool{} +// GetAllDMSCertificateResources retrieves all dms.Certificate items from an AWS CloudFormation template +func (t *Template) GetAllDMSCertificateResources() map[string]*dms.Certificate { + results := map[string]*dms.Certificate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPool: + case *dms.Certificate: results[name] = resource } } return results } -// GetAWSCognitoUserPoolWithName retrieves all AWSCognitoUserPool items from an AWS CloudFormation template +// GetDMSCertificateWithName retrieves all dms.Certificate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolWithName(name string) (*resources.AWSCognitoUserPool, error) { +func (t *Template) GetDMSCertificateWithName(name string) (*dms.Certificate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPool: + case *dms.Certificate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPool not found", name) + return nil, fmt.Errorf("resource %q of type dms.Certificate not found", name) } -// GetAllAWSCognitoUserPoolClientResources retrieves all AWSCognitoUserPoolClient items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolClientResources() map[string]*resources.AWSCognitoUserPoolClient { - results := map[string]*resources.AWSCognitoUserPoolClient{} +// GetAllEC2ClientVpnTargetNetworkAssociationResources retrieves all ec2.ClientVpnTargetNetworkAssociation items from an AWS CloudFormation template +func (t *Template) GetAllEC2ClientVpnTargetNetworkAssociationResources() map[string]*ec2.ClientVpnTargetNetworkAssociation { + results := map[string]*ec2.ClientVpnTargetNetworkAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolClient: + case *ec2.ClientVpnTargetNetworkAssociation: results[name] = resource } } return results } -// GetAWSCognitoUserPoolClientWithName retrieves all AWSCognitoUserPoolClient items from an AWS CloudFormation template +// GetEC2ClientVpnTargetNetworkAssociationWithName retrieves all ec2.ClientVpnTargetNetworkAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolClientWithName(name string) (*resources.AWSCognitoUserPoolClient, error) { +func (t *Template) GetEC2ClientVpnTargetNetworkAssociationWithName(name string) (*ec2.ClientVpnTargetNetworkAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolClient: + case *ec2.ClientVpnTargetNetworkAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolClient not found", name) + return nil, fmt.Errorf("resource %q of type ec2.ClientVpnTargetNetworkAssociation not found", name) } -// GetAllAWSCognitoUserPoolDomainResources retrieves all AWSCognitoUserPoolDomain items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolDomainResources() map[string]*resources.AWSCognitoUserPoolDomain { - results := map[string]*resources.AWSCognitoUserPoolDomain{} +// GetAllLambdaLayerVersionResources retrieves all lambda.LayerVersion items from an AWS CloudFormation template +func (t *Template) GetAllLambdaLayerVersionResources() map[string]*lambda.LayerVersion { + results := map[string]*lambda.LayerVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolDomain: + case *lambda.LayerVersion: results[name] = resource } } return results } -// GetAWSCognitoUserPoolDomainWithName retrieves all AWSCognitoUserPoolDomain items from an AWS CloudFormation template +// GetLambdaLayerVersionWithName retrieves all lambda.LayerVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolDomainWithName(name string) (*resources.AWSCognitoUserPoolDomain, error) { +func (t *Template) GetLambdaLayerVersionWithName(name string) (*lambda.LayerVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolDomain: + case *lambda.LayerVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolDomain not found", name) + return nil, fmt.Errorf("resource %q of type lambda.LayerVersion not found", name) } -// GetAllAWSCognitoUserPoolGroupResources retrieves all AWSCognitoUserPoolGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolGroupResources() map[string]*resources.AWSCognitoUserPoolGroup { - results := map[string]*resources.AWSCognitoUserPoolGroup{} +// GetAllElasticLoadBalancingV2ListenerResources retrieves all elasticloadbalancingv2.Listener items from an AWS CloudFormation template +func (t *Template) GetAllElasticLoadBalancingV2ListenerResources() map[string]*elasticloadbalancingv2.Listener { + results := map[string]*elasticloadbalancingv2.Listener{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolGroup: + case *elasticloadbalancingv2.Listener: results[name] = resource } } return results } -// GetAWSCognitoUserPoolGroupWithName retrieves all AWSCognitoUserPoolGroup items from an AWS CloudFormation template +// GetElasticLoadBalancingV2ListenerWithName retrieves all elasticloadbalancingv2.Listener items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolGroupWithName(name string) (*resources.AWSCognitoUserPoolGroup, error) { +func (t *Template) GetElasticLoadBalancingV2ListenerWithName(name string) (*elasticloadbalancingv2.Listener, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolGroup: + case *elasticloadbalancingv2.Listener: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolGroup not found", name) + return nil, fmt.Errorf("resource %q of type elasticloadbalancingv2.Listener not found", name) } -// GetAllAWSCognitoUserPoolIdentityProviderResources retrieves all AWSCognitoUserPoolIdentityProvider items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolIdentityProviderResources() map[string]*resources.AWSCognitoUserPoolIdentityProvider { - results := map[string]*resources.AWSCognitoUserPoolIdentityProvider{} +// GetAllEC2VPCEndpointServicePermissionsResources retrieves all ec2.VPCEndpointServicePermissions items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCEndpointServicePermissionsResources() map[string]*ec2.VPCEndpointServicePermissions { + results := map[string]*ec2.VPCEndpointServicePermissions{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolIdentityProvider: + case *ec2.VPCEndpointServicePermissions: results[name] = resource } } return results } -// GetAWSCognitoUserPoolIdentityProviderWithName retrieves all AWSCognitoUserPoolIdentityProvider items from an AWS CloudFormation template +// GetEC2VPCEndpointServicePermissionsWithName retrieves all ec2.VPCEndpointServicePermissions items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolIdentityProviderWithName(name string) (*resources.AWSCognitoUserPoolIdentityProvider, error) { +func (t *Template) GetEC2VPCEndpointServicePermissionsWithName(name string) (*ec2.VPCEndpointServicePermissions, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolIdentityProvider: + case *ec2.VPCEndpointServicePermissions: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolIdentityProvider not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPCEndpointServicePermissions not found", name) } -// GetAllAWSCognitoUserPoolResourceServerResources retrieves all AWSCognitoUserPoolResourceServer items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolResourceServerResources() map[string]*resources.AWSCognitoUserPoolResourceServer { - results := map[string]*resources.AWSCognitoUserPoolResourceServer{} +// GetAllSESConfigurationSetResources retrieves all ses.ConfigurationSet items from an AWS CloudFormation template +func (t *Template) GetAllSESConfigurationSetResources() map[string]*ses.ConfigurationSet { + results := map[string]*ses.ConfigurationSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolResourceServer: + case *ses.ConfigurationSet: results[name] = resource } } return results } -// GetAWSCognitoUserPoolResourceServerWithName retrieves all AWSCognitoUserPoolResourceServer items from an AWS CloudFormation template +// GetSESConfigurationSetWithName retrieves all ses.ConfigurationSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolResourceServerWithName(name string) (*resources.AWSCognitoUserPoolResourceServer, error) { +func (t *Template) GetSESConfigurationSetWithName(name string) (*ses.ConfigurationSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolResourceServer: + case *ses.ConfigurationSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolResourceServer not found", name) + return nil, fmt.Errorf("resource %q of type ses.ConfigurationSet not found", name) } -// GetAllAWSCognitoUserPoolRiskConfigurationAttachmentResources retrieves all AWSCognitoUserPoolRiskConfigurationAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolRiskConfigurationAttachmentResources() map[string]*resources.AWSCognitoUserPoolRiskConfigurationAttachment { - results := map[string]*resources.AWSCognitoUserPoolRiskConfigurationAttachment{} +// GetAllEC2NetworkInterfaceAttachmentResources retrieves all ec2.NetworkInterfaceAttachment items from an AWS CloudFormation template +func (t *Template) GetAllEC2NetworkInterfaceAttachmentResources() map[string]*ec2.NetworkInterfaceAttachment { + results := map[string]*ec2.NetworkInterfaceAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolRiskConfigurationAttachment: + case *ec2.NetworkInterfaceAttachment: results[name] = resource } } return results } -// GetAWSCognitoUserPoolRiskConfigurationAttachmentWithName retrieves all AWSCognitoUserPoolRiskConfigurationAttachment items from an AWS CloudFormation template +// GetEC2NetworkInterfaceAttachmentWithName retrieves all ec2.NetworkInterfaceAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolRiskConfigurationAttachmentWithName(name string) (*resources.AWSCognitoUserPoolRiskConfigurationAttachment, error) { +func (t *Template) GetEC2NetworkInterfaceAttachmentWithName(name string) (*ec2.NetworkInterfaceAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolRiskConfigurationAttachment: + case *ec2.NetworkInterfaceAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolRiskConfigurationAttachment not found", name) + return nil, fmt.Errorf("resource %q of type ec2.NetworkInterfaceAttachment not found", name) } -// GetAllAWSCognitoUserPoolUICustomizationAttachmentResources retrieves all AWSCognitoUserPoolUICustomizationAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolUICustomizationAttachmentResources() map[string]*resources.AWSCognitoUserPoolUICustomizationAttachment { - results := map[string]*resources.AWSCognitoUserPoolUICustomizationAttachment{} +// GetAllLakeFormationResourceResources retrieves all lakeformation.Resource items from an AWS CloudFormation template +func (t *Template) GetAllLakeFormationResourceResources() map[string]*lakeformation.Resource { + results := map[string]*lakeformation.Resource{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolUICustomizationAttachment: + case *lakeformation.Resource: results[name] = resource } } return results } -// GetAWSCognitoUserPoolUICustomizationAttachmentWithName retrieves all AWSCognitoUserPoolUICustomizationAttachment items from an AWS CloudFormation template +// GetLakeFormationResourceWithName retrieves all lakeformation.Resource items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolUICustomizationAttachmentWithName(name string) (*resources.AWSCognitoUserPoolUICustomizationAttachment, error) { +func (t *Template) GetLakeFormationResourceWithName(name string) (*lakeformation.Resource, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolUICustomizationAttachment: + case *lakeformation.Resource: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolUICustomizationAttachment not found", name) + return nil, fmt.Errorf("resource %q of type lakeformation.Resource not found", name) } -// GetAllAWSCognitoUserPoolUserResources retrieves all AWSCognitoUserPoolUser items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolUserResources() map[string]*resources.AWSCognitoUserPoolUser { - results := map[string]*resources.AWSCognitoUserPoolUser{} +// GetAllServiceDiscoveryInstanceResources retrieves all servicediscovery.Instance items from an AWS CloudFormation template +func (t *Template) GetAllServiceDiscoveryInstanceResources() map[string]*servicediscovery.Instance { + results := map[string]*servicediscovery.Instance{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolUser: + case *servicediscovery.Instance: results[name] = resource } } return results } -// GetAWSCognitoUserPoolUserWithName retrieves all AWSCognitoUserPoolUser items from an AWS CloudFormation template +// GetServiceDiscoveryInstanceWithName retrieves all servicediscovery.Instance items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolUserWithName(name string) (*resources.AWSCognitoUserPoolUser, error) { +func (t *Template) GetServiceDiscoveryInstanceWithName(name string) (*servicediscovery.Instance, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolUser: + case *servicediscovery.Instance: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolUser not found", name) + return nil, fmt.Errorf("resource %q of type servicediscovery.Instance not found", name) } -// GetAllAWSCognitoUserPoolUserToGroupAttachmentResources retrieves all AWSCognitoUserPoolUserToGroupAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSCognitoUserPoolUserToGroupAttachmentResources() map[string]*resources.AWSCognitoUserPoolUserToGroupAttachment { - results := map[string]*resources.AWSCognitoUserPoolUserToGroupAttachment{} +// GetAllAutoScalingScalingPolicyResources retrieves all autoscaling.ScalingPolicy items from an AWS CloudFormation template +func (t *Template) GetAllAutoScalingScalingPolicyResources() map[string]*autoscaling.ScalingPolicy { + results := map[string]*autoscaling.ScalingPolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolUserToGroupAttachment: + case *autoscaling.ScalingPolicy: results[name] = resource } } return results } -// GetAWSCognitoUserPoolUserToGroupAttachmentWithName retrieves all AWSCognitoUserPoolUserToGroupAttachment items from an AWS CloudFormation template +// GetAutoScalingScalingPolicyWithName retrieves all autoscaling.ScalingPolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSCognitoUserPoolUserToGroupAttachmentWithName(name string) (*resources.AWSCognitoUserPoolUserToGroupAttachment, error) { +func (t *Template) GetAutoScalingScalingPolicyWithName(name string) (*autoscaling.ScalingPolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSCognitoUserPoolUserToGroupAttachment: + case *autoscaling.ScalingPolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSCognitoUserPoolUserToGroupAttachment not found", name) + return nil, fmt.Errorf("resource %q of type autoscaling.ScalingPolicy not found", name) } -// GetAllAWSConfigAggregationAuthorizationResources retrieves all AWSConfigAggregationAuthorization items from an AWS CloudFormation template -func (t *Template) GetAllAWSConfigAggregationAuthorizationResources() map[string]*resources.AWSConfigAggregationAuthorization { - results := map[string]*resources.AWSConfigAggregationAuthorization{} +// GetAllGlueClassifierResources retrieves all glue.Classifier items from an AWS CloudFormation template +func (t *Template) GetAllGlueClassifierResources() map[string]*glue.Classifier { + results := map[string]*glue.Classifier{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSConfigAggregationAuthorization: + case *glue.Classifier: results[name] = resource } } return results } -// GetAWSConfigAggregationAuthorizationWithName retrieves all AWSConfigAggregationAuthorization items from an AWS CloudFormation template +// GetGlueClassifierWithName retrieves all glue.Classifier items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSConfigAggregationAuthorizationWithName(name string) (*resources.AWSConfigAggregationAuthorization, error) { +func (t *Template) GetGlueClassifierWithName(name string) (*glue.Classifier, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSConfigAggregationAuthorization: + case *glue.Classifier: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSConfigAggregationAuthorization not found", name) + return nil, fmt.Errorf("resource %q of type glue.Classifier not found", name) } -// GetAllAWSConfigConfigRuleResources retrieves all AWSConfigConfigRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSConfigConfigRuleResources() map[string]*resources.AWSConfigConfigRule { - results := map[string]*resources.AWSConfigConfigRule{} +// GetAllServiceCatalogPortfolioResources retrieves all servicecatalog.Portfolio items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogPortfolioResources() map[string]*servicecatalog.Portfolio { + results := map[string]*servicecatalog.Portfolio{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSConfigConfigRule: + case *servicecatalog.Portfolio: results[name] = resource } } return results } -// GetAWSConfigConfigRuleWithName retrieves all AWSConfigConfigRule items from an AWS CloudFormation template +// GetServiceCatalogPortfolioWithName retrieves all servicecatalog.Portfolio items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSConfigConfigRuleWithName(name string) (*resources.AWSConfigConfigRule, error) { +func (t *Template) GetServiceCatalogPortfolioWithName(name string) (*servicecatalog.Portfolio, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSConfigConfigRule: + case *servicecatalog.Portfolio: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSConfigConfigRule not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.Portfolio not found", name) } -// GetAllAWSConfigConfigurationAggregatorResources retrieves all AWSConfigConfigurationAggregator items from an AWS CloudFormation template -func (t *Template) GetAllAWSConfigConfigurationAggregatorResources() map[string]*resources.AWSConfigConfigurationAggregator { - results := map[string]*resources.AWSConfigConfigurationAggregator{} +// GetAllGuardDutyMemberResources retrieves all guardduty.Member items from an AWS CloudFormation template +func (t *Template) GetAllGuardDutyMemberResources() map[string]*guardduty.Member { + results := map[string]*guardduty.Member{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSConfigConfigurationAggregator: + case *guardduty.Member: results[name] = resource } } return results } -// GetAWSConfigConfigurationAggregatorWithName retrieves all AWSConfigConfigurationAggregator items from an AWS CloudFormation template +// GetGuardDutyMemberWithName retrieves all guardduty.Member items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSConfigConfigurationAggregatorWithName(name string) (*resources.AWSConfigConfigurationAggregator, error) { +func (t *Template) GetGuardDutyMemberWithName(name string) (*guardduty.Member, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSConfigConfigurationAggregator: + case *guardduty.Member: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSConfigConfigurationAggregator not found", name) + return nil, fmt.Errorf("resource %q of type guardduty.Member not found", name) } -// GetAllAWSConfigConfigurationRecorderResources retrieves all AWSConfigConfigurationRecorder items from an AWS CloudFormation template -func (t *Template) GetAllAWSConfigConfigurationRecorderResources() map[string]*resources.AWSConfigConfigurationRecorder { - results := map[string]*resources.AWSConfigConfigurationRecorder{} +// GetAllEC2VolumeAttachmentResources retrieves all ec2.VolumeAttachment items from an AWS CloudFormation template +func (t *Template) GetAllEC2VolumeAttachmentResources() map[string]*ec2.VolumeAttachment { + results := map[string]*ec2.VolumeAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSConfigConfigurationRecorder: + case *ec2.VolumeAttachment: results[name] = resource } } return results } -// GetAWSConfigConfigurationRecorderWithName retrieves all AWSConfigConfigurationRecorder items from an AWS CloudFormation template +// GetEC2VolumeAttachmentWithName retrieves all ec2.VolumeAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSConfigConfigurationRecorderWithName(name string) (*resources.AWSConfigConfigurationRecorder, error) { +func (t *Template) GetEC2VolumeAttachmentWithName(name string) (*ec2.VolumeAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSConfigConfigurationRecorder: + case *ec2.VolumeAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSConfigConfigurationRecorder not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VolumeAttachment not found", name) } -// GetAllAWSConfigDeliveryChannelResources retrieves all AWSConfigDeliveryChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSConfigDeliveryChannelResources() map[string]*resources.AWSConfigDeliveryChannel { - results := map[string]*resources.AWSConfigDeliveryChannel{} +// GetAllEC2TrafficMirrorSessionResources retrieves all ec2.TrafficMirrorSession items from an AWS CloudFormation template +func (t *Template) GetAllEC2TrafficMirrorSessionResources() map[string]*ec2.TrafficMirrorSession { + results := map[string]*ec2.TrafficMirrorSession{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSConfigDeliveryChannel: + case *ec2.TrafficMirrorSession: results[name] = resource } } return results } -// GetAWSConfigDeliveryChannelWithName retrieves all AWSConfigDeliveryChannel items from an AWS CloudFormation template +// GetEC2TrafficMirrorSessionWithName retrieves all ec2.TrafficMirrorSession items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSConfigDeliveryChannelWithName(name string) (*resources.AWSConfigDeliveryChannel, error) { +func (t *Template) GetEC2TrafficMirrorSessionWithName(name string) (*ec2.TrafficMirrorSession, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSConfigDeliveryChannel: + case *ec2.TrafficMirrorSession: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSConfigDeliveryChannel not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TrafficMirrorSession not found", name) } -// GetAllAWSConfigOrganizationConfigRuleResources retrieves all AWSConfigOrganizationConfigRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSConfigOrganizationConfigRuleResources() map[string]*resources.AWSConfigOrganizationConfigRule { - results := map[string]*resources.AWSConfigOrganizationConfigRule{} +// GetAllIAMGroupResources retrieves all iam.Group items from an AWS CloudFormation template +func (t *Template) GetAllIAMGroupResources() map[string]*iam.Group { + results := map[string]*iam.Group{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSConfigOrganizationConfigRule: + case *iam.Group: results[name] = resource } } return results } -// GetAWSConfigOrganizationConfigRuleWithName retrieves all AWSConfigOrganizationConfigRule items from an AWS CloudFormation template +// GetIAMGroupWithName retrieves all iam.Group items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSConfigOrganizationConfigRuleWithName(name string) (*resources.AWSConfigOrganizationConfigRule, error) { +func (t *Template) GetIAMGroupWithName(name string) (*iam.Group, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSConfigOrganizationConfigRule: + case *iam.Group: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSConfigOrganizationConfigRule not found", name) + return nil, fmt.Errorf("resource %q of type iam.Group not found", name) } -// GetAllAWSConfigRemediationConfigurationResources retrieves all AWSConfigRemediationConfiguration items from an AWS CloudFormation template -func (t *Template) GetAllAWSConfigRemediationConfigurationResources() map[string]*resources.AWSConfigRemediationConfiguration { - results := map[string]*resources.AWSConfigRemediationConfiguration{} +// GetAllCodeBuildProjectResources retrieves all codebuild.Project items from an AWS CloudFormation template +func (t *Template) GetAllCodeBuildProjectResources() map[string]*codebuild.Project { + results := map[string]*codebuild.Project{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSConfigRemediationConfiguration: + case *codebuild.Project: results[name] = resource } } return results } -// GetAWSConfigRemediationConfigurationWithName retrieves all AWSConfigRemediationConfiguration items from an AWS CloudFormation template +// GetCodeBuildProjectWithName retrieves all codebuild.Project items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSConfigRemediationConfigurationWithName(name string) (*resources.AWSConfigRemediationConfiguration, error) { +func (t *Template) GetCodeBuildProjectWithName(name string) (*codebuild.Project, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSConfigRemediationConfiguration: + case *codebuild.Project: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSConfigRemediationConfiguration not found", name) + return nil, fmt.Errorf("resource %q of type codebuild.Project not found", name) } -// GetAllAWSDAXClusterResources retrieves all AWSDAXCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSDAXClusterResources() map[string]*resources.AWSDAXCluster { - results := map[string]*resources.AWSDAXCluster{} +// GetAllWAFXssMatchSetResources retrieves all waf.XssMatchSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFXssMatchSetResources() map[string]*waf.XssMatchSet { + results := map[string]*waf.XssMatchSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDAXCluster: + case *waf.XssMatchSet: results[name] = resource } } return results } -// GetAWSDAXClusterWithName retrieves all AWSDAXCluster items from an AWS CloudFormation template +// GetWAFXssMatchSetWithName retrieves all waf.XssMatchSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDAXClusterWithName(name string) (*resources.AWSDAXCluster, error) { +func (t *Template) GetWAFXssMatchSetWithName(name string) (*waf.XssMatchSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDAXCluster: + case *waf.XssMatchSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDAXCluster not found", name) + return nil, fmt.Errorf("resource %q of type waf.XssMatchSet not found", name) } -// GetAllAWSDAXParameterGroupResources retrieves all AWSDAXParameterGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSDAXParameterGroupResources() map[string]*resources.AWSDAXParameterGroup { - results := map[string]*resources.AWSDAXParameterGroup{} +// GetAllQLDBLedgerResources retrieves all qldb.Ledger items from an AWS CloudFormation template +func (t *Template) GetAllQLDBLedgerResources() map[string]*qldb.Ledger { + results := map[string]*qldb.Ledger{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDAXParameterGroup: + case *qldb.Ledger: results[name] = resource } } return results } -// GetAWSDAXParameterGroupWithName retrieves all AWSDAXParameterGroup items from an AWS CloudFormation template +// GetQLDBLedgerWithName retrieves all qldb.Ledger items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDAXParameterGroupWithName(name string) (*resources.AWSDAXParameterGroup, error) { +func (t *Template) GetQLDBLedgerWithName(name string) (*qldb.Ledger, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDAXParameterGroup: + case *qldb.Ledger: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDAXParameterGroup not found", name) + return nil, fmt.Errorf("resource %q of type qldb.Ledger not found", name) } -// GetAllAWSDAXSubnetGroupResources retrieves all AWSDAXSubnetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSDAXSubnetGroupResources() map[string]*resources.AWSDAXSubnetGroup { - results := map[string]*resources.AWSDAXSubnetGroup{} +// GetAllIAMUserToGroupAdditionResources retrieves all iam.UserToGroupAddition items from an AWS CloudFormation template +func (t *Template) GetAllIAMUserToGroupAdditionResources() map[string]*iam.UserToGroupAddition { + results := map[string]*iam.UserToGroupAddition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDAXSubnetGroup: + case *iam.UserToGroupAddition: results[name] = resource } } return results } -// GetAWSDAXSubnetGroupWithName retrieves all AWSDAXSubnetGroup items from an AWS CloudFormation template +// GetIAMUserToGroupAdditionWithName retrieves all iam.UserToGroupAddition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDAXSubnetGroupWithName(name string) (*resources.AWSDAXSubnetGroup, error) { +func (t *Template) GetIAMUserToGroupAdditionWithName(name string) (*iam.UserToGroupAddition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDAXSubnetGroup: + case *iam.UserToGroupAddition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDAXSubnetGroup not found", name) + return nil, fmt.Errorf("resource %q of type iam.UserToGroupAddition not found", name) } -// GetAllAWSDLMLifecyclePolicyResources retrieves all AWSDLMLifecyclePolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSDLMLifecyclePolicyResources() map[string]*resources.AWSDLMLifecyclePolicy { - results := map[string]*resources.AWSDLMLifecyclePolicy{} +// GetAllRedshiftClusterSecurityGroupIngressResources retrieves all redshift.ClusterSecurityGroupIngress items from an AWS CloudFormation template +func (t *Template) GetAllRedshiftClusterSecurityGroupIngressResources() map[string]*redshift.ClusterSecurityGroupIngress { + results := map[string]*redshift.ClusterSecurityGroupIngress{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDLMLifecyclePolicy: + case *redshift.ClusterSecurityGroupIngress: results[name] = resource } } return results } -// GetAWSDLMLifecyclePolicyWithName retrieves all AWSDLMLifecyclePolicy items from an AWS CloudFormation template +// GetRedshiftClusterSecurityGroupIngressWithName retrieves all redshift.ClusterSecurityGroupIngress items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDLMLifecyclePolicyWithName(name string) (*resources.AWSDLMLifecyclePolicy, error) { +func (t *Template) GetRedshiftClusterSecurityGroupIngressWithName(name string) (*redshift.ClusterSecurityGroupIngress, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDLMLifecyclePolicy: + case *redshift.ClusterSecurityGroupIngress: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDLMLifecyclePolicy not found", name) + return nil, fmt.Errorf("resource %q of type redshift.ClusterSecurityGroupIngress not found", name) } -// GetAllAWSDMSCertificateResources retrieves all AWSDMSCertificate items from an AWS CloudFormation template -func (t *Template) GetAllAWSDMSCertificateResources() map[string]*resources.AWSDMSCertificate { - results := map[string]*resources.AWSDMSCertificate{} +// GetAllPinpointEmailConfigurationSetEventDestinationResources retrieves all pinpointemail.ConfigurationSetEventDestination items from an AWS CloudFormation template +func (t *Template) GetAllPinpointEmailConfigurationSetEventDestinationResources() map[string]*pinpointemail.ConfigurationSetEventDestination { + results := map[string]*pinpointemail.ConfigurationSetEventDestination{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDMSCertificate: + case *pinpointemail.ConfigurationSetEventDestination: results[name] = resource } } return results } -// GetAWSDMSCertificateWithName retrieves all AWSDMSCertificate items from an AWS CloudFormation template +// GetPinpointEmailConfigurationSetEventDestinationWithName retrieves all pinpointemail.ConfigurationSetEventDestination items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDMSCertificateWithName(name string) (*resources.AWSDMSCertificate, error) { +func (t *Template) GetPinpointEmailConfigurationSetEventDestinationWithName(name string) (*pinpointemail.ConfigurationSetEventDestination, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDMSCertificate: + case *pinpointemail.ConfigurationSetEventDestination: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDMSCertificate not found", name) + return nil, fmt.Errorf("resource %q of type pinpointemail.ConfigurationSetEventDestination not found", name) } -// GetAllAWSDMSEndpointResources retrieves all AWSDMSEndpoint items from an AWS CloudFormation template -func (t *Template) GetAllAWSDMSEndpointResources() map[string]*resources.AWSDMSEndpoint { - results := map[string]*resources.AWSDMSEndpoint{} +// GetAllOpsWorksInstanceResources retrieves all opsworks.Instance items from an AWS CloudFormation template +func (t *Template) GetAllOpsWorksInstanceResources() map[string]*opsworks.Instance { + results := map[string]*opsworks.Instance{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDMSEndpoint: + case *opsworks.Instance: results[name] = resource } } return results } -// GetAWSDMSEndpointWithName retrieves all AWSDMSEndpoint items from an AWS CloudFormation template +// GetOpsWorksInstanceWithName retrieves all opsworks.Instance items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDMSEndpointWithName(name string) (*resources.AWSDMSEndpoint, error) { +func (t *Template) GetOpsWorksInstanceWithName(name string) (*opsworks.Instance, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDMSEndpoint: + case *opsworks.Instance: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDMSEndpoint not found", name) + return nil, fmt.Errorf("resource %q of type opsworks.Instance not found", name) } -// GetAllAWSDMSEventSubscriptionResources retrieves all AWSDMSEventSubscription items from an AWS CloudFormation template -func (t *Template) GetAllAWSDMSEventSubscriptionResources() map[string]*resources.AWSDMSEventSubscription { - results := map[string]*resources.AWSDMSEventSubscription{} +// GetAllECSServiceResources retrieves all ecs.Service items from an AWS CloudFormation template +func (t *Template) GetAllECSServiceResources() map[string]*ecs.Service { + results := map[string]*ecs.Service{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDMSEventSubscription: + case *ecs.Service: results[name] = resource } } return results } -// GetAWSDMSEventSubscriptionWithName retrieves all AWSDMSEventSubscription items from an AWS CloudFormation template +// GetECSServiceWithName retrieves all ecs.Service items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDMSEventSubscriptionWithName(name string) (*resources.AWSDMSEventSubscription, error) { +func (t *Template) GetECSServiceWithName(name string) (*ecs.Service, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDMSEventSubscription: + case *ecs.Service: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDMSEventSubscription not found", name) + return nil, fmt.Errorf("resource %q of type ecs.Service not found", name) } -// GetAllAWSDMSReplicationInstanceResources retrieves all AWSDMSReplicationInstance items from an AWS CloudFormation template -func (t *Template) GetAllAWSDMSReplicationInstanceResources() map[string]*resources.AWSDMSReplicationInstance { - results := map[string]*resources.AWSDMSReplicationInstance{} +// GetAllWAFSqlInjectionMatchSetResources retrieves all waf.SqlInjectionMatchSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFSqlInjectionMatchSetResources() map[string]*waf.SqlInjectionMatchSet { + results := map[string]*waf.SqlInjectionMatchSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDMSReplicationInstance: + case *waf.SqlInjectionMatchSet: results[name] = resource } } return results } -// GetAWSDMSReplicationInstanceWithName retrieves all AWSDMSReplicationInstance items from an AWS CloudFormation template +// GetWAFSqlInjectionMatchSetWithName retrieves all waf.SqlInjectionMatchSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDMSReplicationInstanceWithName(name string) (*resources.AWSDMSReplicationInstance, error) { +func (t *Template) GetWAFSqlInjectionMatchSetWithName(name string) (*waf.SqlInjectionMatchSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDMSReplicationInstance: + case *waf.SqlInjectionMatchSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDMSReplicationInstance not found", name) + return nil, fmt.Errorf("resource %q of type waf.SqlInjectionMatchSet not found", name) } -// GetAllAWSDMSReplicationSubnetGroupResources retrieves all AWSDMSReplicationSubnetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSDMSReplicationSubnetGroupResources() map[string]*resources.AWSDMSReplicationSubnetGroup { - results := map[string]*resources.AWSDMSReplicationSubnetGroup{} +// GetAllEKSClusterResources retrieves all eks.Cluster items from an AWS CloudFormation template +func (t *Template) GetAllEKSClusterResources() map[string]*eks.Cluster { + results := map[string]*eks.Cluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDMSReplicationSubnetGroup: + case *eks.Cluster: results[name] = resource } } return results } -// GetAWSDMSReplicationSubnetGroupWithName retrieves all AWSDMSReplicationSubnetGroup items from an AWS CloudFormation template +// GetEKSClusterWithName retrieves all eks.Cluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDMSReplicationSubnetGroupWithName(name string) (*resources.AWSDMSReplicationSubnetGroup, error) { +func (t *Template) GetEKSClusterWithName(name string) (*eks.Cluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDMSReplicationSubnetGroup: + case *eks.Cluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDMSReplicationSubnetGroup not found", name) + return nil, fmt.Errorf("resource %q of type eks.Cluster not found", name) } -// GetAllAWSDMSReplicationTaskResources retrieves all AWSDMSReplicationTask items from an AWS CloudFormation template -func (t *Template) GetAllAWSDMSReplicationTaskResources() map[string]*resources.AWSDMSReplicationTask { - results := map[string]*resources.AWSDMSReplicationTask{} +// GetAllGuardDutyMasterResources retrieves all guardduty.Master items from an AWS CloudFormation template +func (t *Template) GetAllGuardDutyMasterResources() map[string]*guardduty.Master { + results := map[string]*guardduty.Master{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDMSReplicationTask: + case *guardduty.Master: results[name] = resource } } return results } -// GetAWSDMSReplicationTaskWithName retrieves all AWSDMSReplicationTask items from an AWS CloudFormation template +// GetGuardDutyMasterWithName retrieves all guardduty.Master items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDMSReplicationTaskWithName(name string) (*resources.AWSDMSReplicationTask, error) { +func (t *Template) GetGuardDutyMasterWithName(name string) (*guardduty.Master, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDMSReplicationTask: + case *guardduty.Master: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDMSReplicationTask not found", name) + return nil, fmt.Errorf("resource %q of type guardduty.Master not found", name) } -// GetAllAWSDataPipelinePipelineResources retrieves all AWSDataPipelinePipeline items from an AWS CloudFormation template -func (t *Template) GetAllAWSDataPipelinePipelineResources() map[string]*resources.AWSDataPipelinePipeline { - results := map[string]*resources.AWSDataPipelinePipeline{} +// GetAllElastiCacheReplicationGroupResources retrieves all elasticache.ReplicationGroup items from an AWS CloudFormation template +func (t *Template) GetAllElastiCacheReplicationGroupResources() map[string]*elasticache.ReplicationGroup { + results := map[string]*elasticache.ReplicationGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDataPipelinePipeline: + case *elasticache.ReplicationGroup: results[name] = resource } } return results } -// GetAWSDataPipelinePipelineWithName retrieves all AWSDataPipelinePipeline items from an AWS CloudFormation template +// GetElastiCacheReplicationGroupWithName retrieves all elasticache.ReplicationGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDataPipelinePipelineWithName(name string) (*resources.AWSDataPipelinePipeline, error) { +func (t *Template) GetElastiCacheReplicationGroupWithName(name string) (*elasticache.ReplicationGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDataPipelinePipeline: + case *elasticache.ReplicationGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDataPipelinePipeline not found", name) + return nil, fmt.Errorf("resource %q of type elasticache.ReplicationGroup not found", name) } -// GetAllAWSDirectoryServiceMicrosoftADResources retrieves all AWSDirectoryServiceMicrosoftAD items from an AWS CloudFormation template -func (t *Template) GetAllAWSDirectoryServiceMicrosoftADResources() map[string]*resources.AWSDirectoryServiceMicrosoftAD { - results := map[string]*resources.AWSDirectoryServiceMicrosoftAD{} +// GetAllAppMeshRouteResources retrieves all appmesh.Route items from an AWS CloudFormation template +func (t *Template) GetAllAppMeshRouteResources() map[string]*appmesh.Route { + results := map[string]*appmesh.Route{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDirectoryServiceMicrosoftAD: + case *appmesh.Route: results[name] = resource } } return results } -// GetAWSDirectoryServiceMicrosoftADWithName retrieves all AWSDirectoryServiceMicrosoftAD items from an AWS CloudFormation template +// GetAppMeshRouteWithName retrieves all appmesh.Route items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDirectoryServiceMicrosoftADWithName(name string) (*resources.AWSDirectoryServiceMicrosoftAD, error) { +func (t *Template) GetAppMeshRouteWithName(name string) (*appmesh.Route, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDirectoryServiceMicrosoftAD: + case *appmesh.Route: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDirectoryServiceMicrosoftAD not found", name) + return nil, fmt.Errorf("resource %q of type appmesh.Route not found", name) } -// GetAllAWSDirectoryServiceSimpleADResources retrieves all AWSDirectoryServiceSimpleAD items from an AWS CloudFormation template -func (t *Template) GetAllAWSDirectoryServiceSimpleADResources() map[string]*resources.AWSDirectoryServiceSimpleAD { - results := map[string]*resources.AWSDirectoryServiceSimpleAD{} +// GetAllApiGatewayDomainNameResources retrieves all apigateway.DomainName items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayDomainNameResources() map[string]*apigateway.DomainName { + results := map[string]*apigateway.DomainName{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDirectoryServiceSimpleAD: + case *apigateway.DomainName: results[name] = resource } } return results } -// GetAWSDirectoryServiceSimpleADWithName retrieves all AWSDirectoryServiceSimpleAD items from an AWS CloudFormation template +// GetApiGatewayDomainNameWithName retrieves all apigateway.DomainName items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDirectoryServiceSimpleADWithName(name string) (*resources.AWSDirectoryServiceSimpleAD, error) { +func (t *Template) GetApiGatewayDomainNameWithName(name string) (*apigateway.DomainName, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDirectoryServiceSimpleAD: + case *apigateway.DomainName: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDirectoryServiceSimpleAD not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.DomainName not found", name) } -// GetAllAWSDocDBDBClusterResources retrieves all AWSDocDBDBCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSDocDBDBClusterResources() map[string]*resources.AWSDocDBDBCluster { - results := map[string]*resources.AWSDocDBDBCluster{} +// GetAllLogsMetricFilterResources retrieves all logs.MetricFilter items from an AWS CloudFormation template +func (t *Template) GetAllLogsMetricFilterResources() map[string]*logs.MetricFilter { + results := map[string]*logs.MetricFilter{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDocDBDBCluster: + case *logs.MetricFilter: results[name] = resource } } return results } -// GetAWSDocDBDBClusterWithName retrieves all AWSDocDBDBCluster items from an AWS CloudFormation template +// GetLogsMetricFilterWithName retrieves all logs.MetricFilter items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDocDBDBClusterWithName(name string) (*resources.AWSDocDBDBCluster, error) { +func (t *Template) GetLogsMetricFilterWithName(name string) (*logs.MetricFilter, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDocDBDBCluster: + case *logs.MetricFilter: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDocDBDBCluster not found", name) + return nil, fmt.Errorf("resource %q of type logs.MetricFilter not found", name) } -// GetAllAWSDocDBDBClusterParameterGroupResources retrieves all AWSDocDBDBClusterParameterGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSDocDBDBClusterParameterGroupResources() map[string]*resources.AWSDocDBDBClusterParameterGroup { - results := map[string]*resources.AWSDocDBDBClusterParameterGroup{} +// GetAllGreengrassConnectorDefinitionResources retrieves all greengrass.ConnectorDefinition items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassConnectorDefinitionResources() map[string]*greengrass.ConnectorDefinition { + results := map[string]*greengrass.ConnectorDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDocDBDBClusterParameterGroup: + case *greengrass.ConnectorDefinition: results[name] = resource } } return results } -// GetAWSDocDBDBClusterParameterGroupWithName retrieves all AWSDocDBDBClusterParameterGroup items from an AWS CloudFormation template +// GetGreengrassConnectorDefinitionWithName retrieves all greengrass.ConnectorDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDocDBDBClusterParameterGroupWithName(name string) (*resources.AWSDocDBDBClusterParameterGroup, error) { +func (t *Template) GetGreengrassConnectorDefinitionWithName(name string) (*greengrass.ConnectorDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDocDBDBClusterParameterGroup: + case *greengrass.ConnectorDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDocDBDBClusterParameterGroup not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.ConnectorDefinition not found", name) } -// GetAllAWSDocDBDBInstanceResources retrieves all AWSDocDBDBInstance items from an AWS CloudFormation template -func (t *Template) GetAllAWSDocDBDBInstanceResources() map[string]*resources.AWSDocDBDBInstance { - results := map[string]*resources.AWSDocDBDBInstance{} +// GetAllCognitoUserPoolUserResources retrieves all cognito.UserPoolUser items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolUserResources() map[string]*cognito.UserPoolUser { + results := map[string]*cognito.UserPoolUser{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDocDBDBInstance: + case *cognito.UserPoolUser: results[name] = resource } } return results } -// GetAWSDocDBDBInstanceWithName retrieves all AWSDocDBDBInstance items from an AWS CloudFormation template +// GetCognitoUserPoolUserWithName retrieves all cognito.UserPoolUser items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDocDBDBInstanceWithName(name string) (*resources.AWSDocDBDBInstance, error) { +func (t *Template) GetCognitoUserPoolUserWithName(name string) (*cognito.UserPoolUser, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDocDBDBInstance: + case *cognito.UserPoolUser: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDocDBDBInstance not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolUser not found", name) } -// GetAllAWSDocDBDBSubnetGroupResources retrieves all AWSDocDBDBSubnetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSDocDBDBSubnetGroupResources() map[string]*resources.AWSDocDBDBSubnetGroup { - results := map[string]*resources.AWSDocDBDBSubnetGroup{} +// GetAllAutoScalingAutoScalingGroupResources retrieves all autoscaling.AutoScalingGroup items from an AWS CloudFormation template +func (t *Template) GetAllAutoScalingAutoScalingGroupResources() map[string]*autoscaling.AutoScalingGroup { + results := map[string]*autoscaling.AutoScalingGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDocDBDBSubnetGroup: + case *autoscaling.AutoScalingGroup: results[name] = resource } } return results } -// GetAWSDocDBDBSubnetGroupWithName retrieves all AWSDocDBDBSubnetGroup items from an AWS CloudFormation template +// GetAutoScalingAutoScalingGroupWithName retrieves all autoscaling.AutoScalingGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDocDBDBSubnetGroupWithName(name string) (*resources.AWSDocDBDBSubnetGroup, error) { +func (t *Template) GetAutoScalingAutoScalingGroupWithName(name string) (*autoscaling.AutoScalingGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDocDBDBSubnetGroup: + case *autoscaling.AutoScalingGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDocDBDBSubnetGroup not found", name) + return nil, fmt.Errorf("resource %q of type autoscaling.AutoScalingGroup not found", name) } -// GetAllAWSDynamoDBTableResources retrieves all AWSDynamoDBTable items from an AWS CloudFormation template -func (t *Template) GetAllAWSDynamoDBTableResources() map[string]*resources.AWSDynamoDBTable { - results := map[string]*resources.AWSDynamoDBTable{} +// GetAllDAXParameterGroupResources retrieves all dax.ParameterGroup items from an AWS CloudFormation template +func (t *Template) GetAllDAXParameterGroupResources() map[string]*dax.ParameterGroup { + results := map[string]*dax.ParameterGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSDynamoDBTable: + case *dax.ParameterGroup: results[name] = resource } } return results } -// GetAWSDynamoDBTableWithName retrieves all AWSDynamoDBTable items from an AWS CloudFormation template +// GetDAXParameterGroupWithName retrieves all dax.ParameterGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSDynamoDBTableWithName(name string) (*resources.AWSDynamoDBTable, error) { +func (t *Template) GetDAXParameterGroupWithName(name string) (*dax.ParameterGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSDynamoDBTable: + case *dax.ParameterGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSDynamoDBTable not found", name) + return nil, fmt.Errorf("resource %q of type dax.ParameterGroup not found", name) } -// GetAllAWSEC2CapacityReservationResources retrieves all AWSEC2CapacityReservation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2CapacityReservationResources() map[string]*resources.AWSEC2CapacityReservation { - results := map[string]*resources.AWSEC2CapacityReservation{} +// GetAllGreengrassSubscriptionDefinitionVersionResources retrieves all greengrass.SubscriptionDefinitionVersion items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassSubscriptionDefinitionVersionResources() map[string]*greengrass.SubscriptionDefinitionVersion { + results := map[string]*greengrass.SubscriptionDefinitionVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2CapacityReservation: + case *greengrass.SubscriptionDefinitionVersion: results[name] = resource } } return results } -// GetAWSEC2CapacityReservationWithName retrieves all AWSEC2CapacityReservation items from an AWS CloudFormation template +// GetGreengrassSubscriptionDefinitionVersionWithName retrieves all greengrass.SubscriptionDefinitionVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2CapacityReservationWithName(name string) (*resources.AWSEC2CapacityReservation, error) { +func (t *Template) GetGreengrassSubscriptionDefinitionVersionWithName(name string) (*greengrass.SubscriptionDefinitionVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2CapacityReservation: + case *greengrass.SubscriptionDefinitionVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2CapacityReservation not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.SubscriptionDefinitionVersion not found", name) } -// GetAllAWSEC2ClientVpnAuthorizationRuleResources retrieves all AWSEC2ClientVpnAuthorizationRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2ClientVpnAuthorizationRuleResources() map[string]*resources.AWSEC2ClientVpnAuthorizationRule { - results := map[string]*resources.AWSEC2ClientVpnAuthorizationRule{} +// GetAllEC2ClientVpnAuthorizationRuleResources retrieves all ec2.ClientVpnAuthorizationRule items from an AWS CloudFormation template +func (t *Template) GetAllEC2ClientVpnAuthorizationRuleResources() map[string]*ec2.ClientVpnAuthorizationRule { + results := map[string]*ec2.ClientVpnAuthorizationRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2ClientVpnAuthorizationRule: + case *ec2.ClientVpnAuthorizationRule: results[name] = resource } } return results } -// GetAWSEC2ClientVpnAuthorizationRuleWithName retrieves all AWSEC2ClientVpnAuthorizationRule items from an AWS CloudFormation template +// GetEC2ClientVpnAuthorizationRuleWithName retrieves all ec2.ClientVpnAuthorizationRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2ClientVpnAuthorizationRuleWithName(name string) (*resources.AWSEC2ClientVpnAuthorizationRule, error) { +func (t *Template) GetEC2ClientVpnAuthorizationRuleWithName(name string) (*ec2.ClientVpnAuthorizationRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2ClientVpnAuthorizationRule: + case *ec2.ClientVpnAuthorizationRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2ClientVpnAuthorizationRule not found", name) + return nil, fmt.Errorf("resource %q of type ec2.ClientVpnAuthorizationRule not found", name) } -// GetAllAWSEC2ClientVpnEndpointResources retrieves all AWSEC2ClientVpnEndpoint items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2ClientVpnEndpointResources() map[string]*resources.AWSEC2ClientVpnEndpoint { - results := map[string]*resources.AWSEC2ClientVpnEndpoint{} +// GetAllSESReceiptRuleSetResources retrieves all ses.ReceiptRuleSet items from an AWS CloudFormation template +func (t *Template) GetAllSESReceiptRuleSetResources() map[string]*ses.ReceiptRuleSet { + results := map[string]*ses.ReceiptRuleSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2ClientVpnEndpoint: + case *ses.ReceiptRuleSet: results[name] = resource } } return results } -// GetAWSEC2ClientVpnEndpointWithName retrieves all AWSEC2ClientVpnEndpoint items from an AWS CloudFormation template +// GetSESReceiptRuleSetWithName retrieves all ses.ReceiptRuleSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2ClientVpnEndpointWithName(name string) (*resources.AWSEC2ClientVpnEndpoint, error) { +func (t *Template) GetSESReceiptRuleSetWithName(name string) (*ses.ReceiptRuleSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2ClientVpnEndpoint: + case *ses.ReceiptRuleSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2ClientVpnEndpoint not found", name) + return nil, fmt.Errorf("resource %q of type ses.ReceiptRuleSet not found", name) } -// GetAllAWSEC2ClientVpnRouteResources retrieves all AWSEC2ClientVpnRoute items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2ClientVpnRouteResources() map[string]*resources.AWSEC2ClientVpnRoute { - results := map[string]*resources.AWSEC2ClientVpnRoute{} +// GetAllGlueWorkflowResources retrieves all glue.Workflow items from an AWS CloudFormation template +func (t *Template) GetAllGlueWorkflowResources() map[string]*glue.Workflow { + results := map[string]*glue.Workflow{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2ClientVpnRoute: + case *glue.Workflow: results[name] = resource } } return results } -// GetAWSEC2ClientVpnRouteWithName retrieves all AWSEC2ClientVpnRoute items from an AWS CloudFormation template +// GetGlueWorkflowWithName retrieves all glue.Workflow items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2ClientVpnRouteWithName(name string) (*resources.AWSEC2ClientVpnRoute, error) { +func (t *Template) GetGlueWorkflowWithName(name string) (*glue.Workflow, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2ClientVpnRoute: + case *glue.Workflow: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2ClientVpnRoute not found", name) + return nil, fmt.Errorf("resource %q of type glue.Workflow not found", name) } -// GetAllAWSEC2ClientVpnTargetNetworkAssociationResources retrieves all AWSEC2ClientVpnTargetNetworkAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2ClientVpnTargetNetworkAssociationResources() map[string]*resources.AWSEC2ClientVpnTargetNetworkAssociation { - results := map[string]*resources.AWSEC2ClientVpnTargetNetworkAssociation{} +// GetAllDocDBDBInstanceResources retrieves all docdb.DBInstance items from an AWS CloudFormation template +func (t *Template) GetAllDocDBDBInstanceResources() map[string]*docdb.DBInstance { + results := map[string]*docdb.DBInstance{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2ClientVpnTargetNetworkAssociation: + case *docdb.DBInstance: results[name] = resource } } return results } -// GetAWSEC2ClientVpnTargetNetworkAssociationWithName retrieves all AWSEC2ClientVpnTargetNetworkAssociation items from an AWS CloudFormation template +// GetDocDBDBInstanceWithName retrieves all docdb.DBInstance items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2ClientVpnTargetNetworkAssociationWithName(name string) (*resources.AWSEC2ClientVpnTargetNetworkAssociation, error) { +func (t *Template) GetDocDBDBInstanceWithName(name string) (*docdb.DBInstance, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2ClientVpnTargetNetworkAssociation: + case *docdb.DBInstance: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2ClientVpnTargetNetworkAssociation not found", name) + return nil, fmt.Errorf("resource %q of type docdb.DBInstance not found", name) } -// GetAllAWSEC2CustomerGatewayResources retrieves all AWSEC2CustomerGateway items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2CustomerGatewayResources() map[string]*resources.AWSEC2CustomerGateway { - results := map[string]*resources.AWSEC2CustomerGateway{} +// GetAllCognitoUserPoolClientResources retrieves all cognito.UserPoolClient items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolClientResources() map[string]*cognito.UserPoolClient { + results := map[string]*cognito.UserPoolClient{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2CustomerGateway: + case *cognito.UserPoolClient: results[name] = resource } } return results } -// GetAWSEC2CustomerGatewayWithName retrieves all AWSEC2CustomerGateway items from an AWS CloudFormation template +// GetCognitoUserPoolClientWithName retrieves all cognito.UserPoolClient items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2CustomerGatewayWithName(name string) (*resources.AWSEC2CustomerGateway, error) { +func (t *Template) GetCognitoUserPoolClientWithName(name string) (*cognito.UserPoolClient, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2CustomerGateway: + case *cognito.UserPoolClient: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2CustomerGateway not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolClient not found", name) } -// GetAllAWSEC2DHCPOptionsResources retrieves all AWSEC2DHCPOptions items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2DHCPOptionsResources() map[string]*resources.AWSEC2DHCPOptions { - results := map[string]*resources.AWSEC2DHCPOptions{} +// GetAllCodeCommitRepositoryResources retrieves all codecommit.Repository items from an AWS CloudFormation template +func (t *Template) GetAllCodeCommitRepositoryResources() map[string]*codecommit.Repository { + results := map[string]*codecommit.Repository{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2DHCPOptions: + case *codecommit.Repository: results[name] = resource } } return results } -// GetAWSEC2DHCPOptionsWithName retrieves all AWSEC2DHCPOptions items from an AWS CloudFormation template +// GetCodeCommitRepositoryWithName retrieves all codecommit.Repository items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2DHCPOptionsWithName(name string) (*resources.AWSEC2DHCPOptions, error) { +func (t *Template) GetCodeCommitRepositoryWithName(name string) (*codecommit.Repository, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2DHCPOptions: + case *codecommit.Repository: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2DHCPOptions not found", name) + return nil, fmt.Errorf("resource %q of type codecommit.Repository not found", name) } -// GetAllAWSEC2EC2FleetResources retrieves all AWSEC2EC2Fleet items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2EC2FleetResources() map[string]*resources.AWSEC2EC2Fleet { - results := map[string]*resources.AWSEC2EC2Fleet{} +// GetAllConfigConfigurationAggregatorResources retrieves all config.ConfigurationAggregator items from an AWS CloudFormation template +func (t *Template) GetAllConfigConfigurationAggregatorResources() map[string]*config.ConfigurationAggregator { + results := map[string]*config.ConfigurationAggregator{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2EC2Fleet: + case *config.ConfigurationAggregator: results[name] = resource } } return results } -// GetAWSEC2EC2FleetWithName retrieves all AWSEC2EC2Fleet items from an AWS CloudFormation template +// GetConfigConfigurationAggregatorWithName retrieves all config.ConfigurationAggregator items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2EC2FleetWithName(name string) (*resources.AWSEC2EC2Fleet, error) { +func (t *Template) GetConfigConfigurationAggregatorWithName(name string) (*config.ConfigurationAggregator, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2EC2Fleet: + case *config.ConfigurationAggregator: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2EC2Fleet not found", name) + return nil, fmt.Errorf("resource %q of type config.ConfigurationAggregator not found", name) } -// GetAllAWSEC2EIPResources retrieves all AWSEC2EIP items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2EIPResources() map[string]*resources.AWSEC2EIP { - results := map[string]*resources.AWSEC2EIP{} +// GetAllDocDBDBClusterResources retrieves all docdb.DBCluster items from an AWS CloudFormation template +func (t *Template) GetAllDocDBDBClusterResources() map[string]*docdb.DBCluster { + results := map[string]*docdb.DBCluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2EIP: + case *docdb.DBCluster: results[name] = resource } } return results } -// GetAWSEC2EIPWithName retrieves all AWSEC2EIP items from an AWS CloudFormation template +// GetDocDBDBClusterWithName retrieves all docdb.DBCluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2EIPWithName(name string) (*resources.AWSEC2EIP, error) { +func (t *Template) GetDocDBDBClusterWithName(name string) (*docdb.DBCluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2EIP: + case *docdb.DBCluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2EIP not found", name) + return nil, fmt.Errorf("resource %q of type docdb.DBCluster not found", name) } -// GetAllAWSEC2EIPAssociationResources retrieves all AWSEC2EIPAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2EIPAssociationResources() map[string]*resources.AWSEC2EIPAssociation { - results := map[string]*resources.AWSEC2EIPAssociation{} +// GetAllElastiCacheSubnetGroupResources retrieves all elasticache.SubnetGroup items from an AWS CloudFormation template +func (t *Template) GetAllElastiCacheSubnetGroupResources() map[string]*elasticache.SubnetGroup { + results := map[string]*elasticache.SubnetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2EIPAssociation: + case *elasticache.SubnetGroup: results[name] = resource } } return results } -// GetAWSEC2EIPAssociationWithName retrieves all AWSEC2EIPAssociation items from an AWS CloudFormation template +// GetElastiCacheSubnetGroupWithName retrieves all elasticache.SubnetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2EIPAssociationWithName(name string) (*resources.AWSEC2EIPAssociation, error) { +func (t *Template) GetElastiCacheSubnetGroupWithName(name string) (*elasticache.SubnetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2EIPAssociation: + case *elasticache.SubnetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2EIPAssociation not found", name) + return nil, fmt.Errorf("resource %q of type elasticache.SubnetGroup not found", name) } -// GetAllAWSEC2EgressOnlyInternetGatewayResources retrieves all AWSEC2EgressOnlyInternetGateway items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2EgressOnlyInternetGatewayResources() map[string]*resources.AWSEC2EgressOnlyInternetGateway { - results := map[string]*resources.AWSEC2EgressOnlyInternetGateway{} +// GetAllSageMakerEndpointResources retrieves all sagemaker.Endpoint items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerEndpointResources() map[string]*sagemaker.Endpoint { + results := map[string]*sagemaker.Endpoint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2EgressOnlyInternetGateway: + case *sagemaker.Endpoint: results[name] = resource } } return results } -// GetAWSEC2EgressOnlyInternetGatewayWithName retrieves all AWSEC2EgressOnlyInternetGateway items from an AWS CloudFormation template +// GetSageMakerEndpointWithName retrieves all sagemaker.Endpoint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2EgressOnlyInternetGatewayWithName(name string) (*resources.AWSEC2EgressOnlyInternetGateway, error) { +func (t *Template) GetSageMakerEndpointWithName(name string) (*sagemaker.Endpoint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2EgressOnlyInternetGateway: + case *sagemaker.Endpoint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2EgressOnlyInternetGateway not found", name) + return nil, fmt.Errorf("resource %q of type sagemaker.Endpoint not found", name) } -// GetAllAWSEC2FlowLogResources retrieves all AWSEC2FlowLog items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2FlowLogResources() map[string]*resources.AWSEC2FlowLog { - results := map[string]*resources.AWSEC2FlowLog{} +// GetAllMediaLiveInputResources retrieves all medialive.Input items from an AWS CloudFormation template +func (t *Template) GetAllMediaLiveInputResources() map[string]*medialive.Input { + results := map[string]*medialive.Input{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2FlowLog: + case *medialive.Input: results[name] = resource } } return results } -// GetAWSEC2FlowLogWithName retrieves all AWSEC2FlowLog items from an AWS CloudFormation template +// GetMediaLiveInputWithName retrieves all medialive.Input items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2FlowLogWithName(name string) (*resources.AWSEC2FlowLog, error) { +func (t *Template) GetMediaLiveInputWithName(name string) (*medialive.Input, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2FlowLog: + case *medialive.Input: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2FlowLog not found", name) + return nil, fmt.Errorf("resource %q of type medialive.Input not found", name) } -// GetAllAWSEC2HostResources retrieves all AWSEC2Host items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2HostResources() map[string]*resources.AWSEC2Host { - results := map[string]*resources.AWSEC2Host{} +// GetAllEC2NatGatewayResources retrieves all ec2.NatGateway items from an AWS CloudFormation template +func (t *Template) GetAllEC2NatGatewayResources() map[string]*ec2.NatGateway { + results := map[string]*ec2.NatGateway{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2Host: + case *ec2.NatGateway: results[name] = resource } } return results } -// GetAWSEC2HostWithName retrieves all AWSEC2Host items from an AWS CloudFormation template +// GetEC2NatGatewayWithName retrieves all ec2.NatGateway items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2HostWithName(name string) (*resources.AWSEC2Host, error) { +func (t *Template) GetEC2NatGatewayWithName(name string) (*ec2.NatGateway, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2Host: + case *ec2.NatGateway: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2Host not found", name) + return nil, fmt.Errorf("resource %q of type ec2.NatGateway not found", name) } -// GetAllAWSEC2InstanceResources retrieves all AWSEC2Instance items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2InstanceResources() map[string]*resources.AWSEC2Instance { - results := map[string]*resources.AWSEC2Instance{} +// GetAllEC2HostResources retrieves all ec2.Host items from an AWS CloudFormation template +func (t *Template) GetAllEC2HostResources() map[string]*ec2.Host { + results := map[string]*ec2.Host{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2Instance: + case *ec2.Host: results[name] = resource } } return results } -// GetAWSEC2InstanceWithName retrieves all AWSEC2Instance items from an AWS CloudFormation template +// GetEC2HostWithName retrieves all ec2.Host items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2InstanceWithName(name string) (*resources.AWSEC2Instance, error) { +func (t *Template) GetEC2HostWithName(name string) (*ec2.Host, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2Instance: + case *ec2.Host: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2Instance not found", name) + return nil, fmt.Errorf("resource %q of type ec2.Host not found", name) } -// GetAllAWSEC2InternetGatewayResources retrieves all AWSEC2InternetGateway items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2InternetGatewayResources() map[string]*resources.AWSEC2InternetGateway { - results := map[string]*resources.AWSEC2InternetGateway{} +// GetAllKinesisAnalyticsApplicationResources retrieves all kinesisanalytics.Application items from an AWS CloudFormation template +func (t *Template) GetAllKinesisAnalyticsApplicationResources() map[string]*kinesisanalytics.Application { + results := map[string]*kinesisanalytics.Application{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2InternetGateway: + case *kinesisanalytics.Application: results[name] = resource } } return results } -// GetAWSEC2InternetGatewayWithName retrieves all AWSEC2InternetGateway items from an AWS CloudFormation template +// GetKinesisAnalyticsApplicationWithName retrieves all kinesisanalytics.Application items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2InternetGatewayWithName(name string) (*resources.AWSEC2InternetGateway, error) { +func (t *Template) GetKinesisAnalyticsApplicationWithName(name string) (*kinesisanalytics.Application, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2InternetGateway: + case *kinesisanalytics.Application: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2InternetGateway not found", name) + return nil, fmt.Errorf("resource %q of type kinesisanalytics.Application not found", name) } -// GetAllAWSEC2LaunchTemplateResources retrieves all AWSEC2LaunchTemplate items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2LaunchTemplateResources() map[string]*resources.AWSEC2LaunchTemplate { - results := map[string]*resources.AWSEC2LaunchTemplate{} +// GetAllSSMAssociationResources retrieves all ssm.Association items from an AWS CloudFormation template +func (t *Template) GetAllSSMAssociationResources() map[string]*ssm.Association { + results := map[string]*ssm.Association{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2LaunchTemplate: + case *ssm.Association: results[name] = resource } } return results } -// GetAWSEC2LaunchTemplateWithName retrieves all AWSEC2LaunchTemplate items from an AWS CloudFormation template +// GetSSMAssociationWithName retrieves all ssm.Association items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2LaunchTemplateWithName(name string) (*resources.AWSEC2LaunchTemplate, error) { +func (t *Template) GetSSMAssociationWithName(name string) (*ssm.Association, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2LaunchTemplate: + case *ssm.Association: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2LaunchTemplate not found", name) + return nil, fmt.Errorf("resource %q of type ssm.Association not found", name) } -// GetAllAWSEC2NatGatewayResources retrieves all AWSEC2NatGateway items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2NatGatewayResources() map[string]*resources.AWSEC2NatGateway { - results := map[string]*resources.AWSEC2NatGateway{} +// GetAllElasticLoadBalancingV2LoadBalancerResources retrieves all elasticloadbalancingv2.LoadBalancer items from an AWS CloudFormation template +func (t *Template) GetAllElasticLoadBalancingV2LoadBalancerResources() map[string]*elasticloadbalancingv2.LoadBalancer { + results := map[string]*elasticloadbalancingv2.LoadBalancer{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2NatGateway: + case *elasticloadbalancingv2.LoadBalancer: results[name] = resource } } return results } -// GetAWSEC2NatGatewayWithName retrieves all AWSEC2NatGateway items from an AWS CloudFormation template +// GetElasticLoadBalancingV2LoadBalancerWithName retrieves all elasticloadbalancingv2.LoadBalancer items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2NatGatewayWithName(name string) (*resources.AWSEC2NatGateway, error) { +func (t *Template) GetElasticLoadBalancingV2LoadBalancerWithName(name string) (*elasticloadbalancingv2.LoadBalancer, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2NatGateway: + case *elasticloadbalancingv2.LoadBalancer: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2NatGateway not found", name) + return nil, fmt.Errorf("resource %q of type elasticloadbalancingv2.LoadBalancer not found", name) } -// GetAllAWSEC2NetworkAclResources retrieves all AWSEC2NetworkAcl items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2NetworkAclResources() map[string]*resources.AWSEC2NetworkAcl { - results := map[string]*resources.AWSEC2NetworkAcl{} +// GetAllS3BucketPolicyResources retrieves all s3.BucketPolicy items from an AWS CloudFormation template +func (t *Template) GetAllS3BucketPolicyResources() map[string]*s3.BucketPolicy { + results := map[string]*s3.BucketPolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkAcl: + case *s3.BucketPolicy: results[name] = resource } } return results } -// GetAWSEC2NetworkAclWithName retrieves all AWSEC2NetworkAcl items from an AWS CloudFormation template +// GetS3BucketPolicyWithName retrieves all s3.BucketPolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2NetworkAclWithName(name string) (*resources.AWSEC2NetworkAcl, error) { +func (t *Template) GetS3BucketPolicyWithName(name string) (*s3.BucketPolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkAcl: + case *s3.BucketPolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2NetworkAcl not found", name) + return nil, fmt.Errorf("resource %q of type s3.BucketPolicy not found", name) } -// GetAllAWSEC2NetworkAclEntryResources retrieves all AWSEC2NetworkAclEntry items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2NetworkAclEntryResources() map[string]*resources.AWSEC2NetworkAclEntry { - results := map[string]*resources.AWSEC2NetworkAclEntry{} +// GetAllPinpointEmailConfigurationSetResources retrieves all pinpointemail.ConfigurationSet items from an AWS CloudFormation template +func (t *Template) GetAllPinpointEmailConfigurationSetResources() map[string]*pinpointemail.ConfigurationSet { + results := map[string]*pinpointemail.ConfigurationSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkAclEntry: + case *pinpointemail.ConfigurationSet: results[name] = resource } } return results } -// GetAWSEC2NetworkAclEntryWithName retrieves all AWSEC2NetworkAclEntry items from an AWS CloudFormation template +// GetPinpointEmailConfigurationSetWithName retrieves all pinpointemail.ConfigurationSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2NetworkAclEntryWithName(name string) (*resources.AWSEC2NetworkAclEntry, error) { +func (t *Template) GetPinpointEmailConfigurationSetWithName(name string) (*pinpointemail.ConfigurationSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkAclEntry: + case *pinpointemail.ConfigurationSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2NetworkAclEntry not found", name) + return nil, fmt.Errorf("resource %q of type pinpointemail.ConfigurationSet not found", name) } -// GetAllAWSEC2NetworkInterfaceResources retrieves all AWSEC2NetworkInterface items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2NetworkInterfaceResources() map[string]*resources.AWSEC2NetworkInterface { - results := map[string]*resources.AWSEC2NetworkInterface{} +// GetAllApiGatewayV2ApiMappingResources retrieves all apigatewayv2.ApiMapping items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2ApiMappingResources() map[string]*apigatewayv2.ApiMapping { + results := map[string]*apigatewayv2.ApiMapping{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkInterface: + case *apigatewayv2.ApiMapping: results[name] = resource } } return results } -// GetAWSEC2NetworkInterfaceWithName retrieves all AWSEC2NetworkInterface items from an AWS CloudFormation template +// GetApiGatewayV2ApiMappingWithName retrieves all apigatewayv2.ApiMapping items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2NetworkInterfaceWithName(name string) (*resources.AWSEC2NetworkInterface, error) { +func (t *Template) GetApiGatewayV2ApiMappingWithName(name string) (*apigatewayv2.ApiMapping, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkInterface: + case *apigatewayv2.ApiMapping: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2NetworkInterface not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.ApiMapping not found", name) } -// GetAllAWSEC2NetworkInterfaceAttachmentResources retrieves all AWSEC2NetworkInterfaceAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2NetworkInterfaceAttachmentResources() map[string]*resources.AWSEC2NetworkInterfaceAttachment { - results := map[string]*resources.AWSEC2NetworkInterfaceAttachment{} +// GetAllKinesisAnalyticsApplicationReferenceDataSourceResources retrieves all kinesisanalytics.ApplicationReferenceDataSource items from an AWS CloudFormation template +func (t *Template) GetAllKinesisAnalyticsApplicationReferenceDataSourceResources() map[string]*kinesisanalytics.ApplicationReferenceDataSource { + results := map[string]*kinesisanalytics.ApplicationReferenceDataSource{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkInterfaceAttachment: + case *kinesisanalytics.ApplicationReferenceDataSource: results[name] = resource } } return results } -// GetAWSEC2NetworkInterfaceAttachmentWithName retrieves all AWSEC2NetworkInterfaceAttachment items from an AWS CloudFormation template +// GetKinesisAnalyticsApplicationReferenceDataSourceWithName retrieves all kinesisanalytics.ApplicationReferenceDataSource items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2NetworkInterfaceAttachmentWithName(name string) (*resources.AWSEC2NetworkInterfaceAttachment, error) { +func (t *Template) GetKinesisAnalyticsApplicationReferenceDataSourceWithName(name string) (*kinesisanalytics.ApplicationReferenceDataSource, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkInterfaceAttachment: + case *kinesisanalytics.ApplicationReferenceDataSource: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2NetworkInterfaceAttachment not found", name) + return nil, fmt.Errorf("resource %q of type kinesisanalytics.ApplicationReferenceDataSource not found", name) } -// GetAllAWSEC2NetworkInterfacePermissionResources retrieves all AWSEC2NetworkInterfacePermission items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2NetworkInterfacePermissionResources() map[string]*resources.AWSEC2NetworkInterfacePermission { - results := map[string]*resources.AWSEC2NetworkInterfacePermission{} +// GetAllApiGatewayRequestValidatorResources retrieves all apigateway.RequestValidator items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayRequestValidatorResources() map[string]*apigateway.RequestValidator { + results := map[string]*apigateway.RequestValidator{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkInterfacePermission: + case *apigateway.RequestValidator: results[name] = resource } } return results } -// GetAWSEC2NetworkInterfacePermissionWithName retrieves all AWSEC2NetworkInterfacePermission items from an AWS CloudFormation template +// GetApiGatewayRequestValidatorWithName retrieves all apigateway.RequestValidator items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2NetworkInterfacePermissionWithName(name string) (*resources.AWSEC2NetworkInterfacePermission, error) { +func (t *Template) GetApiGatewayRequestValidatorWithName(name string) (*apigateway.RequestValidator, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2NetworkInterfacePermission: + case *apigateway.RequestValidator: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2NetworkInterfacePermission not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.RequestValidator not found", name) } -// GetAllAWSEC2PlacementGroupResources retrieves all AWSEC2PlacementGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2PlacementGroupResources() map[string]*resources.AWSEC2PlacementGroup { - results := map[string]*resources.AWSEC2PlacementGroup{} +// GetAllEC2NetworkAclEntryResources retrieves all ec2.NetworkAclEntry items from an AWS CloudFormation template +func (t *Template) GetAllEC2NetworkAclEntryResources() map[string]*ec2.NetworkAclEntry { + results := map[string]*ec2.NetworkAclEntry{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2PlacementGroup: + case *ec2.NetworkAclEntry: results[name] = resource } } return results } -// GetAWSEC2PlacementGroupWithName retrieves all AWSEC2PlacementGroup items from an AWS CloudFormation template +// GetEC2NetworkAclEntryWithName retrieves all ec2.NetworkAclEntry items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2PlacementGroupWithName(name string) (*resources.AWSEC2PlacementGroup, error) { +func (t *Template) GetEC2NetworkAclEntryWithName(name string) (*ec2.NetworkAclEntry, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2PlacementGroup: + case *ec2.NetworkAclEntry: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2PlacementGroup not found", name) + return nil, fmt.Errorf("resource %q of type ec2.NetworkAclEntry not found", name) } -// GetAllAWSEC2RouteResources retrieves all AWSEC2Route items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2RouteResources() map[string]*resources.AWSEC2Route { - results := map[string]*resources.AWSEC2Route{} +// GetAllEC2InternetGatewayResources retrieves all ec2.InternetGateway items from an AWS CloudFormation template +func (t *Template) GetAllEC2InternetGatewayResources() map[string]*ec2.InternetGateway { + results := map[string]*ec2.InternetGateway{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2Route: + case *ec2.InternetGateway: results[name] = resource } } return results } -// GetAWSEC2RouteWithName retrieves all AWSEC2Route items from an AWS CloudFormation template +// GetEC2InternetGatewayWithName retrieves all ec2.InternetGateway items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2RouteWithName(name string) (*resources.AWSEC2Route, error) { +func (t *Template) GetEC2InternetGatewayWithName(name string) (*ec2.InternetGateway, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2Route: + case *ec2.InternetGateway: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2Route not found", name) + return nil, fmt.Errorf("resource %q of type ec2.InternetGateway not found", name) } -// GetAllAWSEC2RouteTableResources retrieves all AWSEC2RouteTable items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2RouteTableResources() map[string]*resources.AWSEC2RouteTable { - results := map[string]*resources.AWSEC2RouteTable{} +// GetAllPinpointCampaignResources retrieves all pinpoint.Campaign items from an AWS CloudFormation template +func (t *Template) GetAllPinpointCampaignResources() map[string]*pinpoint.Campaign { + results := map[string]*pinpoint.Campaign{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2RouteTable: + case *pinpoint.Campaign: results[name] = resource } } return results } -// GetAWSEC2RouteTableWithName retrieves all AWSEC2RouteTable items from an AWS CloudFormation template +// GetPinpointCampaignWithName retrieves all pinpoint.Campaign items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2RouteTableWithName(name string) (*resources.AWSEC2RouteTable, error) { +func (t *Template) GetPinpointCampaignWithName(name string) (*pinpoint.Campaign, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2RouteTable: + case *pinpoint.Campaign: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2RouteTable not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.Campaign not found", name) } -// GetAllAWSEC2SecurityGroupResources retrieves all AWSEC2SecurityGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2SecurityGroupResources() map[string]*resources.AWSEC2SecurityGroup { - results := map[string]*resources.AWSEC2SecurityGroup{} +// GetAllDocDBDBClusterParameterGroupResources retrieves all docdb.DBClusterParameterGroup items from an AWS CloudFormation template +func (t *Template) GetAllDocDBDBClusterParameterGroupResources() map[string]*docdb.DBClusterParameterGroup { + results := map[string]*docdb.DBClusterParameterGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2SecurityGroup: + case *docdb.DBClusterParameterGroup: results[name] = resource } } return results } -// GetAWSEC2SecurityGroupWithName retrieves all AWSEC2SecurityGroup items from an AWS CloudFormation template +// GetDocDBDBClusterParameterGroupWithName retrieves all docdb.DBClusterParameterGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2SecurityGroupWithName(name string) (*resources.AWSEC2SecurityGroup, error) { +func (t *Template) GetDocDBDBClusterParameterGroupWithName(name string) (*docdb.DBClusterParameterGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2SecurityGroup: + case *docdb.DBClusterParameterGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2SecurityGroup not found", name) + return nil, fmt.Errorf("resource %q of type docdb.DBClusterParameterGroup not found", name) } -// GetAllAWSEC2SecurityGroupEgressResources retrieves all AWSEC2SecurityGroupEgress items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2SecurityGroupEgressResources() map[string]*resources.AWSEC2SecurityGroupEgress { - results := map[string]*resources.AWSEC2SecurityGroupEgress{} +// GetAllGlueTriggerResources retrieves all glue.Trigger items from an AWS CloudFormation template +func (t *Template) GetAllGlueTriggerResources() map[string]*glue.Trigger { + results := map[string]*glue.Trigger{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2SecurityGroupEgress: + case *glue.Trigger: results[name] = resource } } return results } -// GetAWSEC2SecurityGroupEgressWithName retrieves all AWSEC2SecurityGroupEgress items from an AWS CloudFormation template +// GetGlueTriggerWithName retrieves all glue.Trigger items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2SecurityGroupEgressWithName(name string) (*resources.AWSEC2SecurityGroupEgress, error) { +func (t *Template) GetGlueTriggerWithName(name string) (*glue.Trigger, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2SecurityGroupEgress: + case *glue.Trigger: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2SecurityGroupEgress not found", name) + return nil, fmt.Errorf("resource %q of type glue.Trigger not found", name) } -// GetAllAWSEC2SecurityGroupIngressResources retrieves all AWSEC2SecurityGroupIngress items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2SecurityGroupIngressResources() map[string]*resources.AWSEC2SecurityGroupIngress { - results := map[string]*resources.AWSEC2SecurityGroupIngress{} +// GetAllCognitoUserPoolRiskConfigurationAttachmentResources retrieves all cognito.UserPoolRiskConfigurationAttachment items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolRiskConfigurationAttachmentResources() map[string]*cognito.UserPoolRiskConfigurationAttachment { + results := map[string]*cognito.UserPoolRiskConfigurationAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2SecurityGroupIngress: + case *cognito.UserPoolRiskConfigurationAttachment: results[name] = resource } } return results } -// GetAWSEC2SecurityGroupIngressWithName retrieves all AWSEC2SecurityGroupIngress items from an AWS CloudFormation template +// GetCognitoUserPoolRiskConfigurationAttachmentWithName retrieves all cognito.UserPoolRiskConfigurationAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2SecurityGroupIngressWithName(name string) (*resources.AWSEC2SecurityGroupIngress, error) { +func (t *Template) GetCognitoUserPoolRiskConfigurationAttachmentWithName(name string) (*cognito.UserPoolRiskConfigurationAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2SecurityGroupIngress: + case *cognito.UserPoolRiskConfigurationAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2SecurityGroupIngress not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolRiskConfigurationAttachment not found", name) } -// GetAllAWSEC2SpotFleetResources retrieves all AWSEC2SpotFleet items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2SpotFleetResources() map[string]*resources.AWSEC2SpotFleet { - results := map[string]*resources.AWSEC2SpotFleet{} +// GetAllSNSTopicResources retrieves all sns.Topic items from an AWS CloudFormation template +func (t *Template) GetAllSNSTopicResources() map[string]*sns.Topic { + results := map[string]*sns.Topic{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2SpotFleet: + case *sns.Topic: results[name] = resource } } return results } -// GetAWSEC2SpotFleetWithName retrieves all AWSEC2SpotFleet items from an AWS CloudFormation template +// GetSNSTopicWithName retrieves all sns.Topic items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2SpotFleetWithName(name string) (*resources.AWSEC2SpotFleet, error) { +func (t *Template) GetSNSTopicWithName(name string) (*sns.Topic, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2SpotFleet: + case *sns.Topic: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2SpotFleet not found", name) + return nil, fmt.Errorf("resource %q of type sns.Topic not found", name) } -// GetAllAWSEC2SubnetResources retrieves all AWSEC2Subnet items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2SubnetResources() map[string]*resources.AWSEC2Subnet { - results := map[string]*resources.AWSEC2Subnet{} +// GetAllEC2SecurityGroupEgressResources retrieves all ec2.SecurityGroupEgress items from an AWS CloudFormation template +func (t *Template) GetAllEC2SecurityGroupEgressResources() map[string]*ec2.SecurityGroupEgress { + results := map[string]*ec2.SecurityGroupEgress{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2Subnet: + case *ec2.SecurityGroupEgress: results[name] = resource } } return results } -// GetAWSEC2SubnetWithName retrieves all AWSEC2Subnet items from an AWS CloudFormation template +// GetEC2SecurityGroupEgressWithName retrieves all ec2.SecurityGroupEgress items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2SubnetWithName(name string) (*resources.AWSEC2Subnet, error) { +func (t *Template) GetEC2SecurityGroupEgressWithName(name string) (*ec2.SecurityGroupEgress, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2Subnet: + case *ec2.SecurityGroupEgress: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2Subnet not found", name) + return nil, fmt.Errorf("resource %q of type ec2.SecurityGroupEgress not found", name) } -// GetAllAWSEC2SubnetCidrBlockResources retrieves all AWSEC2SubnetCidrBlock items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2SubnetCidrBlockResources() map[string]*resources.AWSEC2SubnetCidrBlock { - results := map[string]*resources.AWSEC2SubnetCidrBlock{} +// GetAllLambdaVersionResources retrieves all lambda.Version items from an AWS CloudFormation template +func (t *Template) GetAllLambdaVersionResources() map[string]*lambda.Version { + results := map[string]*lambda.Version{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2SubnetCidrBlock: + case *lambda.Version: results[name] = resource } } return results } -// GetAWSEC2SubnetCidrBlockWithName retrieves all AWSEC2SubnetCidrBlock items from an AWS CloudFormation template +// GetLambdaVersionWithName retrieves all lambda.Version items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2SubnetCidrBlockWithName(name string) (*resources.AWSEC2SubnetCidrBlock, error) { +func (t *Template) GetLambdaVersionWithName(name string) (*lambda.Version, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2SubnetCidrBlock: + case *lambda.Version: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2SubnetCidrBlock not found", name) + return nil, fmt.Errorf("resource %q of type lambda.Version not found", name) } -// GetAllAWSEC2SubnetNetworkAclAssociationResources retrieves all AWSEC2SubnetNetworkAclAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2SubnetNetworkAclAssociationResources() map[string]*resources.AWSEC2SubnetNetworkAclAssociation { - results := map[string]*resources.AWSEC2SubnetNetworkAclAssociation{} +// GetAllOpsWorksVolumeResources retrieves all opsworks.Volume items from an AWS CloudFormation template +func (t *Template) GetAllOpsWorksVolumeResources() map[string]*opsworks.Volume { + results := map[string]*opsworks.Volume{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2SubnetNetworkAclAssociation: + case *opsworks.Volume: results[name] = resource } } return results } -// GetAWSEC2SubnetNetworkAclAssociationWithName retrieves all AWSEC2SubnetNetworkAclAssociation items from an AWS CloudFormation template +// GetOpsWorksVolumeWithName retrieves all opsworks.Volume items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2SubnetNetworkAclAssociationWithName(name string) (*resources.AWSEC2SubnetNetworkAclAssociation, error) { +func (t *Template) GetOpsWorksVolumeWithName(name string) (*opsworks.Volume, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2SubnetNetworkAclAssociation: + case *opsworks.Volume: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2SubnetNetworkAclAssociation not found", name) + return nil, fmt.Errorf("resource %q of type opsworks.Volume not found", name) } -// GetAllAWSEC2SubnetRouteTableAssociationResources retrieves all AWSEC2SubnetRouteTableAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2SubnetRouteTableAssociationResources() map[string]*resources.AWSEC2SubnetRouteTableAssociation { - results := map[string]*resources.AWSEC2SubnetRouteTableAssociation{} +// GetAllConfigRemediationConfigurationResources retrieves all config.RemediationConfiguration items from an AWS CloudFormation template +func (t *Template) GetAllConfigRemediationConfigurationResources() map[string]*config.RemediationConfiguration { + results := map[string]*config.RemediationConfiguration{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2SubnetRouteTableAssociation: + case *config.RemediationConfiguration: results[name] = resource } } return results } -// GetAWSEC2SubnetRouteTableAssociationWithName retrieves all AWSEC2SubnetRouteTableAssociation items from an AWS CloudFormation template +// GetConfigRemediationConfigurationWithName retrieves all config.RemediationConfiguration items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2SubnetRouteTableAssociationWithName(name string) (*resources.AWSEC2SubnetRouteTableAssociation, error) { +func (t *Template) GetConfigRemediationConfigurationWithName(name string) (*config.RemediationConfiguration, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2SubnetRouteTableAssociation: + case *config.RemediationConfiguration: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2SubnetRouteTableAssociation not found", name) + return nil, fmt.Errorf("resource %q of type config.RemediationConfiguration not found", name) } -// GetAllAWSEC2TrafficMirrorFilterResources retrieves all AWSEC2TrafficMirrorFilter items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TrafficMirrorFilterResources() map[string]*resources.AWSEC2TrafficMirrorFilter { - results := map[string]*resources.AWSEC2TrafficMirrorFilter{} +// GetAllServiceCatalogAcceptedPortfolioShareResources retrieves all servicecatalog.AcceptedPortfolioShare items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogAcceptedPortfolioShareResources() map[string]*servicecatalog.AcceptedPortfolioShare { + results := map[string]*servicecatalog.AcceptedPortfolioShare{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TrafficMirrorFilter: + case *servicecatalog.AcceptedPortfolioShare: results[name] = resource } } return results } -// GetAWSEC2TrafficMirrorFilterWithName retrieves all AWSEC2TrafficMirrorFilter items from an AWS CloudFormation template +// GetServiceCatalogAcceptedPortfolioShareWithName retrieves all servicecatalog.AcceptedPortfolioShare items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TrafficMirrorFilterWithName(name string) (*resources.AWSEC2TrafficMirrorFilter, error) { +func (t *Template) GetServiceCatalogAcceptedPortfolioShareWithName(name string) (*servicecatalog.AcceptedPortfolioShare, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TrafficMirrorFilter: + case *servicecatalog.AcceptedPortfolioShare: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TrafficMirrorFilter not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.AcceptedPortfolioShare not found", name) } -// GetAllAWSEC2TrafficMirrorFilterRuleResources retrieves all AWSEC2TrafficMirrorFilterRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TrafficMirrorFilterRuleResources() map[string]*resources.AWSEC2TrafficMirrorFilterRule { - results := map[string]*resources.AWSEC2TrafficMirrorFilterRule{} +// GetAllEC2VPNGatewayResources retrieves all ec2.VPNGateway items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPNGatewayResources() map[string]*ec2.VPNGateway { + results := map[string]*ec2.VPNGateway{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TrafficMirrorFilterRule: + case *ec2.VPNGateway: results[name] = resource } } return results } -// GetAWSEC2TrafficMirrorFilterRuleWithName retrieves all AWSEC2TrafficMirrorFilterRule items from an AWS CloudFormation template +// GetEC2VPNGatewayWithName retrieves all ec2.VPNGateway items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TrafficMirrorFilterRuleWithName(name string) (*resources.AWSEC2TrafficMirrorFilterRule, error) { +func (t *Template) GetEC2VPNGatewayWithName(name string) (*ec2.VPNGateway, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TrafficMirrorFilterRule: + case *ec2.VPNGateway: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TrafficMirrorFilterRule not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPNGateway not found", name) } -// GetAllAWSEC2TrafficMirrorSessionResources retrieves all AWSEC2TrafficMirrorSession items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TrafficMirrorSessionResources() map[string]*resources.AWSEC2TrafficMirrorSession { - results := map[string]*resources.AWSEC2TrafficMirrorSession{} +// GetAllNeptuneDBParameterGroupResources retrieves all neptune.DBParameterGroup items from an AWS CloudFormation template +func (t *Template) GetAllNeptuneDBParameterGroupResources() map[string]*neptune.DBParameterGroup { + results := map[string]*neptune.DBParameterGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TrafficMirrorSession: + case *neptune.DBParameterGroup: results[name] = resource } } return results } -// GetAWSEC2TrafficMirrorSessionWithName retrieves all AWSEC2TrafficMirrorSession items from an AWS CloudFormation template +// GetNeptuneDBParameterGroupWithName retrieves all neptune.DBParameterGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TrafficMirrorSessionWithName(name string) (*resources.AWSEC2TrafficMirrorSession, error) { +func (t *Template) GetNeptuneDBParameterGroupWithName(name string) (*neptune.DBParameterGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TrafficMirrorSession: + case *neptune.DBParameterGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TrafficMirrorSession not found", name) + return nil, fmt.Errorf("resource %q of type neptune.DBParameterGroup not found", name) } -// GetAllAWSEC2TrafficMirrorTargetResources retrieves all AWSEC2TrafficMirrorTarget items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TrafficMirrorTargetResources() map[string]*resources.AWSEC2TrafficMirrorTarget { - results := map[string]*resources.AWSEC2TrafficMirrorTarget{} +// GetAllElastiCacheParameterGroupResources retrieves all elasticache.ParameterGroup items from an AWS CloudFormation template +func (t *Template) GetAllElastiCacheParameterGroupResources() map[string]*elasticache.ParameterGroup { + results := map[string]*elasticache.ParameterGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TrafficMirrorTarget: + case *elasticache.ParameterGroup: results[name] = resource } } return results } -// GetAWSEC2TrafficMirrorTargetWithName retrieves all AWSEC2TrafficMirrorTarget items from an AWS CloudFormation template +// GetElastiCacheParameterGroupWithName retrieves all elasticache.ParameterGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TrafficMirrorTargetWithName(name string) (*resources.AWSEC2TrafficMirrorTarget, error) { +func (t *Template) GetElastiCacheParameterGroupWithName(name string) (*elasticache.ParameterGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TrafficMirrorTarget: + case *elasticache.ParameterGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TrafficMirrorTarget not found", name) + return nil, fmt.Errorf("resource %q of type elasticache.ParameterGroup not found", name) } -// GetAllAWSEC2TransitGatewayResources retrieves all AWSEC2TransitGateway items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TransitGatewayResources() map[string]*resources.AWSEC2TransitGateway { - results := map[string]*resources.AWSEC2TransitGateway{} +// GetAllRoboMakerRobotApplicationVersionResources retrieves all robomaker.RobotApplicationVersion items from an AWS CloudFormation template +func (t *Template) GetAllRoboMakerRobotApplicationVersionResources() map[string]*robomaker.RobotApplicationVersion { + results := map[string]*robomaker.RobotApplicationVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGateway: + case *robomaker.RobotApplicationVersion: results[name] = resource } } return results } -// GetAWSEC2TransitGatewayWithName retrieves all AWSEC2TransitGateway items from an AWS CloudFormation template +// GetRoboMakerRobotApplicationVersionWithName retrieves all robomaker.RobotApplicationVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TransitGatewayWithName(name string) (*resources.AWSEC2TransitGateway, error) { +func (t *Template) GetRoboMakerRobotApplicationVersionWithName(name string) (*robomaker.RobotApplicationVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGateway: + case *robomaker.RobotApplicationVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TransitGateway not found", name) + return nil, fmt.Errorf("resource %q of type robomaker.RobotApplicationVersion not found", name) } -// GetAllAWSEC2TransitGatewayAttachmentResources retrieves all AWSEC2TransitGatewayAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TransitGatewayAttachmentResources() map[string]*resources.AWSEC2TransitGatewayAttachment { - results := map[string]*resources.AWSEC2TransitGatewayAttachment{} +// GetAllGlueJobResources retrieves all glue.Job items from an AWS CloudFormation template +func (t *Template) GetAllGlueJobResources() map[string]*glue.Job { + results := map[string]*glue.Job{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayAttachment: + case *glue.Job: results[name] = resource } } return results } -// GetAWSEC2TransitGatewayAttachmentWithName retrieves all AWSEC2TransitGatewayAttachment items from an AWS CloudFormation template +// GetGlueJobWithName retrieves all glue.Job items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TransitGatewayAttachmentWithName(name string) (*resources.AWSEC2TransitGatewayAttachment, error) { +func (t *Template) GetGlueJobWithName(name string) (*glue.Job, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayAttachment: + case *glue.Job: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TransitGatewayAttachment not found", name) + return nil, fmt.Errorf("resource %q of type glue.Job not found", name) } -// GetAllAWSEC2TransitGatewayRouteResources retrieves all AWSEC2TransitGatewayRoute items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TransitGatewayRouteResources() map[string]*resources.AWSEC2TransitGatewayRoute { - results := map[string]*resources.AWSEC2TransitGatewayRoute{} +// GetAllGlueCrawlerResources retrieves all glue.Crawler items from an AWS CloudFormation template +func (t *Template) GetAllGlueCrawlerResources() map[string]*glue.Crawler { + results := map[string]*glue.Crawler{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayRoute: + case *glue.Crawler: results[name] = resource } } return results } -// GetAWSEC2TransitGatewayRouteWithName retrieves all AWSEC2TransitGatewayRoute items from an AWS CloudFormation template +// GetGlueCrawlerWithName retrieves all glue.Crawler items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TransitGatewayRouteWithName(name string) (*resources.AWSEC2TransitGatewayRoute, error) { +func (t *Template) GetGlueCrawlerWithName(name string) (*glue.Crawler, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayRoute: + case *glue.Crawler: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TransitGatewayRoute not found", name) + return nil, fmt.Errorf("resource %q of type glue.Crawler not found", name) } -// GetAllAWSEC2TransitGatewayRouteTableResources retrieves all AWSEC2TransitGatewayRouteTable items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TransitGatewayRouteTableResources() map[string]*resources.AWSEC2TransitGatewayRouteTable { - results := map[string]*resources.AWSEC2TransitGatewayRouteTable{} +// GetAllRoboMakerFleetResources retrieves all robomaker.Fleet items from an AWS CloudFormation template +func (t *Template) GetAllRoboMakerFleetResources() map[string]*robomaker.Fleet { + results := map[string]*robomaker.Fleet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayRouteTable: + case *robomaker.Fleet: results[name] = resource } } return results } -// GetAWSEC2TransitGatewayRouteTableWithName retrieves all AWSEC2TransitGatewayRouteTable items from an AWS CloudFormation template +// GetRoboMakerFleetWithName retrieves all robomaker.Fleet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TransitGatewayRouteTableWithName(name string) (*resources.AWSEC2TransitGatewayRouteTable, error) { +func (t *Template) GetRoboMakerFleetWithName(name string) (*robomaker.Fleet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayRouteTable: + case *robomaker.Fleet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TransitGatewayRouteTable not found", name) + return nil, fmt.Errorf("resource %q of type robomaker.Fleet not found", name) } -// GetAllAWSEC2TransitGatewayRouteTableAssociationResources retrieves all AWSEC2TransitGatewayRouteTableAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TransitGatewayRouteTableAssociationResources() map[string]*resources.AWSEC2TransitGatewayRouteTableAssociation { - results := map[string]*resources.AWSEC2TransitGatewayRouteTableAssociation{} +// GetAllEC2SubnetRouteTableAssociationResources retrieves all ec2.SubnetRouteTableAssociation items from an AWS CloudFormation template +func (t *Template) GetAllEC2SubnetRouteTableAssociationResources() map[string]*ec2.SubnetRouteTableAssociation { + results := map[string]*ec2.SubnetRouteTableAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayRouteTableAssociation: + case *ec2.SubnetRouteTableAssociation: results[name] = resource } } return results } -// GetAWSEC2TransitGatewayRouteTableAssociationWithName retrieves all AWSEC2TransitGatewayRouteTableAssociation items from an AWS CloudFormation template +// GetEC2SubnetRouteTableAssociationWithName retrieves all ec2.SubnetRouteTableAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TransitGatewayRouteTableAssociationWithName(name string) (*resources.AWSEC2TransitGatewayRouteTableAssociation, error) { +func (t *Template) GetEC2SubnetRouteTableAssociationWithName(name string) (*ec2.SubnetRouteTableAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayRouteTableAssociation: + case *ec2.SubnetRouteTableAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TransitGatewayRouteTableAssociation not found", name) + return nil, fmt.Errorf("resource %q of type ec2.SubnetRouteTableAssociation not found", name) } -// GetAllAWSEC2TransitGatewayRouteTablePropagationResources retrieves all AWSEC2TransitGatewayRouteTablePropagation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2TransitGatewayRouteTablePropagationResources() map[string]*resources.AWSEC2TransitGatewayRouteTablePropagation { - results := map[string]*resources.AWSEC2TransitGatewayRouteTablePropagation{} +// GetAllLakeFormationDataLakeSettingsResources retrieves all lakeformation.DataLakeSettings items from an AWS CloudFormation template +func (t *Template) GetAllLakeFormationDataLakeSettingsResources() map[string]*lakeformation.DataLakeSettings { + results := map[string]*lakeformation.DataLakeSettings{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayRouteTablePropagation: + case *lakeformation.DataLakeSettings: results[name] = resource } } return results } -// GetAWSEC2TransitGatewayRouteTablePropagationWithName retrieves all AWSEC2TransitGatewayRouteTablePropagation items from an AWS CloudFormation template +// GetLakeFormationDataLakeSettingsWithName retrieves all lakeformation.DataLakeSettings items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2TransitGatewayRouteTablePropagationWithName(name string) (*resources.AWSEC2TransitGatewayRouteTablePropagation, error) { +func (t *Template) GetLakeFormationDataLakeSettingsWithName(name string) (*lakeformation.DataLakeSettings, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2TransitGatewayRouteTablePropagation: + case *lakeformation.DataLakeSettings: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2TransitGatewayRouteTablePropagation not found", name) + return nil, fmt.Errorf("resource %q of type lakeformation.DataLakeSettings not found", name) } -// GetAllAWSEC2VPCResources retrieves all AWSEC2VPC items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCResources() map[string]*resources.AWSEC2VPC { - results := map[string]*resources.AWSEC2VPC{} +// GetAllElasticLoadBalancingV2ListenerCertificateResources retrieves all elasticloadbalancingv2.ListenerCertificate items from an AWS CloudFormation template +func (t *Template) GetAllElasticLoadBalancingV2ListenerCertificateResources() map[string]*elasticloadbalancingv2.ListenerCertificate { + results := map[string]*elasticloadbalancingv2.ListenerCertificate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPC: + case *elasticloadbalancingv2.ListenerCertificate: results[name] = resource } } return results } -// GetAWSEC2VPCWithName retrieves all AWSEC2VPC items from an AWS CloudFormation template +// GetElasticLoadBalancingV2ListenerCertificateWithName retrieves all elasticloadbalancingv2.ListenerCertificate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCWithName(name string) (*resources.AWSEC2VPC, error) { +func (t *Template) GetElasticLoadBalancingV2ListenerCertificateWithName(name string) (*elasticloadbalancingv2.ListenerCertificate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPC: + case *elasticloadbalancingv2.ListenerCertificate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPC not found", name) + return nil, fmt.Errorf("resource %q of type elasticloadbalancingv2.ListenerCertificate not found", name) } -// GetAllAWSEC2VPCCidrBlockResources retrieves all AWSEC2VPCCidrBlock items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCCidrBlockResources() map[string]*resources.AWSEC2VPCCidrBlock { - results := map[string]*resources.AWSEC2VPCCidrBlock{} +// GetAllGlueSecurityConfigurationResources retrieves all glue.SecurityConfiguration items from an AWS CloudFormation template +func (t *Template) GetAllGlueSecurityConfigurationResources() map[string]*glue.SecurityConfiguration { + results := map[string]*glue.SecurityConfiguration{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPCCidrBlock: + case *glue.SecurityConfiguration: results[name] = resource } } return results } -// GetAWSEC2VPCCidrBlockWithName retrieves all AWSEC2VPCCidrBlock items from an AWS CloudFormation template +// GetGlueSecurityConfigurationWithName retrieves all glue.SecurityConfiguration items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCCidrBlockWithName(name string) (*resources.AWSEC2VPCCidrBlock, error) { +func (t *Template) GetGlueSecurityConfigurationWithName(name string) (*glue.SecurityConfiguration, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPCCidrBlock: + case *glue.SecurityConfiguration: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPCCidrBlock not found", name) + return nil, fmt.Errorf("resource %q of type glue.SecurityConfiguration not found", name) } -// GetAllAWSEC2VPCDHCPOptionsAssociationResources retrieves all AWSEC2VPCDHCPOptionsAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCDHCPOptionsAssociationResources() map[string]*resources.AWSEC2VPCDHCPOptionsAssociation { - results := map[string]*resources.AWSEC2VPCDHCPOptionsAssociation{} +// GetAllCognitoUserPoolGroupResources retrieves all cognito.UserPoolGroup items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolGroupResources() map[string]*cognito.UserPoolGroup { + results := map[string]*cognito.UserPoolGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPCDHCPOptionsAssociation: + case *cognito.UserPoolGroup: results[name] = resource } } return results } -// GetAWSEC2VPCDHCPOptionsAssociationWithName retrieves all AWSEC2VPCDHCPOptionsAssociation items from an AWS CloudFormation template +// GetCognitoUserPoolGroupWithName retrieves all cognito.UserPoolGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCDHCPOptionsAssociationWithName(name string) (*resources.AWSEC2VPCDHCPOptionsAssociation, error) { +func (t *Template) GetCognitoUserPoolGroupWithName(name string) (*cognito.UserPoolGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPCDHCPOptionsAssociation: + case *cognito.UserPoolGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPCDHCPOptionsAssociation not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolGroup not found", name) } -// GetAllAWSEC2VPCEndpointResources retrieves all AWSEC2VPCEndpoint items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCEndpointResources() map[string]*resources.AWSEC2VPCEndpoint { - results := map[string]*resources.AWSEC2VPCEndpoint{} +// GetAllIoTAnalyticsChannelResources retrieves all iotanalytics.Channel items from an AWS CloudFormation template +func (t *Template) GetAllIoTAnalyticsChannelResources() map[string]*iotanalytics.Channel { + results := map[string]*iotanalytics.Channel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPCEndpoint: + case *iotanalytics.Channel: results[name] = resource } } return results } -// GetAWSEC2VPCEndpointWithName retrieves all AWSEC2VPCEndpoint items from an AWS CloudFormation template +// GetIoTAnalyticsChannelWithName retrieves all iotanalytics.Channel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCEndpointWithName(name string) (*resources.AWSEC2VPCEndpoint, error) { +func (t *Template) GetIoTAnalyticsChannelWithName(name string) (*iotanalytics.Channel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPCEndpoint: + case *iotanalytics.Channel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPCEndpoint not found", name) + return nil, fmt.Errorf("resource %q of type iotanalytics.Channel not found", name) } -// GetAllAWSEC2VPCEndpointConnectionNotificationResources retrieves all AWSEC2VPCEndpointConnectionNotification items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCEndpointConnectionNotificationResources() map[string]*resources.AWSEC2VPCEndpointConnectionNotification { - results := map[string]*resources.AWSEC2VPCEndpointConnectionNotification{} +// GetAllGreengrassGroupResources retrieves all greengrass.Group items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassGroupResources() map[string]*greengrass.Group { + results := map[string]*greengrass.Group{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPCEndpointConnectionNotification: + case *greengrass.Group: results[name] = resource } } return results } -// GetAWSEC2VPCEndpointConnectionNotificationWithName retrieves all AWSEC2VPCEndpointConnectionNotification items from an AWS CloudFormation template +// GetGreengrassGroupWithName retrieves all greengrass.Group items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCEndpointConnectionNotificationWithName(name string) (*resources.AWSEC2VPCEndpointConnectionNotification, error) { +func (t *Template) GetGreengrassGroupWithName(name string) (*greengrass.Group, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPCEndpointConnectionNotification: + case *greengrass.Group: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPCEndpointConnectionNotification not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.Group not found", name) } -// GetAllAWSEC2VPCEndpointServiceResources retrieves all AWSEC2VPCEndpointService items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCEndpointServiceResources() map[string]*resources.AWSEC2VPCEndpointService { - results := map[string]*resources.AWSEC2VPCEndpointService{} +// GetAllMediaLiveInputSecurityGroupResources retrieves all medialive.InputSecurityGroup items from an AWS CloudFormation template +func (t *Template) GetAllMediaLiveInputSecurityGroupResources() map[string]*medialive.InputSecurityGroup { + results := map[string]*medialive.InputSecurityGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPCEndpointService: + case *medialive.InputSecurityGroup: results[name] = resource } } return results } -// GetAWSEC2VPCEndpointServiceWithName retrieves all AWSEC2VPCEndpointService items from an AWS CloudFormation template +// GetMediaLiveInputSecurityGroupWithName retrieves all medialive.InputSecurityGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCEndpointServiceWithName(name string) (*resources.AWSEC2VPCEndpointService, error) { +func (t *Template) GetMediaLiveInputSecurityGroupWithName(name string) (*medialive.InputSecurityGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPCEndpointService: + case *medialive.InputSecurityGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPCEndpointService not found", name) + return nil, fmt.Errorf("resource %q of type medialive.InputSecurityGroup not found", name) } -// GetAllAWSEC2VPCEndpointServicePermissionsResources retrieves all AWSEC2VPCEndpointServicePermissions items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCEndpointServicePermissionsResources() map[string]*resources.AWSEC2VPCEndpointServicePermissions { - results := map[string]*resources.AWSEC2VPCEndpointServicePermissions{} +// GetAllWAFWebACLResources retrieves all waf.WebACL items from an AWS CloudFormation template +func (t *Template) GetAllWAFWebACLResources() map[string]*waf.WebACL { + results := map[string]*waf.WebACL{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPCEndpointServicePermissions: + case *waf.WebACL: results[name] = resource } } return results } -// GetAWSEC2VPCEndpointServicePermissionsWithName retrieves all AWSEC2VPCEndpointServicePermissions items from an AWS CloudFormation template +// GetWAFWebACLWithName retrieves all waf.WebACL items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCEndpointServicePermissionsWithName(name string) (*resources.AWSEC2VPCEndpointServicePermissions, error) { +func (t *Template) GetWAFWebACLWithName(name string) (*waf.WebACL, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPCEndpointServicePermissions: + case *waf.WebACL: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPCEndpointServicePermissions not found", name) + return nil, fmt.Errorf("resource %q of type waf.WebACL not found", name) } -// GetAllAWSEC2VPCGatewayAttachmentResources retrieves all AWSEC2VPCGatewayAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCGatewayAttachmentResources() map[string]*resources.AWSEC2VPCGatewayAttachment { - results := map[string]*resources.AWSEC2VPCGatewayAttachment{} +// GetAllRoute53RecordSetGroupResources retrieves all route53.RecordSetGroup items from an AWS CloudFormation template +func (t *Template) GetAllRoute53RecordSetGroupResources() map[string]*route53.RecordSetGroup { + results := map[string]*route53.RecordSetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPCGatewayAttachment: + case *route53.RecordSetGroup: results[name] = resource } } return results } -// GetAWSEC2VPCGatewayAttachmentWithName retrieves all AWSEC2VPCGatewayAttachment items from an AWS CloudFormation template +// GetRoute53RecordSetGroupWithName retrieves all route53.RecordSetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCGatewayAttachmentWithName(name string) (*resources.AWSEC2VPCGatewayAttachment, error) { +func (t *Template) GetRoute53RecordSetGroupWithName(name string) (*route53.RecordSetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPCGatewayAttachment: + case *route53.RecordSetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPCGatewayAttachment not found", name) + return nil, fmt.Errorf("resource %q of type route53.RecordSetGroup not found", name) } -// GetAllAWSEC2VPCPeeringConnectionResources retrieves all AWSEC2VPCPeeringConnection items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPCPeeringConnectionResources() map[string]*resources.AWSEC2VPCPeeringConnection { - results := map[string]*resources.AWSEC2VPCPeeringConnection{} +// GetAllApiGatewayMethodResources retrieves all apigateway.Method items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayMethodResources() map[string]*apigateway.Method { + results := map[string]*apigateway.Method{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPCPeeringConnection: + case *apigateway.Method: results[name] = resource } } return results } -// GetAWSEC2VPCPeeringConnectionWithName retrieves all AWSEC2VPCPeeringConnection items from an AWS CloudFormation template +// GetApiGatewayMethodWithName retrieves all apigateway.Method items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPCPeeringConnectionWithName(name string) (*resources.AWSEC2VPCPeeringConnection, error) { +func (t *Template) GetApiGatewayMethodWithName(name string) (*apigateway.Method, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPCPeeringConnection: + case *apigateway.Method: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPCPeeringConnection not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.Method not found", name) } -// GetAllAWSEC2VPNConnectionResources retrieves all AWSEC2VPNConnection items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPNConnectionResources() map[string]*resources.AWSEC2VPNConnection { - results := map[string]*resources.AWSEC2VPNConnection{} +// GetAllWAFIPSetResources retrieves all waf.IPSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFIPSetResources() map[string]*waf.IPSet { + results := map[string]*waf.IPSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPNConnection: + case *waf.IPSet: results[name] = resource } } return results } -// GetAWSEC2VPNConnectionWithName retrieves all AWSEC2VPNConnection items from an AWS CloudFormation template +// GetWAFIPSetWithName retrieves all waf.IPSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPNConnectionWithName(name string) (*resources.AWSEC2VPNConnection, error) { +func (t *Template) GetWAFIPSetWithName(name string) (*waf.IPSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPNConnection: + case *waf.IPSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPNConnection not found", name) + return nil, fmt.Errorf("resource %q of type waf.IPSet not found", name) } -// GetAllAWSEC2VPNConnectionRouteResources retrieves all AWSEC2VPNConnectionRoute items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPNConnectionRouteResources() map[string]*resources.AWSEC2VPNConnectionRoute { - results := map[string]*resources.AWSEC2VPNConnectionRoute{} +// GetAllAppSyncGraphQLApiResources retrieves all appsync.GraphQLApi items from an AWS CloudFormation template +func (t *Template) GetAllAppSyncGraphQLApiResources() map[string]*appsync.GraphQLApi { + results := map[string]*appsync.GraphQLApi{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPNConnectionRoute: + case *appsync.GraphQLApi: results[name] = resource } } return results } -// GetAWSEC2VPNConnectionRouteWithName retrieves all AWSEC2VPNConnectionRoute items from an AWS CloudFormation template +// GetAppSyncGraphQLApiWithName retrieves all appsync.GraphQLApi items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPNConnectionRouteWithName(name string) (*resources.AWSEC2VPNConnectionRoute, error) { +func (t *Template) GetAppSyncGraphQLApiWithName(name string) (*appsync.GraphQLApi, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPNConnectionRoute: + case *appsync.GraphQLApi: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPNConnectionRoute not found", name) + return nil, fmt.Errorf("resource %q of type appsync.GraphQLApi not found", name) } -// GetAllAWSEC2VPNGatewayResources retrieves all AWSEC2VPNGateway items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPNGatewayResources() map[string]*resources.AWSEC2VPNGateway { - results := map[string]*resources.AWSEC2VPNGateway{} +// GetAllCloudFrontDistributionResources retrieves all cloudfront.Distribution items from an AWS CloudFormation template +func (t *Template) GetAllCloudFrontDistributionResources() map[string]*cloudfront.Distribution { + results := map[string]*cloudfront.Distribution{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPNGateway: + case *cloudfront.Distribution: results[name] = resource } } return results } -// GetAWSEC2VPNGatewayWithName retrieves all AWSEC2VPNGateway items from an AWS CloudFormation template +// GetCloudFrontDistributionWithName retrieves all cloudfront.Distribution items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPNGatewayWithName(name string) (*resources.AWSEC2VPNGateway, error) { +func (t *Template) GetCloudFrontDistributionWithName(name string) (*cloudfront.Distribution, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPNGateway: + case *cloudfront.Distribution: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPNGateway not found", name) + return nil, fmt.Errorf("resource %q of type cloudfront.Distribution not found", name) } -// GetAllAWSEC2VPNGatewayRoutePropagationResources retrieves all AWSEC2VPNGatewayRoutePropagation items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VPNGatewayRoutePropagationResources() map[string]*resources.AWSEC2VPNGatewayRoutePropagation { - results := map[string]*resources.AWSEC2VPNGatewayRoutePropagation{} +// GetAllCognitoUserPoolResources retrieves all cognito.UserPool items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolResources() map[string]*cognito.UserPool { + results := map[string]*cognito.UserPool{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VPNGatewayRoutePropagation: + case *cognito.UserPool: results[name] = resource } } return results } -// GetAWSEC2VPNGatewayRoutePropagationWithName retrieves all AWSEC2VPNGatewayRoutePropagation items from an AWS CloudFormation template +// GetCognitoUserPoolWithName retrieves all cognito.UserPool items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VPNGatewayRoutePropagationWithName(name string) (*resources.AWSEC2VPNGatewayRoutePropagation, error) { +func (t *Template) GetCognitoUserPoolWithName(name string) (*cognito.UserPool, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VPNGatewayRoutePropagation: + case *cognito.UserPool: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VPNGatewayRoutePropagation not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPool not found", name) } -// GetAllAWSEC2VolumeResources retrieves all AWSEC2Volume items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VolumeResources() map[string]*resources.AWSEC2Volume { - results := map[string]*resources.AWSEC2Volume{} +// GetAllPinpointEmailDedicatedIpPoolResources retrieves all pinpointemail.DedicatedIpPool items from an AWS CloudFormation template +func (t *Template) GetAllPinpointEmailDedicatedIpPoolResources() map[string]*pinpointemail.DedicatedIpPool { + results := map[string]*pinpointemail.DedicatedIpPool{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2Volume: + case *pinpointemail.DedicatedIpPool: results[name] = resource } } return results } -// GetAWSEC2VolumeWithName retrieves all AWSEC2Volume items from an AWS CloudFormation template +// GetPinpointEmailDedicatedIpPoolWithName retrieves all pinpointemail.DedicatedIpPool items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VolumeWithName(name string) (*resources.AWSEC2Volume, error) { +func (t *Template) GetPinpointEmailDedicatedIpPoolWithName(name string) (*pinpointemail.DedicatedIpPool, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2Volume: + case *pinpointemail.DedicatedIpPool: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2Volume not found", name) + return nil, fmt.Errorf("resource %q of type pinpointemail.DedicatedIpPool not found", name) } -// GetAllAWSEC2VolumeAttachmentResources retrieves all AWSEC2VolumeAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSEC2VolumeAttachmentResources() map[string]*resources.AWSEC2VolumeAttachment { - results := map[string]*resources.AWSEC2VolumeAttachment{} +// GetAllRDSOptionGroupResources retrieves all rds.OptionGroup items from an AWS CloudFormation template +func (t *Template) GetAllRDSOptionGroupResources() map[string]*rds.OptionGroup { + results := map[string]*rds.OptionGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEC2VolumeAttachment: + case *rds.OptionGroup: results[name] = resource } } return results } -// GetAWSEC2VolumeAttachmentWithName retrieves all AWSEC2VolumeAttachment items from an AWS CloudFormation template +// GetRDSOptionGroupWithName retrieves all rds.OptionGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEC2VolumeAttachmentWithName(name string) (*resources.AWSEC2VolumeAttachment, error) { +func (t *Template) GetRDSOptionGroupWithName(name string) (*rds.OptionGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEC2VolumeAttachment: + case *rds.OptionGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEC2VolumeAttachment not found", name) + return nil, fmt.Errorf("resource %q of type rds.OptionGroup not found", name) } -// GetAllAWSECRRepositoryResources retrieves all AWSECRRepository items from an AWS CloudFormation template -func (t *Template) GetAllAWSECRRepositoryResources() map[string]*resources.AWSECRRepository { - results := map[string]*resources.AWSECRRepository{} +// GetAllInspectorAssessmentTemplateResources retrieves all inspector.AssessmentTemplate items from an AWS CloudFormation template +func (t *Template) GetAllInspectorAssessmentTemplateResources() map[string]*inspector.AssessmentTemplate { + results := map[string]*inspector.AssessmentTemplate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSECRRepository: + case *inspector.AssessmentTemplate: results[name] = resource } } return results } -// GetAWSECRRepositoryWithName retrieves all AWSECRRepository items from an AWS CloudFormation template +// GetInspectorAssessmentTemplateWithName retrieves all inspector.AssessmentTemplate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSECRRepositoryWithName(name string) (*resources.AWSECRRepository, error) { +func (t *Template) GetInspectorAssessmentTemplateWithName(name string) (*inspector.AssessmentTemplate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSECRRepository: + case *inspector.AssessmentTemplate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSECRRepository not found", name) + return nil, fmt.Errorf("resource %q of type inspector.AssessmentTemplate not found", name) } -// GetAllAWSECSClusterResources retrieves all AWSECSCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSECSClusterResources() map[string]*resources.AWSECSCluster { - results := map[string]*resources.AWSECSCluster{} +// GetAllWAFRegionalSqlInjectionMatchSetResources retrieves all wafregional.SqlInjectionMatchSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalSqlInjectionMatchSetResources() map[string]*wafregional.SqlInjectionMatchSet { + results := map[string]*wafregional.SqlInjectionMatchSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSECSCluster: + case *wafregional.SqlInjectionMatchSet: results[name] = resource } } return results } -// GetAWSECSClusterWithName retrieves all AWSECSCluster items from an AWS CloudFormation template +// GetWAFRegionalSqlInjectionMatchSetWithName retrieves all wafregional.SqlInjectionMatchSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSECSClusterWithName(name string) (*resources.AWSECSCluster, error) { +func (t *Template) GetWAFRegionalSqlInjectionMatchSetWithName(name string) (*wafregional.SqlInjectionMatchSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSECSCluster: + case *wafregional.SqlInjectionMatchSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSECSCluster not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.SqlInjectionMatchSet not found", name) } -// GetAllAWSECSServiceResources retrieves all AWSECSService items from an AWS CloudFormation template -func (t *Template) GetAllAWSECSServiceResources() map[string]*resources.AWSECSService { - results := map[string]*resources.AWSECSService{} +// GetAllEC2EC2FleetResources retrieves all ec2.EC2Fleet items from an AWS CloudFormation template +func (t *Template) GetAllEC2EC2FleetResources() map[string]*ec2.EC2Fleet { + results := map[string]*ec2.EC2Fleet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSECSService: + case *ec2.EC2Fleet: results[name] = resource } } return results } -// GetAWSECSServiceWithName retrieves all AWSECSService items from an AWS CloudFormation template +// GetEC2EC2FleetWithName retrieves all ec2.EC2Fleet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSECSServiceWithName(name string) (*resources.AWSECSService, error) { +func (t *Template) GetEC2EC2FleetWithName(name string) (*ec2.EC2Fleet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSECSService: + case *ec2.EC2Fleet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSECSService not found", name) + return nil, fmt.Errorf("resource %q of type ec2.EC2Fleet not found", name) } -// GetAllAWSECSTaskDefinitionResources retrieves all AWSECSTaskDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSECSTaskDefinitionResources() map[string]*resources.AWSECSTaskDefinition { - results := map[string]*resources.AWSECSTaskDefinition{} +// GetAllWorkSpacesWorkspaceResources retrieves all workspaces.Workspace items from an AWS CloudFormation template +func (t *Template) GetAllWorkSpacesWorkspaceResources() map[string]*workspaces.Workspace { + results := map[string]*workspaces.Workspace{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSECSTaskDefinition: + case *workspaces.Workspace: results[name] = resource } } return results } -// GetAWSECSTaskDefinitionWithName retrieves all AWSECSTaskDefinition items from an AWS CloudFormation template +// GetWorkSpacesWorkspaceWithName retrieves all workspaces.Workspace items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSECSTaskDefinitionWithName(name string) (*resources.AWSECSTaskDefinition, error) { +func (t *Template) GetWorkSpacesWorkspaceWithName(name string) (*workspaces.Workspace, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSECSTaskDefinition: + case *workspaces.Workspace: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSECSTaskDefinition not found", name) + return nil, fmt.Errorf("resource %q of type workspaces.Workspace not found", name) } -// GetAllAWSEFSFileSystemResources retrieves all AWSEFSFileSystem items from an AWS CloudFormation template -func (t *Template) GetAllAWSEFSFileSystemResources() map[string]*resources.AWSEFSFileSystem { - results := map[string]*resources.AWSEFSFileSystem{} +// GetAllRoboMakerSimulationApplicationVersionResources retrieves all robomaker.SimulationApplicationVersion items from an AWS CloudFormation template +func (t *Template) GetAllRoboMakerSimulationApplicationVersionResources() map[string]*robomaker.SimulationApplicationVersion { + results := map[string]*robomaker.SimulationApplicationVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEFSFileSystem: + case *robomaker.SimulationApplicationVersion: results[name] = resource } } return results } -// GetAWSEFSFileSystemWithName retrieves all AWSEFSFileSystem items from an AWS CloudFormation template +// GetRoboMakerSimulationApplicationVersionWithName retrieves all robomaker.SimulationApplicationVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEFSFileSystemWithName(name string) (*resources.AWSEFSFileSystem, error) { +func (t *Template) GetRoboMakerSimulationApplicationVersionWithName(name string) (*robomaker.SimulationApplicationVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEFSFileSystem: + case *robomaker.SimulationApplicationVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEFSFileSystem not found", name) + return nil, fmt.Errorf("resource %q of type robomaker.SimulationApplicationVersion not found", name) } -// GetAllAWSEFSMountTargetResources retrieves all AWSEFSMountTarget items from an AWS CloudFormation template -func (t *Template) GetAllAWSEFSMountTargetResources() map[string]*resources.AWSEFSMountTarget { - results := map[string]*resources.AWSEFSMountTarget{} +// GetAllApiGatewayV2DomainNameResources retrieves all apigatewayv2.DomainName items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2DomainNameResources() map[string]*apigatewayv2.DomainName { + results := map[string]*apigatewayv2.DomainName{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEFSMountTarget: + case *apigatewayv2.DomainName: results[name] = resource } } return results } -// GetAWSEFSMountTargetWithName retrieves all AWSEFSMountTarget items from an AWS CloudFormation template +// GetApiGatewayV2DomainNameWithName retrieves all apigatewayv2.DomainName items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEFSMountTargetWithName(name string) (*resources.AWSEFSMountTarget, error) { +func (t *Template) GetApiGatewayV2DomainNameWithName(name string) (*apigatewayv2.DomainName, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEFSMountTarget: + case *apigatewayv2.DomainName: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEFSMountTarget not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.DomainName not found", name) } -// GetAllAWSEKSClusterResources retrieves all AWSEKSCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSEKSClusterResources() map[string]*resources.AWSEKSCluster { - results := map[string]*resources.AWSEKSCluster{} +// GetAllNeptuneDBClusterParameterGroupResources retrieves all neptune.DBClusterParameterGroup items from an AWS CloudFormation template +func (t *Template) GetAllNeptuneDBClusterParameterGroupResources() map[string]*neptune.DBClusterParameterGroup { + results := map[string]*neptune.DBClusterParameterGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEKSCluster: + case *neptune.DBClusterParameterGroup: results[name] = resource } } return results } -// GetAWSEKSClusterWithName retrieves all AWSEKSCluster items from an AWS CloudFormation template +// GetNeptuneDBClusterParameterGroupWithName retrieves all neptune.DBClusterParameterGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEKSClusterWithName(name string) (*resources.AWSEKSCluster, error) { +func (t *Template) GetNeptuneDBClusterParameterGroupWithName(name string) (*neptune.DBClusterParameterGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEKSCluster: + case *neptune.DBClusterParameterGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEKSCluster not found", name) + return nil, fmt.Errorf("resource %q of type neptune.DBClusterParameterGroup not found", name) } -// GetAllAWSEMRClusterResources retrieves all AWSEMRCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSEMRClusterResources() map[string]*resources.AWSEMRCluster { - results := map[string]*resources.AWSEMRCluster{} +// GetAllApiGatewayBasePathMappingResources retrieves all apigateway.BasePathMapping items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayBasePathMappingResources() map[string]*apigateway.BasePathMapping { + results := map[string]*apigateway.BasePathMapping{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEMRCluster: + case *apigateway.BasePathMapping: results[name] = resource } } return results } -// GetAWSEMRClusterWithName retrieves all AWSEMRCluster items from an AWS CloudFormation template +// GetApiGatewayBasePathMappingWithName retrieves all apigateway.BasePathMapping items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEMRClusterWithName(name string) (*resources.AWSEMRCluster, error) { +func (t *Template) GetApiGatewayBasePathMappingWithName(name string) (*apigateway.BasePathMapping, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEMRCluster: + case *apigateway.BasePathMapping: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEMRCluster not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.BasePathMapping not found", name) } -// GetAllAWSEMRInstanceFleetConfigResources retrieves all AWSEMRInstanceFleetConfig items from an AWS CloudFormation template -func (t *Template) GetAllAWSEMRInstanceFleetConfigResources() map[string]*resources.AWSEMRInstanceFleetConfig { - results := map[string]*resources.AWSEMRInstanceFleetConfig{} +// GetAllServiceCatalogResourceUpdateConstraintResources retrieves all servicecatalog.ResourceUpdateConstraint items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogResourceUpdateConstraintResources() map[string]*servicecatalog.ResourceUpdateConstraint { + results := map[string]*servicecatalog.ResourceUpdateConstraint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEMRInstanceFleetConfig: + case *servicecatalog.ResourceUpdateConstraint: results[name] = resource } } return results } -// GetAWSEMRInstanceFleetConfigWithName retrieves all AWSEMRInstanceFleetConfig items from an AWS CloudFormation template +// GetServiceCatalogResourceUpdateConstraintWithName retrieves all servicecatalog.ResourceUpdateConstraint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEMRInstanceFleetConfigWithName(name string) (*resources.AWSEMRInstanceFleetConfig, error) { +func (t *Template) GetServiceCatalogResourceUpdateConstraintWithName(name string) (*servicecatalog.ResourceUpdateConstraint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEMRInstanceFleetConfig: + case *servicecatalog.ResourceUpdateConstraint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEMRInstanceFleetConfig not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.ResourceUpdateConstraint not found", name) } -// GetAllAWSEMRInstanceGroupConfigResources retrieves all AWSEMRInstanceGroupConfig items from an AWS CloudFormation template -func (t *Template) GetAllAWSEMRInstanceGroupConfigResources() map[string]*resources.AWSEMRInstanceGroupConfig { - results := map[string]*resources.AWSEMRInstanceGroupConfig{} +// GetAllIAMServiceLinkedRoleResources retrieves all iam.ServiceLinkedRole items from an AWS CloudFormation template +func (t *Template) GetAllIAMServiceLinkedRoleResources() map[string]*iam.ServiceLinkedRole { + results := map[string]*iam.ServiceLinkedRole{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEMRInstanceGroupConfig: + case *iam.ServiceLinkedRole: results[name] = resource } } return results } -// GetAWSEMRInstanceGroupConfigWithName retrieves all AWSEMRInstanceGroupConfig items from an AWS CloudFormation template +// GetIAMServiceLinkedRoleWithName retrieves all iam.ServiceLinkedRole items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEMRInstanceGroupConfigWithName(name string) (*resources.AWSEMRInstanceGroupConfig, error) { +func (t *Template) GetIAMServiceLinkedRoleWithName(name string) (*iam.ServiceLinkedRole, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEMRInstanceGroupConfig: + case *iam.ServiceLinkedRole: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEMRInstanceGroupConfig not found", name) + return nil, fmt.Errorf("resource %q of type iam.ServiceLinkedRole not found", name) } -// GetAllAWSEMRSecurityConfigurationResources retrieves all AWSEMRSecurityConfiguration items from an AWS CloudFormation template -func (t *Template) GetAllAWSEMRSecurityConfigurationResources() map[string]*resources.AWSEMRSecurityConfiguration { - results := map[string]*resources.AWSEMRSecurityConfiguration{} +// GetAllSageMakerEndpointConfigResources retrieves all sagemaker.EndpointConfig items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerEndpointConfigResources() map[string]*sagemaker.EndpointConfig { + results := map[string]*sagemaker.EndpointConfig{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEMRSecurityConfiguration: + case *sagemaker.EndpointConfig: results[name] = resource } } return results } -// GetAWSEMRSecurityConfigurationWithName retrieves all AWSEMRSecurityConfiguration items from an AWS CloudFormation template +// GetSageMakerEndpointConfigWithName retrieves all sagemaker.EndpointConfig items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEMRSecurityConfigurationWithName(name string) (*resources.AWSEMRSecurityConfiguration, error) { +func (t *Template) GetSageMakerEndpointConfigWithName(name string) (*sagemaker.EndpointConfig, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEMRSecurityConfiguration: + case *sagemaker.EndpointConfig: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEMRSecurityConfiguration not found", name) + return nil, fmt.Errorf("resource %q of type sagemaker.EndpointConfig not found", name) } -// GetAllAWSEMRStepResources retrieves all AWSEMRStep items from an AWS CloudFormation template -func (t *Template) GetAllAWSEMRStepResources() map[string]*resources.AWSEMRStep { - results := map[string]*resources.AWSEMRStep{} +// GetAllOpsWorksElasticLoadBalancerAttachmentResources retrieves all opsworks.ElasticLoadBalancerAttachment items from an AWS CloudFormation template +func (t *Template) GetAllOpsWorksElasticLoadBalancerAttachmentResources() map[string]*opsworks.ElasticLoadBalancerAttachment { + results := map[string]*opsworks.ElasticLoadBalancerAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEMRStep: + case *opsworks.ElasticLoadBalancerAttachment: results[name] = resource } } return results } -// GetAWSEMRStepWithName retrieves all AWSEMRStep items from an AWS CloudFormation template +// GetOpsWorksElasticLoadBalancerAttachmentWithName retrieves all opsworks.ElasticLoadBalancerAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEMRStepWithName(name string) (*resources.AWSEMRStep, error) { +func (t *Template) GetOpsWorksElasticLoadBalancerAttachmentWithName(name string) (*opsworks.ElasticLoadBalancerAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEMRStep: + case *opsworks.ElasticLoadBalancerAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEMRStep not found", name) + return nil, fmt.Errorf("resource %q of type opsworks.ElasticLoadBalancerAttachment not found", name) } -// GetAllAWSElastiCacheCacheClusterResources retrieves all AWSElastiCacheCacheCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSElastiCacheCacheClusterResources() map[string]*resources.AWSElastiCacheCacheCluster { - results := map[string]*resources.AWSElastiCacheCacheCluster{} +// GetAllEC2EIPAssociationResources retrieves all ec2.EIPAssociation items from an AWS CloudFormation template +func (t *Template) GetAllEC2EIPAssociationResources() map[string]*ec2.EIPAssociation { + results := map[string]*ec2.EIPAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElastiCacheCacheCluster: + case *ec2.EIPAssociation: results[name] = resource } } return results } -// GetAWSElastiCacheCacheClusterWithName retrieves all AWSElastiCacheCacheCluster items from an AWS CloudFormation template +// GetEC2EIPAssociationWithName retrieves all ec2.EIPAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElastiCacheCacheClusterWithName(name string) (*resources.AWSElastiCacheCacheCluster, error) { +func (t *Template) GetEC2EIPAssociationWithName(name string) (*ec2.EIPAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElastiCacheCacheCluster: + case *ec2.EIPAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElastiCacheCacheCluster not found", name) + return nil, fmt.Errorf("resource %q of type ec2.EIPAssociation not found", name) } -// GetAllAWSElastiCacheParameterGroupResources retrieves all AWSElastiCacheParameterGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSElastiCacheParameterGroupResources() map[string]*resources.AWSElastiCacheParameterGroup { - results := map[string]*resources.AWSElastiCacheParameterGroup{} +// GetAllCognitoUserPoolIdentityProviderResources retrieves all cognito.UserPoolIdentityProvider items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolIdentityProviderResources() map[string]*cognito.UserPoolIdentityProvider { + results := map[string]*cognito.UserPoolIdentityProvider{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElastiCacheParameterGroup: + case *cognito.UserPoolIdentityProvider: results[name] = resource } } return results } -// GetAWSElastiCacheParameterGroupWithName retrieves all AWSElastiCacheParameterGroup items from an AWS CloudFormation template +// GetCognitoUserPoolIdentityProviderWithName retrieves all cognito.UserPoolIdentityProvider items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElastiCacheParameterGroupWithName(name string) (*resources.AWSElastiCacheParameterGroup, error) { +func (t *Template) GetCognitoUserPoolIdentityProviderWithName(name string) (*cognito.UserPoolIdentityProvider, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElastiCacheParameterGroup: + case *cognito.UserPoolIdentityProvider: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElastiCacheParameterGroup not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolIdentityProvider not found", name) } -// GetAllAWSElastiCacheReplicationGroupResources retrieves all AWSElastiCacheReplicationGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSElastiCacheReplicationGroupResources() map[string]*resources.AWSElastiCacheReplicationGroup { - results := map[string]*resources.AWSElastiCacheReplicationGroup{} +// GetAllLambdaPermissionResources retrieves all lambda.Permission items from an AWS CloudFormation template +func (t *Template) GetAllLambdaPermissionResources() map[string]*lambda.Permission { + results := map[string]*lambda.Permission{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElastiCacheReplicationGroup: + case *lambda.Permission: results[name] = resource } } return results } -// GetAWSElastiCacheReplicationGroupWithName retrieves all AWSElastiCacheReplicationGroup items from an AWS CloudFormation template +// GetLambdaPermissionWithName retrieves all lambda.Permission items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElastiCacheReplicationGroupWithName(name string) (*resources.AWSElastiCacheReplicationGroup, error) { +func (t *Template) GetLambdaPermissionWithName(name string) (*lambda.Permission, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElastiCacheReplicationGroup: + case *lambda.Permission: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElastiCacheReplicationGroup not found", name) + return nil, fmt.Errorf("resource %q of type lambda.Permission not found", name) } -// GetAllAWSElastiCacheSecurityGroupResources retrieves all AWSElastiCacheSecurityGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSElastiCacheSecurityGroupResources() map[string]*resources.AWSElastiCacheSecurityGroup { - results := map[string]*resources.AWSElastiCacheSecurityGroup{} +// GetAllAppMeshMeshResources retrieves all appmesh.Mesh items from an AWS CloudFormation template +func (t *Template) GetAllAppMeshMeshResources() map[string]*appmesh.Mesh { + results := map[string]*appmesh.Mesh{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElastiCacheSecurityGroup: + case *appmesh.Mesh: results[name] = resource } } return results } -// GetAWSElastiCacheSecurityGroupWithName retrieves all AWSElastiCacheSecurityGroup items from an AWS CloudFormation template +// GetAppMeshMeshWithName retrieves all appmesh.Mesh items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElastiCacheSecurityGroupWithName(name string) (*resources.AWSElastiCacheSecurityGroup, error) { +func (t *Template) GetAppMeshMeshWithName(name string) (*appmesh.Mesh, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElastiCacheSecurityGroup: + case *appmesh.Mesh: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElastiCacheSecurityGroup not found", name) + return nil, fmt.Errorf("resource %q of type appmesh.Mesh not found", name) } -// GetAllAWSElastiCacheSecurityGroupIngressResources retrieves all AWSElastiCacheSecurityGroupIngress items from an AWS CloudFormation template -func (t *Template) GetAllAWSElastiCacheSecurityGroupIngressResources() map[string]*resources.AWSElastiCacheSecurityGroupIngress { - results := map[string]*resources.AWSElastiCacheSecurityGroupIngress{} +// GetAllGuardDutyIPSetResources retrieves all guardduty.IPSet items from an AWS CloudFormation template +func (t *Template) GetAllGuardDutyIPSetResources() map[string]*guardduty.IPSet { + results := map[string]*guardduty.IPSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElastiCacheSecurityGroupIngress: + case *guardduty.IPSet: results[name] = resource } } return results } -// GetAWSElastiCacheSecurityGroupIngressWithName retrieves all AWSElastiCacheSecurityGroupIngress items from an AWS CloudFormation template +// GetGuardDutyIPSetWithName retrieves all guardduty.IPSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElastiCacheSecurityGroupIngressWithName(name string) (*resources.AWSElastiCacheSecurityGroupIngress, error) { +func (t *Template) GetGuardDutyIPSetWithName(name string) (*guardduty.IPSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElastiCacheSecurityGroupIngress: + case *guardduty.IPSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElastiCacheSecurityGroupIngress not found", name) + return nil, fmt.Errorf("resource %q of type guardduty.IPSet not found", name) } -// GetAllAWSElastiCacheSubnetGroupResources retrieves all AWSElastiCacheSubnetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSElastiCacheSubnetGroupResources() map[string]*resources.AWSElastiCacheSubnetGroup { - results := map[string]*resources.AWSElastiCacheSubnetGroup{} +// GetAllEC2EIPResources retrieves all ec2.EIP items from an AWS CloudFormation template +func (t *Template) GetAllEC2EIPResources() map[string]*ec2.EIP { + results := map[string]*ec2.EIP{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElastiCacheSubnetGroup: + case *ec2.EIP: results[name] = resource } } return results } -// GetAWSElastiCacheSubnetGroupWithName retrieves all AWSElastiCacheSubnetGroup items from an AWS CloudFormation template +// GetEC2EIPWithName retrieves all ec2.EIP items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElastiCacheSubnetGroupWithName(name string) (*resources.AWSElastiCacheSubnetGroup, error) { +func (t *Template) GetEC2EIPWithName(name string) (*ec2.EIP, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElastiCacheSubnetGroup: + case *ec2.EIP: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElastiCacheSubnetGroup not found", name) + return nil, fmt.Errorf("resource %q of type ec2.EIP not found", name) } -// GetAllAWSElasticBeanstalkApplicationResources retrieves all AWSElasticBeanstalkApplication items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticBeanstalkApplicationResources() map[string]*resources.AWSElasticBeanstalkApplication { - results := map[string]*resources.AWSElasticBeanstalkApplication{} +// GetAllLambdaAliasResources retrieves all lambda.Alias items from an AWS CloudFormation template +func (t *Template) GetAllLambdaAliasResources() map[string]*lambda.Alias { + results := map[string]*lambda.Alias{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticBeanstalkApplication: + case *lambda.Alias: results[name] = resource } } return results } -// GetAWSElasticBeanstalkApplicationWithName retrieves all AWSElasticBeanstalkApplication items from an AWS CloudFormation template +// GetLambdaAliasWithName retrieves all lambda.Alias items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticBeanstalkApplicationWithName(name string) (*resources.AWSElasticBeanstalkApplication, error) { +func (t *Template) GetLambdaAliasWithName(name string) (*lambda.Alias, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticBeanstalkApplication: + case *lambda.Alias: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticBeanstalkApplication not found", name) + return nil, fmt.Errorf("resource %q of type lambda.Alias not found", name) } -// GetAllAWSElasticBeanstalkApplicationVersionResources retrieves all AWSElasticBeanstalkApplicationVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticBeanstalkApplicationVersionResources() map[string]*resources.AWSElasticBeanstalkApplicationVersion { - results := map[string]*resources.AWSElasticBeanstalkApplicationVersion{} +// GetAllGreengrassLoggerDefinitionVersionResources retrieves all greengrass.LoggerDefinitionVersion items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassLoggerDefinitionVersionResources() map[string]*greengrass.LoggerDefinitionVersion { + results := map[string]*greengrass.LoggerDefinitionVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticBeanstalkApplicationVersion: + case *greengrass.LoggerDefinitionVersion: results[name] = resource } } return results } -// GetAWSElasticBeanstalkApplicationVersionWithName retrieves all AWSElasticBeanstalkApplicationVersion items from an AWS CloudFormation template +// GetGreengrassLoggerDefinitionVersionWithName retrieves all greengrass.LoggerDefinitionVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticBeanstalkApplicationVersionWithName(name string) (*resources.AWSElasticBeanstalkApplicationVersion, error) { +func (t *Template) GetGreengrassLoggerDefinitionVersionWithName(name string) (*greengrass.LoggerDefinitionVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticBeanstalkApplicationVersion: + case *greengrass.LoggerDefinitionVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticBeanstalkApplicationVersion not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.LoggerDefinitionVersion not found", name) } -// GetAllAWSElasticBeanstalkConfigurationTemplateResources retrieves all AWSElasticBeanstalkConfigurationTemplate items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticBeanstalkConfigurationTemplateResources() map[string]*resources.AWSElasticBeanstalkConfigurationTemplate { - results := map[string]*resources.AWSElasticBeanstalkConfigurationTemplate{} +// GetAllEC2VPNConnectionResources retrieves all ec2.VPNConnection items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPNConnectionResources() map[string]*ec2.VPNConnection { + results := map[string]*ec2.VPNConnection{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticBeanstalkConfigurationTemplate: + case *ec2.VPNConnection: results[name] = resource } } return results } -// GetAWSElasticBeanstalkConfigurationTemplateWithName retrieves all AWSElasticBeanstalkConfigurationTemplate items from an AWS CloudFormation template +// GetEC2VPNConnectionWithName retrieves all ec2.VPNConnection items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticBeanstalkConfigurationTemplateWithName(name string) (*resources.AWSElasticBeanstalkConfigurationTemplate, error) { +func (t *Template) GetEC2VPNConnectionWithName(name string) (*ec2.VPNConnection, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticBeanstalkConfigurationTemplate: + case *ec2.VPNConnection: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticBeanstalkConfigurationTemplate not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPNConnection not found", name) } -// GetAllAWSElasticBeanstalkEnvironmentResources retrieves all AWSElasticBeanstalkEnvironment items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticBeanstalkEnvironmentResources() map[string]*resources.AWSElasticBeanstalkEnvironment { - results := map[string]*resources.AWSElasticBeanstalkEnvironment{} +// GetAllApiGatewayDocumentationVersionResources retrieves all apigateway.DocumentationVersion items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayDocumentationVersionResources() map[string]*apigateway.DocumentationVersion { + results := map[string]*apigateway.DocumentationVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticBeanstalkEnvironment: + case *apigateway.DocumentationVersion: results[name] = resource } } return results } -// GetAWSElasticBeanstalkEnvironmentWithName retrieves all AWSElasticBeanstalkEnvironment items from an AWS CloudFormation template +// GetApiGatewayDocumentationVersionWithName retrieves all apigateway.DocumentationVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticBeanstalkEnvironmentWithName(name string) (*resources.AWSElasticBeanstalkEnvironment, error) { +func (t *Template) GetApiGatewayDocumentationVersionWithName(name string) (*apigateway.DocumentationVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticBeanstalkEnvironment: + case *apigateway.DocumentationVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticBeanstalkEnvironment not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.DocumentationVersion not found", name) } -// GetAllAWSElasticLoadBalancingLoadBalancerResources retrieves all AWSElasticLoadBalancingLoadBalancer items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticLoadBalancingLoadBalancerResources() map[string]*resources.AWSElasticLoadBalancingLoadBalancer { - results := map[string]*resources.AWSElasticLoadBalancingLoadBalancer{} +// GetAllSSMMaintenanceWindowTaskResources retrieves all ssm.MaintenanceWindowTask items from an AWS CloudFormation template +func (t *Template) GetAllSSMMaintenanceWindowTaskResources() map[string]*ssm.MaintenanceWindowTask { + results := map[string]*ssm.MaintenanceWindowTask{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingLoadBalancer: + case *ssm.MaintenanceWindowTask: results[name] = resource } } return results } -// GetAWSElasticLoadBalancingLoadBalancerWithName retrieves all AWSElasticLoadBalancingLoadBalancer items from an AWS CloudFormation template +// GetSSMMaintenanceWindowTaskWithName retrieves all ssm.MaintenanceWindowTask items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticLoadBalancingLoadBalancerWithName(name string) (*resources.AWSElasticLoadBalancingLoadBalancer, error) { +func (t *Template) GetSSMMaintenanceWindowTaskWithName(name string) (*ssm.MaintenanceWindowTask, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingLoadBalancer: + case *ssm.MaintenanceWindowTask: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticLoadBalancingLoadBalancer not found", name) + return nil, fmt.Errorf("resource %q of type ssm.MaintenanceWindowTask not found", name) } -// GetAllAWSElasticLoadBalancingV2ListenerResources retrieves all AWSElasticLoadBalancingV2Listener items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticLoadBalancingV2ListenerResources() map[string]*resources.AWSElasticLoadBalancingV2Listener { - results := map[string]*resources.AWSElasticLoadBalancingV2Listener{} +// GetAllEC2FlowLogResources retrieves all ec2.FlowLog items from an AWS CloudFormation template +func (t *Template) GetAllEC2FlowLogResources() map[string]*ec2.FlowLog { + results := map[string]*ec2.FlowLog{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2Listener: + case *ec2.FlowLog: results[name] = resource } } return results } -// GetAWSElasticLoadBalancingV2ListenerWithName retrieves all AWSElasticLoadBalancingV2Listener items from an AWS CloudFormation template +// GetEC2FlowLogWithName retrieves all ec2.FlowLog items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticLoadBalancingV2ListenerWithName(name string) (*resources.AWSElasticLoadBalancingV2Listener, error) { +func (t *Template) GetEC2FlowLogWithName(name string) (*ec2.FlowLog, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2Listener: + case *ec2.FlowLog: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticLoadBalancingV2Listener not found", name) + return nil, fmt.Errorf("resource %q of type ec2.FlowLog not found", name) } -// GetAllAWSElasticLoadBalancingV2ListenerCertificateResources retrieves all AWSElasticLoadBalancingV2ListenerCertificate items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticLoadBalancingV2ListenerCertificateResources() map[string]*resources.AWSElasticLoadBalancingV2ListenerCertificate { - results := map[string]*resources.AWSElasticLoadBalancingV2ListenerCertificate{} +// GetAllIAMAccessKeyResources retrieves all iam.AccessKey items from an AWS CloudFormation template +func (t *Template) GetAllIAMAccessKeyResources() map[string]*iam.AccessKey { + results := map[string]*iam.AccessKey{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2ListenerCertificate: + case *iam.AccessKey: results[name] = resource } } return results } -// GetAWSElasticLoadBalancingV2ListenerCertificateWithName retrieves all AWSElasticLoadBalancingV2ListenerCertificate items from an AWS CloudFormation template +// GetIAMAccessKeyWithName retrieves all iam.AccessKey items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticLoadBalancingV2ListenerCertificateWithName(name string) (*resources.AWSElasticLoadBalancingV2ListenerCertificate, error) { +func (t *Template) GetIAMAccessKeyWithName(name string) (*iam.AccessKey, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2ListenerCertificate: + case *iam.AccessKey: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticLoadBalancingV2ListenerCertificate not found", name) + return nil, fmt.Errorf("resource %q of type iam.AccessKey not found", name) } -// GetAllAWSElasticLoadBalancingV2ListenerRuleResources retrieves all AWSElasticLoadBalancingV2ListenerRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticLoadBalancingV2ListenerRuleResources() map[string]*resources.AWSElasticLoadBalancingV2ListenerRule { - results := map[string]*resources.AWSElasticLoadBalancingV2ListenerRule{} +// GetAllElasticLoadBalancingV2ListenerRuleResources retrieves all elasticloadbalancingv2.ListenerRule items from an AWS CloudFormation template +func (t *Template) GetAllElasticLoadBalancingV2ListenerRuleResources() map[string]*elasticloadbalancingv2.ListenerRule { + results := map[string]*elasticloadbalancingv2.ListenerRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2ListenerRule: + case *elasticloadbalancingv2.ListenerRule: results[name] = resource } } return results } -// GetAWSElasticLoadBalancingV2ListenerRuleWithName retrieves all AWSElasticLoadBalancingV2ListenerRule items from an AWS CloudFormation template +// GetElasticLoadBalancingV2ListenerRuleWithName retrieves all elasticloadbalancingv2.ListenerRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticLoadBalancingV2ListenerRuleWithName(name string) (*resources.AWSElasticLoadBalancingV2ListenerRule, error) { +func (t *Template) GetElasticLoadBalancingV2ListenerRuleWithName(name string) (*elasticloadbalancingv2.ListenerRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2ListenerRule: + case *elasticloadbalancingv2.ListenerRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticLoadBalancingV2ListenerRule not found", name) + return nil, fmt.Errorf("resource %q of type elasticloadbalancingv2.ListenerRule not found", name) } -// GetAllAWSElasticLoadBalancingV2LoadBalancerResources retrieves all AWSElasticLoadBalancingV2LoadBalancer items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticLoadBalancingV2LoadBalancerResources() map[string]*resources.AWSElasticLoadBalancingV2LoadBalancer { - results := map[string]*resources.AWSElasticLoadBalancingV2LoadBalancer{} +// GetAllRAMResourceShareResources retrieves all ram.ResourceShare items from an AWS CloudFormation template +func (t *Template) GetAllRAMResourceShareResources() map[string]*ram.ResourceShare { + results := map[string]*ram.ResourceShare{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2LoadBalancer: + case *ram.ResourceShare: results[name] = resource } } return results } -// GetAWSElasticLoadBalancingV2LoadBalancerWithName retrieves all AWSElasticLoadBalancingV2LoadBalancer items from an AWS CloudFormation template +// GetRAMResourceShareWithName retrieves all ram.ResourceShare items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticLoadBalancingV2LoadBalancerWithName(name string) (*resources.AWSElasticLoadBalancingV2LoadBalancer, error) { +func (t *Template) GetRAMResourceShareWithName(name string) (*ram.ResourceShare, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2LoadBalancer: + case *ram.ResourceShare: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticLoadBalancingV2LoadBalancer not found", name) + return nil, fmt.Errorf("resource %q of type ram.ResourceShare not found", name) } -// GetAllAWSElasticLoadBalancingV2TargetGroupResources retrieves all AWSElasticLoadBalancingV2TargetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticLoadBalancingV2TargetGroupResources() map[string]*resources.AWSElasticLoadBalancingV2TargetGroup { - results := map[string]*resources.AWSElasticLoadBalancingV2TargetGroup{} +// GetAllServiceCatalogStackSetConstraintResources retrieves all servicecatalog.StackSetConstraint items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogStackSetConstraintResources() map[string]*servicecatalog.StackSetConstraint { + results := map[string]*servicecatalog.StackSetConstraint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2TargetGroup: + case *servicecatalog.StackSetConstraint: results[name] = resource } } return results } -// GetAWSElasticLoadBalancingV2TargetGroupWithName retrieves all AWSElasticLoadBalancingV2TargetGroup items from an AWS CloudFormation template +// GetServiceCatalogStackSetConstraintWithName retrieves all servicecatalog.StackSetConstraint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticLoadBalancingV2TargetGroupWithName(name string) (*resources.AWSElasticLoadBalancingV2TargetGroup, error) { +func (t *Template) GetServiceCatalogStackSetConstraintWithName(name string) (*servicecatalog.StackSetConstraint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticLoadBalancingV2TargetGroup: + case *servicecatalog.StackSetConstraint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticLoadBalancingV2TargetGroup not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.StackSetConstraint not found", name) } -// GetAllAWSElasticsearchDomainResources retrieves all AWSElasticsearchDomain items from an AWS CloudFormation template -func (t *Template) GetAllAWSElasticsearchDomainResources() map[string]*resources.AWSElasticsearchDomain { - results := map[string]*resources.AWSElasticsearchDomain{} +// GetAllEC2SecurityGroupIngressResources retrieves all ec2.SecurityGroupIngress items from an AWS CloudFormation template +func (t *Template) GetAllEC2SecurityGroupIngressResources() map[string]*ec2.SecurityGroupIngress { + results := map[string]*ec2.SecurityGroupIngress{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSElasticsearchDomain: + case *ec2.SecurityGroupIngress: results[name] = resource } } return results } -// GetAWSElasticsearchDomainWithName retrieves all AWSElasticsearchDomain items from an AWS CloudFormation template +// GetEC2SecurityGroupIngressWithName retrieves all ec2.SecurityGroupIngress items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSElasticsearchDomainWithName(name string) (*resources.AWSElasticsearchDomain, error) { +func (t *Template) GetEC2SecurityGroupIngressWithName(name string) (*ec2.SecurityGroupIngress, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSElasticsearchDomain: + case *ec2.SecurityGroupIngress: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSElasticsearchDomain not found", name) + return nil, fmt.Errorf("resource %q of type ec2.SecurityGroupIngress not found", name) } -// GetAllAWSEventsEventBusResources retrieves all AWSEventsEventBus items from an AWS CloudFormation template -func (t *Template) GetAllAWSEventsEventBusResources() map[string]*resources.AWSEventsEventBus { - results := map[string]*resources.AWSEventsEventBus{} +// GetAllGreengrassResourceDefinitionVersionResources retrieves all greengrass.ResourceDefinitionVersion items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassResourceDefinitionVersionResources() map[string]*greengrass.ResourceDefinitionVersion { + results := map[string]*greengrass.ResourceDefinitionVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEventsEventBus: + case *greengrass.ResourceDefinitionVersion: results[name] = resource } } return results } -// GetAWSEventsEventBusWithName retrieves all AWSEventsEventBus items from an AWS CloudFormation template +// GetGreengrassResourceDefinitionVersionWithName retrieves all greengrass.ResourceDefinitionVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEventsEventBusWithName(name string) (*resources.AWSEventsEventBus, error) { +func (t *Template) GetGreengrassResourceDefinitionVersionWithName(name string) (*greengrass.ResourceDefinitionVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEventsEventBus: + case *greengrass.ResourceDefinitionVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEventsEventBus not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.ResourceDefinitionVersion not found", name) } -// GetAllAWSEventsEventBusPolicyResources retrieves all AWSEventsEventBusPolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSEventsEventBusPolicyResources() map[string]*resources.AWSEventsEventBusPolicy { - results := map[string]*resources.AWSEventsEventBusPolicy{} +// GetAllMSKClusterResources retrieves all msk.Cluster items from an AWS CloudFormation template +func (t *Template) GetAllMSKClusterResources() map[string]*msk.Cluster { + results := map[string]*msk.Cluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEventsEventBusPolicy: + case *msk.Cluster: results[name] = resource } } return results } -// GetAWSEventsEventBusPolicyWithName retrieves all AWSEventsEventBusPolicy items from an AWS CloudFormation template +// GetMSKClusterWithName retrieves all msk.Cluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEventsEventBusPolicyWithName(name string) (*resources.AWSEventsEventBusPolicy, error) { +func (t *Template) GetMSKClusterWithName(name string) (*msk.Cluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEventsEventBusPolicy: + case *msk.Cluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEventsEventBusPolicy not found", name) + return nil, fmt.Errorf("resource %q of type msk.Cluster not found", name) } -// GetAllAWSEventsRuleResources retrieves all AWSEventsRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSEventsRuleResources() map[string]*resources.AWSEventsRule { - results := map[string]*resources.AWSEventsRule{} +// GetAllEC2VPCGatewayAttachmentResources retrieves all ec2.VPCGatewayAttachment items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCGatewayAttachmentResources() map[string]*ec2.VPCGatewayAttachment { + results := map[string]*ec2.VPCGatewayAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSEventsRule: + case *ec2.VPCGatewayAttachment: results[name] = resource } } return results } -// GetAWSEventsRuleWithName retrieves all AWSEventsRule items from an AWS CloudFormation template +// GetEC2VPCGatewayAttachmentWithName retrieves all ec2.VPCGatewayAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSEventsRuleWithName(name string) (*resources.AWSEventsRule, error) { +func (t *Template) GetEC2VPCGatewayAttachmentWithName(name string) (*ec2.VPCGatewayAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSEventsRule: + case *ec2.VPCGatewayAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSEventsRule not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPCGatewayAttachment not found", name) } -// GetAllAWSFSxFileSystemResources retrieves all AWSFSxFileSystem items from an AWS CloudFormation template -func (t *Template) GetAllAWSFSxFileSystemResources() map[string]*resources.AWSFSxFileSystem { - results := map[string]*resources.AWSFSxFileSystem{} +// GetAllEC2RouteResources retrieves all ec2.Route items from an AWS CloudFormation template +func (t *Template) GetAllEC2RouteResources() map[string]*ec2.Route { + results := map[string]*ec2.Route{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSFSxFileSystem: + case *ec2.Route: results[name] = resource } } return results } -// GetAWSFSxFileSystemWithName retrieves all AWSFSxFileSystem items from an AWS CloudFormation template +// GetEC2RouteWithName retrieves all ec2.Route items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSFSxFileSystemWithName(name string) (*resources.AWSFSxFileSystem, error) { +func (t *Template) GetEC2RouteWithName(name string) (*ec2.Route, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSFSxFileSystem: + case *ec2.Route: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSFSxFileSystem not found", name) + return nil, fmt.Errorf("resource %q of type ec2.Route not found", name) } -// GetAllAWSGameLiftAliasResources retrieves all AWSGameLiftAlias items from an AWS CloudFormation template -func (t *Template) GetAllAWSGameLiftAliasResources() map[string]*resources.AWSGameLiftAlias { - results := map[string]*resources.AWSGameLiftAlias{} +// GetAllLambdaFunctionResources retrieves all lambda.Function items from an AWS CloudFormation template +func (t *Template) GetAllLambdaFunctionResources() map[string]*lambda.Function { + results := map[string]*lambda.Function{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGameLiftAlias: + case *lambda.Function: results[name] = resource } } return results } -// GetAWSGameLiftAliasWithName retrieves all AWSGameLiftAlias items from an AWS CloudFormation template +// GetLambdaFunctionWithName retrieves all lambda.Function items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGameLiftAliasWithName(name string) (*resources.AWSGameLiftAlias, error) { +func (t *Template) GetLambdaFunctionWithName(name string) (*lambda.Function, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGameLiftAlias: + case *lambda.Function: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGameLiftAlias not found", name) + return nil, fmt.Errorf("resource %q of type lambda.Function not found", name) } -// GetAllAWSGameLiftBuildResources retrieves all AWSGameLiftBuild items from an AWS CloudFormation template -func (t *Template) GetAllAWSGameLiftBuildResources() map[string]*resources.AWSGameLiftBuild { - results := map[string]*resources.AWSGameLiftBuild{} +// GetAllElasticBeanstalkApplicationVersionResources retrieves all elasticbeanstalk.ApplicationVersion items from an AWS CloudFormation template +func (t *Template) GetAllElasticBeanstalkApplicationVersionResources() map[string]*elasticbeanstalk.ApplicationVersion { + results := map[string]*elasticbeanstalk.ApplicationVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGameLiftBuild: + case *elasticbeanstalk.ApplicationVersion: results[name] = resource } } return results } -// GetAWSGameLiftBuildWithName retrieves all AWSGameLiftBuild items from an AWS CloudFormation template +// GetElasticBeanstalkApplicationVersionWithName retrieves all elasticbeanstalk.ApplicationVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGameLiftBuildWithName(name string) (*resources.AWSGameLiftBuild, error) { +func (t *Template) GetElasticBeanstalkApplicationVersionWithName(name string) (*elasticbeanstalk.ApplicationVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGameLiftBuild: + case *elasticbeanstalk.ApplicationVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGameLiftBuild not found", name) + return nil, fmt.Errorf("resource %q of type elasticbeanstalk.ApplicationVersion not found", name) } -// GetAllAWSGameLiftFleetResources retrieves all AWSGameLiftFleet items from an AWS CloudFormation template -func (t *Template) GetAllAWSGameLiftFleetResources() map[string]*resources.AWSGameLiftFleet { - results := map[string]*resources.AWSGameLiftFleet{} +// GetAllRoute53ResolverResolverEndpointResources retrieves all route53resolver.ResolverEndpoint items from an AWS CloudFormation template +func (t *Template) GetAllRoute53ResolverResolverEndpointResources() map[string]*route53resolver.ResolverEndpoint { + results := map[string]*route53resolver.ResolverEndpoint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGameLiftFleet: + case *route53resolver.ResolverEndpoint: results[name] = resource } } return results } -// GetAWSGameLiftFleetWithName retrieves all AWSGameLiftFleet items from an AWS CloudFormation template +// GetRoute53ResolverResolverEndpointWithName retrieves all route53resolver.ResolverEndpoint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGameLiftFleetWithName(name string) (*resources.AWSGameLiftFleet, error) { +func (t *Template) GetRoute53ResolverResolverEndpointWithName(name string) (*route53resolver.ResolverEndpoint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGameLiftFleet: + case *route53resolver.ResolverEndpoint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGameLiftFleet not found", name) + return nil, fmt.Errorf("resource %q of type route53resolver.ResolverEndpoint not found", name) } -// GetAllAWSGlueClassifierResources retrieves all AWSGlueClassifier items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueClassifierResources() map[string]*resources.AWSGlueClassifier { - results := map[string]*resources.AWSGlueClassifier{} +// GetAllOpsWorksAppResources retrieves all opsworks.App items from an AWS CloudFormation template +func (t *Template) GetAllOpsWorksAppResources() map[string]*opsworks.App { + results := map[string]*opsworks.App{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueClassifier: + case *opsworks.App: results[name] = resource } } return results } -// GetAWSGlueClassifierWithName retrieves all AWSGlueClassifier items from an AWS CloudFormation template +// GetOpsWorksAppWithName retrieves all opsworks.App items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueClassifierWithName(name string) (*resources.AWSGlueClassifier, error) { +func (t *Template) GetOpsWorksAppWithName(name string) (*opsworks.App, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueClassifier: + case *opsworks.App: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueClassifier not found", name) + return nil, fmt.Errorf("resource %q of type opsworks.App not found", name) } -// GetAllAWSGlueConnectionResources retrieves all AWSGlueConnection items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueConnectionResources() map[string]*resources.AWSGlueConnection { - results := map[string]*resources.AWSGlueConnection{} +// GetAllCloudFrontCloudFrontOriginAccessIdentityResources retrieves all cloudfront.CloudFrontOriginAccessIdentity items from an AWS CloudFormation template +func (t *Template) GetAllCloudFrontCloudFrontOriginAccessIdentityResources() map[string]*cloudfront.CloudFrontOriginAccessIdentity { + results := map[string]*cloudfront.CloudFrontOriginAccessIdentity{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueConnection: + case *cloudfront.CloudFrontOriginAccessIdentity: results[name] = resource } } return results } -// GetAWSGlueConnectionWithName retrieves all AWSGlueConnection items from an AWS CloudFormation template +// GetCloudFrontCloudFrontOriginAccessIdentityWithName retrieves all cloudfront.CloudFrontOriginAccessIdentity items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueConnectionWithName(name string) (*resources.AWSGlueConnection, error) { +func (t *Template) GetCloudFrontCloudFrontOriginAccessIdentityWithName(name string) (*cloudfront.CloudFrontOriginAccessIdentity, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueConnection: + case *cloudfront.CloudFrontOriginAccessIdentity: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueConnection not found", name) + return nil, fmt.Errorf("resource %q of type cloudfront.CloudFrontOriginAccessIdentity not found", name) } -// GetAllAWSGlueCrawlerResources retrieves all AWSGlueCrawler items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueCrawlerResources() map[string]*resources.AWSGlueCrawler { - results := map[string]*resources.AWSGlueCrawler{} +// GetAllPinpointBaiduChannelResources retrieves all pinpoint.BaiduChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointBaiduChannelResources() map[string]*pinpoint.BaiduChannel { + results := map[string]*pinpoint.BaiduChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueCrawler: + case *pinpoint.BaiduChannel: results[name] = resource } } return results } -// GetAWSGlueCrawlerWithName retrieves all AWSGlueCrawler items from an AWS CloudFormation template +// GetPinpointBaiduChannelWithName retrieves all pinpoint.BaiduChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueCrawlerWithName(name string) (*resources.AWSGlueCrawler, error) { +func (t *Template) GetPinpointBaiduChannelWithName(name string) (*pinpoint.BaiduChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueCrawler: + case *pinpoint.BaiduChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueCrawler not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.BaiduChannel not found", name) } -// GetAllAWSGlueDataCatalogEncryptionSettingsResources retrieves all AWSGlueDataCatalogEncryptionSettings items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueDataCatalogEncryptionSettingsResources() map[string]*resources.AWSGlueDataCatalogEncryptionSettings { - results := map[string]*resources.AWSGlueDataCatalogEncryptionSettings{} +// GetAllRedshiftClusterSubnetGroupResources retrieves all redshift.ClusterSubnetGroup items from an AWS CloudFormation template +func (t *Template) GetAllRedshiftClusterSubnetGroupResources() map[string]*redshift.ClusterSubnetGroup { + results := map[string]*redshift.ClusterSubnetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueDataCatalogEncryptionSettings: + case *redshift.ClusterSubnetGroup: results[name] = resource } } return results } -// GetAWSGlueDataCatalogEncryptionSettingsWithName retrieves all AWSGlueDataCatalogEncryptionSettings items from an AWS CloudFormation template +// GetRedshiftClusterSubnetGroupWithName retrieves all redshift.ClusterSubnetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueDataCatalogEncryptionSettingsWithName(name string) (*resources.AWSGlueDataCatalogEncryptionSettings, error) { +func (t *Template) GetRedshiftClusterSubnetGroupWithName(name string) (*redshift.ClusterSubnetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueDataCatalogEncryptionSettings: + case *redshift.ClusterSubnetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueDataCatalogEncryptionSettings not found", name) + return nil, fmt.Errorf("resource %q of type redshift.ClusterSubnetGroup not found", name) } -// GetAllAWSGlueDatabaseResources retrieves all AWSGlueDatabase items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueDatabaseResources() map[string]*resources.AWSGlueDatabase { - results := map[string]*resources.AWSGlueDatabase{} +// GetAllApiGatewayUsagePlanKeyResources retrieves all apigateway.UsagePlanKey items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayUsagePlanKeyResources() map[string]*apigateway.UsagePlanKey { + results := map[string]*apigateway.UsagePlanKey{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueDatabase: + case *apigateway.UsagePlanKey: results[name] = resource } } return results } -// GetAWSGlueDatabaseWithName retrieves all AWSGlueDatabase items from an AWS CloudFormation template +// GetApiGatewayUsagePlanKeyWithName retrieves all apigateway.UsagePlanKey items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueDatabaseWithName(name string) (*resources.AWSGlueDatabase, error) { +func (t *Template) GetApiGatewayUsagePlanKeyWithName(name string) (*apigateway.UsagePlanKey, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueDatabase: + case *apigateway.UsagePlanKey: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueDatabase not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.UsagePlanKey not found", name) } -// GetAllAWSGlueDevEndpointResources retrieves all AWSGlueDevEndpoint items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueDevEndpointResources() map[string]*resources.AWSGlueDevEndpoint { - results := map[string]*resources.AWSGlueDevEndpoint{} +// GetAllGreengrassCoreDefinitionResources retrieves all greengrass.CoreDefinition items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassCoreDefinitionResources() map[string]*greengrass.CoreDefinition { + results := map[string]*greengrass.CoreDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueDevEndpoint: + case *greengrass.CoreDefinition: results[name] = resource } } return results } -// GetAWSGlueDevEndpointWithName retrieves all AWSGlueDevEndpoint items from an AWS CloudFormation template +// GetGreengrassCoreDefinitionWithName retrieves all greengrass.CoreDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueDevEndpointWithName(name string) (*resources.AWSGlueDevEndpoint, error) { +func (t *Template) GetGreengrassCoreDefinitionWithName(name string) (*greengrass.CoreDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueDevEndpoint: + case *greengrass.CoreDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueDevEndpoint not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.CoreDefinition not found", name) } -// GetAllAWSGlueJobResources retrieves all AWSGlueJob items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueJobResources() map[string]*resources.AWSGlueJob { - results := map[string]*resources.AWSGlueJob{} +// GetAllSESConfigurationSetEventDestinationResources retrieves all ses.ConfigurationSetEventDestination items from an AWS CloudFormation template +func (t *Template) GetAllSESConfigurationSetEventDestinationResources() map[string]*ses.ConfigurationSetEventDestination { + results := map[string]*ses.ConfigurationSetEventDestination{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueJob: + case *ses.ConfigurationSetEventDestination: results[name] = resource } } return results } -// GetAWSGlueJobWithName retrieves all AWSGlueJob items from an AWS CloudFormation template +// GetSESConfigurationSetEventDestinationWithName retrieves all ses.ConfigurationSetEventDestination items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueJobWithName(name string) (*resources.AWSGlueJob, error) { +func (t *Template) GetSESConfigurationSetEventDestinationWithName(name string) (*ses.ConfigurationSetEventDestination, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueJob: + case *ses.ConfigurationSetEventDestination: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueJob not found", name) + return nil, fmt.Errorf("resource %q of type ses.ConfigurationSetEventDestination not found", name) } -// GetAllAWSGlueMLTransformResources retrieves all AWSGlueMLTransform items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueMLTransformResources() map[string]*resources.AWSGlueMLTransform { - results := map[string]*resources.AWSGlueMLTransform{} +// GetAllRoute53HealthCheckResources retrieves all route53.HealthCheck items from an AWS CloudFormation template +func (t *Template) GetAllRoute53HealthCheckResources() map[string]*route53.HealthCheck { + results := map[string]*route53.HealthCheck{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueMLTransform: + case *route53.HealthCheck: results[name] = resource } } return results } -// GetAWSGlueMLTransformWithName retrieves all AWSGlueMLTransform items from an AWS CloudFormation template +// GetRoute53HealthCheckWithName retrieves all route53.HealthCheck items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueMLTransformWithName(name string) (*resources.AWSGlueMLTransform, error) { +func (t *Template) GetRoute53HealthCheckWithName(name string) (*route53.HealthCheck, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueMLTransform: + case *route53.HealthCheck: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueMLTransform not found", name) + return nil, fmt.Errorf("resource %q of type route53.HealthCheck not found", name) } -// GetAllAWSGluePartitionResources retrieves all AWSGluePartition items from an AWS CloudFormation template -func (t *Template) GetAllAWSGluePartitionResources() map[string]*resources.AWSGluePartition { - results := map[string]*resources.AWSGluePartition{} +// GetAllApiGatewayResourceResources retrieves all apigateway.Resource items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayResourceResources() map[string]*apigateway.Resource { + results := map[string]*apigateway.Resource{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGluePartition: + case *apigateway.Resource: results[name] = resource } } return results } -// GetAWSGluePartitionWithName retrieves all AWSGluePartition items from an AWS CloudFormation template +// GetApiGatewayResourceWithName retrieves all apigateway.Resource items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGluePartitionWithName(name string) (*resources.AWSGluePartition, error) { +func (t *Template) GetApiGatewayResourceWithName(name string) (*apigateway.Resource, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGluePartition: + case *apigateway.Resource: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGluePartition not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.Resource not found", name) } -// GetAllAWSGlueSecurityConfigurationResources retrieves all AWSGlueSecurityConfiguration items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueSecurityConfigurationResources() map[string]*resources.AWSGlueSecurityConfiguration { - results := map[string]*resources.AWSGlueSecurityConfiguration{} +// GetAllPinpointSegmentResources retrieves all pinpoint.Segment items from an AWS CloudFormation template +func (t *Template) GetAllPinpointSegmentResources() map[string]*pinpoint.Segment { + results := map[string]*pinpoint.Segment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueSecurityConfiguration: + case *pinpoint.Segment: results[name] = resource } } return results } -// GetAWSGlueSecurityConfigurationWithName retrieves all AWSGlueSecurityConfiguration items from an AWS CloudFormation template +// GetPinpointSegmentWithName retrieves all pinpoint.Segment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueSecurityConfigurationWithName(name string) (*resources.AWSGlueSecurityConfiguration, error) { +func (t *Template) GetPinpointSegmentWithName(name string) (*pinpoint.Segment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueSecurityConfiguration: + case *pinpoint.Segment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueSecurityConfiguration not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.Segment not found", name) } -// GetAllAWSGlueTableResources retrieves all AWSGlueTable items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueTableResources() map[string]*resources.AWSGlueTable { - results := map[string]*resources.AWSGlueTable{} +// GetAllPinpointEmailChannelResources retrieves all pinpoint.EmailChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointEmailChannelResources() map[string]*pinpoint.EmailChannel { + results := map[string]*pinpoint.EmailChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueTable: + case *pinpoint.EmailChannel: results[name] = resource } } return results } -// GetAWSGlueTableWithName retrieves all AWSGlueTable items from an AWS CloudFormation template +// GetPinpointEmailChannelWithName retrieves all pinpoint.EmailChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueTableWithName(name string) (*resources.AWSGlueTable, error) { +func (t *Template) GetPinpointEmailChannelWithName(name string) (*pinpoint.EmailChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueTable: + case *pinpoint.EmailChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueTable not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.EmailChannel not found", name) } -// GetAllAWSGlueTriggerResources retrieves all AWSGlueTrigger items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueTriggerResources() map[string]*resources.AWSGlueTrigger { - results := map[string]*resources.AWSGlueTrigger{} +// GetAllSQSQueueResources retrieves all sqs.Queue items from an AWS CloudFormation template +func (t *Template) GetAllSQSQueueResources() map[string]*sqs.Queue { + results := map[string]*sqs.Queue{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueTrigger: + case *sqs.Queue: results[name] = resource } } return results } -// GetAWSGlueTriggerWithName retrieves all AWSGlueTrigger items from an AWS CloudFormation template +// GetSQSQueueWithName retrieves all sqs.Queue items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueTriggerWithName(name string) (*resources.AWSGlueTrigger, error) { +func (t *Template) GetSQSQueueWithName(name string) (*sqs.Queue, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueTrigger: + case *sqs.Queue: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueTrigger not found", name) + return nil, fmt.Errorf("resource %q of type sqs.Queue not found", name) } -// GetAllAWSGlueWorkflowResources retrieves all AWSGlueWorkflow items from an AWS CloudFormation template -func (t *Template) GetAllAWSGlueWorkflowResources() map[string]*resources.AWSGlueWorkflow { - results := map[string]*resources.AWSGlueWorkflow{} +// GetAllGuardDutyFilterResources retrieves all guardduty.Filter items from an AWS CloudFormation template +func (t *Template) GetAllGuardDutyFilterResources() map[string]*guardduty.Filter { + results := map[string]*guardduty.Filter{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGlueWorkflow: + case *guardduty.Filter: results[name] = resource } } return results } -// GetAWSGlueWorkflowWithName retrieves all AWSGlueWorkflow items from an AWS CloudFormation template +// GetGuardDutyFilterWithName retrieves all guardduty.Filter items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGlueWorkflowWithName(name string) (*resources.AWSGlueWorkflow, error) { +func (t *Template) GetGuardDutyFilterWithName(name string) (*guardduty.Filter, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGlueWorkflow: + case *guardduty.Filter: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGlueWorkflow not found", name) + return nil, fmt.Errorf("resource %q of type guardduty.Filter not found", name) } -// GetAllAWSGreengrassConnectorDefinitionResources retrieves all AWSGreengrassConnectorDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassConnectorDefinitionResources() map[string]*resources.AWSGreengrassConnectorDefinition { - results := map[string]*resources.AWSGreengrassConnectorDefinition{} +// GetAllLambdaEventSourceMappingResources retrieves all lambda.EventSourceMapping items from an AWS CloudFormation template +func (t *Template) GetAllLambdaEventSourceMappingResources() map[string]*lambda.EventSourceMapping { + results := map[string]*lambda.EventSourceMapping{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassConnectorDefinition: + case *lambda.EventSourceMapping: results[name] = resource } } return results } -// GetAWSGreengrassConnectorDefinitionWithName retrieves all AWSGreengrassConnectorDefinition items from an AWS CloudFormation template +// GetLambdaEventSourceMappingWithName retrieves all lambda.EventSourceMapping items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassConnectorDefinitionWithName(name string) (*resources.AWSGreengrassConnectorDefinition, error) { +func (t *Template) GetLambdaEventSourceMappingWithName(name string) (*lambda.EventSourceMapping, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassConnectorDefinition: + case *lambda.EventSourceMapping: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassConnectorDefinition not found", name) + return nil, fmt.Errorf("resource %q of type lambda.EventSourceMapping not found", name) } -// GetAllAWSGreengrassConnectorDefinitionVersionResources retrieves all AWSGreengrassConnectorDefinitionVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassConnectorDefinitionVersionResources() map[string]*resources.AWSGreengrassConnectorDefinitionVersion { - results := map[string]*resources.AWSGreengrassConnectorDefinitionVersion{} +// GetAllEC2PlacementGroupResources retrieves all ec2.PlacementGroup items from an AWS CloudFormation template +func (t *Template) GetAllEC2PlacementGroupResources() map[string]*ec2.PlacementGroup { + results := map[string]*ec2.PlacementGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassConnectorDefinitionVersion: + case *ec2.PlacementGroup: results[name] = resource } } return results } -// GetAWSGreengrassConnectorDefinitionVersionWithName retrieves all AWSGreengrassConnectorDefinitionVersion items from an AWS CloudFormation template +// GetEC2PlacementGroupWithName retrieves all ec2.PlacementGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassConnectorDefinitionVersionWithName(name string) (*resources.AWSGreengrassConnectorDefinitionVersion, error) { +func (t *Template) GetEC2PlacementGroupWithName(name string) (*ec2.PlacementGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassConnectorDefinitionVersion: + case *ec2.PlacementGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassConnectorDefinitionVersion not found", name) + return nil, fmt.Errorf("resource %q of type ec2.PlacementGroup not found", name) } -// GetAllAWSGreengrassCoreDefinitionResources retrieves all AWSGreengrassCoreDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassCoreDefinitionResources() map[string]*resources.AWSGreengrassCoreDefinition { - results := map[string]*resources.AWSGreengrassCoreDefinition{} +// GetAllEC2TrafficMirrorFilterRuleResources retrieves all ec2.TrafficMirrorFilterRule items from an AWS CloudFormation template +func (t *Template) GetAllEC2TrafficMirrorFilterRuleResources() map[string]*ec2.TrafficMirrorFilterRule { + results := map[string]*ec2.TrafficMirrorFilterRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassCoreDefinition: + case *ec2.TrafficMirrorFilterRule: results[name] = resource } } return results } -// GetAWSGreengrassCoreDefinitionWithName retrieves all AWSGreengrassCoreDefinition items from an AWS CloudFormation template +// GetEC2TrafficMirrorFilterRuleWithName retrieves all ec2.TrafficMirrorFilterRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassCoreDefinitionWithName(name string) (*resources.AWSGreengrassCoreDefinition, error) { +func (t *Template) GetEC2TrafficMirrorFilterRuleWithName(name string) (*ec2.TrafficMirrorFilterRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassCoreDefinition: + case *ec2.TrafficMirrorFilterRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassCoreDefinition not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TrafficMirrorFilterRule not found", name) } -// GetAllAWSGreengrassCoreDefinitionVersionResources retrieves all AWSGreengrassCoreDefinitionVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassCoreDefinitionVersionResources() map[string]*resources.AWSGreengrassCoreDefinitionVersion { - results := map[string]*resources.AWSGreengrassCoreDefinitionVersion{} +// GetAllApiGatewayModelResources retrieves all apigateway.Model items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayModelResources() map[string]*apigateway.Model { + results := map[string]*apigateway.Model{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassCoreDefinitionVersion: + case *apigateway.Model: results[name] = resource } } return results } -// GetAWSGreengrassCoreDefinitionVersionWithName retrieves all AWSGreengrassCoreDefinitionVersion items from an AWS CloudFormation template +// GetApiGatewayModelWithName retrieves all apigateway.Model items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassCoreDefinitionVersionWithName(name string) (*resources.AWSGreengrassCoreDefinitionVersion, error) { +func (t *Template) GetApiGatewayModelWithName(name string) (*apigateway.Model, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassCoreDefinitionVersion: + case *apigateway.Model: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassCoreDefinitionVersion not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.Model not found", name) } -// GetAllAWSGreengrassDeviceDefinitionResources retrieves all AWSGreengrassDeviceDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassDeviceDefinitionResources() map[string]*resources.AWSGreengrassDeviceDefinition { - results := map[string]*resources.AWSGreengrassDeviceDefinition{} +// GetAllWAFRegionalRegexPatternSetResources retrieves all wafregional.RegexPatternSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalRegexPatternSetResources() map[string]*wafregional.RegexPatternSet { + results := map[string]*wafregional.RegexPatternSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassDeviceDefinition: + case *wafregional.RegexPatternSet: results[name] = resource } } return results } -// GetAWSGreengrassDeviceDefinitionWithName retrieves all AWSGreengrassDeviceDefinition items from an AWS CloudFormation template +// GetWAFRegionalRegexPatternSetWithName retrieves all wafregional.RegexPatternSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassDeviceDefinitionWithName(name string) (*resources.AWSGreengrassDeviceDefinition, error) { +func (t *Template) GetWAFRegionalRegexPatternSetWithName(name string) (*wafregional.RegexPatternSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassDeviceDefinition: + case *wafregional.RegexPatternSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassDeviceDefinition not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.RegexPatternSet not found", name) } -// GetAllAWSGreengrassDeviceDefinitionVersionResources retrieves all AWSGreengrassDeviceDefinitionVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassDeviceDefinitionVersionResources() map[string]*resources.AWSGreengrassDeviceDefinitionVersion { - results := map[string]*resources.AWSGreengrassDeviceDefinitionVersion{} +// GetAllAutoScalingLifecycleHookResources retrieves all autoscaling.LifecycleHook items from an AWS CloudFormation template +func (t *Template) GetAllAutoScalingLifecycleHookResources() map[string]*autoscaling.LifecycleHook { + results := map[string]*autoscaling.LifecycleHook{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassDeviceDefinitionVersion: + case *autoscaling.LifecycleHook: results[name] = resource } } return results } -// GetAWSGreengrassDeviceDefinitionVersionWithName retrieves all AWSGreengrassDeviceDefinitionVersion items from an AWS CloudFormation template +// GetAutoScalingLifecycleHookWithName retrieves all autoscaling.LifecycleHook items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassDeviceDefinitionVersionWithName(name string) (*resources.AWSGreengrassDeviceDefinitionVersion, error) { +func (t *Template) GetAutoScalingLifecycleHookWithName(name string) (*autoscaling.LifecycleHook, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassDeviceDefinitionVersion: + case *autoscaling.LifecycleHook: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassDeviceDefinitionVersion not found", name) + return nil, fmt.Errorf("resource %q of type autoscaling.LifecycleHook not found", name) } -// GetAllAWSGreengrassFunctionDefinitionResources retrieves all AWSGreengrassFunctionDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassFunctionDefinitionResources() map[string]*resources.AWSGreengrassFunctionDefinition { - results := map[string]*resources.AWSGreengrassFunctionDefinition{} +// GetAllApiGatewayV2IntegrationResponseResources retrieves all apigatewayv2.IntegrationResponse items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2IntegrationResponseResources() map[string]*apigatewayv2.IntegrationResponse { + results := map[string]*apigatewayv2.IntegrationResponse{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassFunctionDefinition: + case *apigatewayv2.IntegrationResponse: results[name] = resource } } return results } -// GetAWSGreengrassFunctionDefinitionWithName retrieves all AWSGreengrassFunctionDefinition items from an AWS CloudFormation template +// GetApiGatewayV2IntegrationResponseWithName retrieves all apigatewayv2.IntegrationResponse items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassFunctionDefinitionWithName(name string) (*resources.AWSGreengrassFunctionDefinition, error) { +func (t *Template) GetApiGatewayV2IntegrationResponseWithName(name string) (*apigatewayv2.IntegrationResponse, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassFunctionDefinition: + case *apigatewayv2.IntegrationResponse: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassFunctionDefinition not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.IntegrationResponse not found", name) } -// GetAllAWSGreengrassFunctionDefinitionVersionResources retrieves all AWSGreengrassFunctionDefinitionVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassFunctionDefinitionVersionResources() map[string]*resources.AWSGreengrassFunctionDefinitionVersion { - results := map[string]*resources.AWSGreengrassFunctionDefinitionVersion{} +// GetAllEC2CapacityReservationResources retrieves all ec2.CapacityReservation items from an AWS CloudFormation template +func (t *Template) GetAllEC2CapacityReservationResources() map[string]*ec2.CapacityReservation { + results := map[string]*ec2.CapacityReservation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassFunctionDefinitionVersion: + case *ec2.CapacityReservation: results[name] = resource } } return results } -// GetAWSGreengrassFunctionDefinitionVersionWithName retrieves all AWSGreengrassFunctionDefinitionVersion items from an AWS CloudFormation template +// GetEC2CapacityReservationWithName retrieves all ec2.CapacityReservation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassFunctionDefinitionVersionWithName(name string) (*resources.AWSGreengrassFunctionDefinitionVersion, error) { +func (t *Template) GetEC2CapacityReservationWithName(name string) (*ec2.CapacityReservation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassFunctionDefinitionVersion: + case *ec2.CapacityReservation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassFunctionDefinitionVersion not found", name) + return nil, fmt.Errorf("resource %q of type ec2.CapacityReservation not found", name) } -// GetAllAWSGreengrassGroupResources retrieves all AWSGreengrassGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassGroupResources() map[string]*resources.AWSGreengrassGroup { - results := map[string]*resources.AWSGreengrassGroup{} +// GetAllAppSyncResolverResources retrieves all appsync.Resolver items from an AWS CloudFormation template +func (t *Template) GetAllAppSyncResolverResources() map[string]*appsync.Resolver { + results := map[string]*appsync.Resolver{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassGroup: + case *appsync.Resolver: results[name] = resource } } return results } -// GetAWSGreengrassGroupWithName retrieves all AWSGreengrassGroup items from an AWS CloudFormation template +// GetAppSyncResolverWithName retrieves all appsync.Resolver items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassGroupWithName(name string) (*resources.AWSGreengrassGroup, error) { +func (t *Template) GetAppSyncResolverWithName(name string) (*appsync.Resolver, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassGroup: + case *appsync.Resolver: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassGroup not found", name) + return nil, fmt.Errorf("resource %q of type appsync.Resolver not found", name) } -// GetAllAWSGreengrassGroupVersionResources retrieves all AWSGreengrassGroupVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassGroupVersionResources() map[string]*resources.AWSGreengrassGroupVersion { - results := map[string]*resources.AWSGreengrassGroupVersion{} +// GetAllAmazonMQConfigurationResources retrieves all amazonmq.Configuration items from an AWS CloudFormation template +func (t *Template) GetAllAmazonMQConfigurationResources() map[string]*amazonmq.Configuration { + results := map[string]*amazonmq.Configuration{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassGroupVersion: + case *amazonmq.Configuration: results[name] = resource } } return results } -// GetAWSGreengrassGroupVersionWithName retrieves all AWSGreengrassGroupVersion items from an AWS CloudFormation template +// GetAmazonMQConfigurationWithName retrieves all amazonmq.Configuration items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassGroupVersionWithName(name string) (*resources.AWSGreengrassGroupVersion, error) { +func (t *Template) GetAmazonMQConfigurationWithName(name string) (*amazonmq.Configuration, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassGroupVersion: + case *amazonmq.Configuration: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassGroupVersion not found", name) + return nil, fmt.Errorf("resource %q of type amazonmq.Configuration not found", name) } -// GetAllAWSGreengrassLoggerDefinitionResources retrieves all AWSGreengrassLoggerDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassLoggerDefinitionResources() map[string]*resources.AWSGreengrassLoggerDefinition { - results := map[string]*resources.AWSGreengrassLoggerDefinition{} +// GetAllGameLiftBuildResources retrieves all gamelift.Build items from an AWS CloudFormation template +func (t *Template) GetAllGameLiftBuildResources() map[string]*gamelift.Build { + results := map[string]*gamelift.Build{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassLoggerDefinition: + case *gamelift.Build: results[name] = resource } } return results } -// GetAWSGreengrassLoggerDefinitionWithName retrieves all AWSGreengrassLoggerDefinition items from an AWS CloudFormation template +// GetGameLiftBuildWithName retrieves all gamelift.Build items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassLoggerDefinitionWithName(name string) (*resources.AWSGreengrassLoggerDefinition, error) { +func (t *Template) GetGameLiftBuildWithName(name string) (*gamelift.Build, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassLoggerDefinition: + case *gamelift.Build: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassLoggerDefinition not found", name) + return nil, fmt.Errorf("resource %q of type gamelift.Build not found", name) } -// GetAllAWSGreengrassLoggerDefinitionVersionResources retrieves all AWSGreengrassLoggerDefinitionVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassLoggerDefinitionVersionResources() map[string]*resources.AWSGreengrassLoggerDefinitionVersion { - results := map[string]*resources.AWSGreengrassLoggerDefinitionVersion{} +// GetAllSecurityHubHubResources retrieves all securityhub.Hub items from an AWS CloudFormation template +func (t *Template) GetAllSecurityHubHubResources() map[string]*securityhub.Hub { + results := map[string]*securityhub.Hub{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassLoggerDefinitionVersion: + case *securityhub.Hub: results[name] = resource } } return results } -// GetAWSGreengrassLoggerDefinitionVersionWithName retrieves all AWSGreengrassLoggerDefinitionVersion items from an AWS CloudFormation template +// GetSecurityHubHubWithName retrieves all securityhub.Hub items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassLoggerDefinitionVersionWithName(name string) (*resources.AWSGreengrassLoggerDefinitionVersion, error) { +func (t *Template) GetSecurityHubHubWithName(name string) (*securityhub.Hub, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassLoggerDefinitionVersion: + case *securityhub.Hub: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassLoggerDefinitionVersion not found", name) + return nil, fmt.Errorf("resource %q of type securityhub.Hub not found", name) } -// GetAllAWSGreengrassResourceDefinitionResources retrieves all AWSGreengrassResourceDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassResourceDefinitionResources() map[string]*resources.AWSGreengrassResourceDefinition { - results := map[string]*resources.AWSGreengrassResourceDefinition{} +// GetAllDLMLifecyclePolicyResources retrieves all dlm.LifecyclePolicy items from an AWS CloudFormation template +func (t *Template) GetAllDLMLifecyclePolicyResources() map[string]*dlm.LifecyclePolicy { + results := map[string]*dlm.LifecyclePolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassResourceDefinition: + case *dlm.LifecyclePolicy: results[name] = resource } } return results } -// GetAWSGreengrassResourceDefinitionWithName retrieves all AWSGreengrassResourceDefinition items from an AWS CloudFormation template +// GetDLMLifecyclePolicyWithName retrieves all dlm.LifecyclePolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassResourceDefinitionWithName(name string) (*resources.AWSGreengrassResourceDefinition, error) { +func (t *Template) GetDLMLifecyclePolicyWithName(name string) (*dlm.LifecyclePolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassResourceDefinition: + case *dlm.LifecyclePolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassResourceDefinition not found", name) + return nil, fmt.Errorf("resource %q of type dlm.LifecyclePolicy not found", name) } -// GetAllAWSGreengrassResourceDefinitionVersionResources retrieves all AWSGreengrassResourceDefinitionVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassResourceDefinitionVersionResources() map[string]*resources.AWSGreengrassResourceDefinitionVersion { - results := map[string]*resources.AWSGreengrassResourceDefinitionVersion{} +// GetAllGreengrassFunctionDefinitionResources retrieves all greengrass.FunctionDefinition items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassFunctionDefinitionResources() map[string]*greengrass.FunctionDefinition { + results := map[string]*greengrass.FunctionDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassResourceDefinitionVersion: + case *greengrass.FunctionDefinition: results[name] = resource } } return results } -// GetAWSGreengrassResourceDefinitionVersionWithName retrieves all AWSGreengrassResourceDefinitionVersion items from an AWS CloudFormation template +// GetGreengrassFunctionDefinitionWithName retrieves all greengrass.FunctionDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassResourceDefinitionVersionWithName(name string) (*resources.AWSGreengrassResourceDefinitionVersion, error) { +func (t *Template) GetGreengrassFunctionDefinitionWithName(name string) (*greengrass.FunctionDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassResourceDefinitionVersion: + case *greengrass.FunctionDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassResourceDefinitionVersion not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.FunctionDefinition not found", name) } -// GetAllAWSGreengrassSubscriptionDefinitionResources retrieves all AWSGreengrassSubscriptionDefinition items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassSubscriptionDefinitionResources() map[string]*resources.AWSGreengrassSubscriptionDefinition { - results := map[string]*resources.AWSGreengrassSubscriptionDefinition{} +// GetAllEC2TransitGatewayResources retrieves all ec2.TransitGateway items from an AWS CloudFormation template +func (t *Template) GetAllEC2TransitGatewayResources() map[string]*ec2.TransitGateway { + results := map[string]*ec2.TransitGateway{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassSubscriptionDefinition: + case *ec2.TransitGateway: results[name] = resource } } return results } -// GetAWSGreengrassSubscriptionDefinitionWithName retrieves all AWSGreengrassSubscriptionDefinition items from an AWS CloudFormation template +// GetEC2TransitGatewayWithName retrieves all ec2.TransitGateway items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassSubscriptionDefinitionWithName(name string) (*resources.AWSGreengrassSubscriptionDefinition, error) { +func (t *Template) GetEC2TransitGatewayWithName(name string) (*ec2.TransitGateway, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassSubscriptionDefinition: + case *ec2.TransitGateway: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassSubscriptionDefinition not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TransitGateway not found", name) } -// GetAllAWSGreengrassSubscriptionDefinitionVersionResources retrieves all AWSGreengrassSubscriptionDefinitionVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSGreengrassSubscriptionDefinitionVersionResources() map[string]*resources.AWSGreengrassSubscriptionDefinitionVersion { - results := map[string]*resources.AWSGreengrassSubscriptionDefinitionVersion{} +// GetAllCodeDeployDeploymentConfigResources retrieves all codedeploy.DeploymentConfig items from an AWS CloudFormation template +func (t *Template) GetAllCodeDeployDeploymentConfigResources() map[string]*codedeploy.DeploymentConfig { + results := map[string]*codedeploy.DeploymentConfig{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGreengrassSubscriptionDefinitionVersion: + case *codedeploy.DeploymentConfig: results[name] = resource } } return results } -// GetAWSGreengrassSubscriptionDefinitionVersionWithName retrieves all AWSGreengrassSubscriptionDefinitionVersion items from an AWS CloudFormation template +// GetCodeDeployDeploymentConfigWithName retrieves all codedeploy.DeploymentConfig items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGreengrassSubscriptionDefinitionVersionWithName(name string) (*resources.AWSGreengrassSubscriptionDefinitionVersion, error) { +func (t *Template) GetCodeDeployDeploymentConfigWithName(name string) (*codedeploy.DeploymentConfig, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGreengrassSubscriptionDefinitionVersion: + case *codedeploy.DeploymentConfig: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGreengrassSubscriptionDefinitionVersion not found", name) + return nil, fmt.Errorf("resource %q of type codedeploy.DeploymentConfig not found", name) } -// GetAllAWSGuardDutyDetectorResources retrieves all AWSGuardDutyDetector items from an AWS CloudFormation template -func (t *Template) GetAllAWSGuardDutyDetectorResources() map[string]*resources.AWSGuardDutyDetector { - results := map[string]*resources.AWSGuardDutyDetector{} +// GetAllWAFRegionalRuleResources retrieves all wafregional.Rule items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalRuleResources() map[string]*wafregional.Rule { + results := map[string]*wafregional.Rule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGuardDutyDetector: + case *wafregional.Rule: results[name] = resource } } return results } -// GetAWSGuardDutyDetectorWithName retrieves all AWSGuardDutyDetector items from an AWS CloudFormation template +// GetWAFRegionalRuleWithName retrieves all wafregional.Rule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGuardDutyDetectorWithName(name string) (*resources.AWSGuardDutyDetector, error) { +func (t *Template) GetWAFRegionalRuleWithName(name string) (*wafregional.Rule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGuardDutyDetector: + case *wafregional.Rule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGuardDutyDetector not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.Rule not found", name) } -// GetAllAWSGuardDutyFilterResources retrieves all AWSGuardDutyFilter items from an AWS CloudFormation template -func (t *Template) GetAllAWSGuardDutyFilterResources() map[string]*resources.AWSGuardDutyFilter { - results := map[string]*resources.AWSGuardDutyFilter{} +// GetAllIAMPolicyResources retrieves all iam.Policy items from an AWS CloudFormation template +func (t *Template) GetAllIAMPolicyResources() map[string]*iam.Policy { + results := map[string]*iam.Policy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGuardDutyFilter: + case *iam.Policy: results[name] = resource } } return results } -// GetAWSGuardDutyFilterWithName retrieves all AWSGuardDutyFilter items from an AWS CloudFormation template +// GetIAMPolicyWithName retrieves all iam.Policy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGuardDutyFilterWithName(name string) (*resources.AWSGuardDutyFilter, error) { +func (t *Template) GetIAMPolicyWithName(name string) (*iam.Policy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGuardDutyFilter: + case *iam.Policy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGuardDutyFilter not found", name) + return nil, fmt.Errorf("resource %q of type iam.Policy not found", name) } -// GetAllAWSGuardDutyIPSetResources retrieves all AWSGuardDutyIPSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSGuardDutyIPSetResources() map[string]*resources.AWSGuardDutyIPSet { - results := map[string]*resources.AWSGuardDutyIPSet{} +// GetAllServiceCatalogPortfolioProductAssociationResources retrieves all servicecatalog.PortfolioProductAssociation items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogPortfolioProductAssociationResources() map[string]*servicecatalog.PortfolioProductAssociation { + results := map[string]*servicecatalog.PortfolioProductAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGuardDutyIPSet: + case *servicecatalog.PortfolioProductAssociation: results[name] = resource } } return results } -// GetAWSGuardDutyIPSetWithName retrieves all AWSGuardDutyIPSet items from an AWS CloudFormation template +// GetServiceCatalogPortfolioProductAssociationWithName retrieves all servicecatalog.PortfolioProductAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGuardDutyIPSetWithName(name string) (*resources.AWSGuardDutyIPSet, error) { +func (t *Template) GetServiceCatalogPortfolioProductAssociationWithName(name string) (*servicecatalog.PortfolioProductAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGuardDutyIPSet: + case *servicecatalog.PortfolioProductAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGuardDutyIPSet not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.PortfolioProductAssociation not found", name) } -// GetAllAWSGuardDutyMasterResources retrieves all AWSGuardDutyMaster items from an AWS CloudFormation template -func (t *Template) GetAllAWSGuardDutyMasterResources() map[string]*resources.AWSGuardDutyMaster { - results := map[string]*resources.AWSGuardDutyMaster{} +// GetAllIoT1ClickPlacementResources retrieves all iot1click.Placement items from an AWS CloudFormation template +func (t *Template) GetAllIoT1ClickPlacementResources() map[string]*iot1click.Placement { + results := map[string]*iot1click.Placement{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGuardDutyMaster: + case *iot1click.Placement: results[name] = resource } } return results } -// GetAWSGuardDutyMasterWithName retrieves all AWSGuardDutyMaster items from an AWS CloudFormation template +// GetIoT1ClickPlacementWithName retrieves all iot1click.Placement items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGuardDutyMasterWithName(name string) (*resources.AWSGuardDutyMaster, error) { +func (t *Template) GetIoT1ClickPlacementWithName(name string) (*iot1click.Placement, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGuardDutyMaster: + case *iot1click.Placement: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGuardDutyMaster not found", name) + return nil, fmt.Errorf("resource %q of type iot1click.Placement not found", name) } -// GetAllAWSGuardDutyMemberResources retrieves all AWSGuardDutyMember items from an AWS CloudFormation template -func (t *Template) GetAllAWSGuardDutyMemberResources() map[string]*resources.AWSGuardDutyMember { - results := map[string]*resources.AWSGuardDutyMember{} +// GetAllIoTAnalyticsDatastoreResources retrieves all iotanalytics.Datastore items from an AWS CloudFormation template +func (t *Template) GetAllIoTAnalyticsDatastoreResources() map[string]*iotanalytics.Datastore { + results := map[string]*iotanalytics.Datastore{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGuardDutyMember: + case *iotanalytics.Datastore: results[name] = resource } } return results } -// GetAWSGuardDutyMemberWithName retrieves all AWSGuardDutyMember items from an AWS CloudFormation template +// GetIoTAnalyticsDatastoreWithName retrieves all iotanalytics.Datastore items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGuardDutyMemberWithName(name string) (*resources.AWSGuardDutyMember, error) { +func (t *Template) GetIoTAnalyticsDatastoreWithName(name string) (*iotanalytics.Datastore, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGuardDutyMember: + case *iotanalytics.Datastore: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGuardDutyMember not found", name) + return nil, fmt.Errorf("resource %q of type iotanalytics.Datastore not found", name) } -// GetAllAWSGuardDutyThreatIntelSetResources retrieves all AWSGuardDutyThreatIntelSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSGuardDutyThreatIntelSetResources() map[string]*resources.AWSGuardDutyThreatIntelSet { - results := map[string]*resources.AWSGuardDutyThreatIntelSet{} +// GetAllServiceDiscoveryHttpNamespaceResources retrieves all servicediscovery.HttpNamespace items from an AWS CloudFormation template +func (t *Template) GetAllServiceDiscoveryHttpNamespaceResources() map[string]*servicediscovery.HttpNamespace { + results := map[string]*servicediscovery.HttpNamespace{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSGuardDutyThreatIntelSet: + case *servicediscovery.HttpNamespace: results[name] = resource } } return results } -// GetAWSGuardDutyThreatIntelSetWithName retrieves all AWSGuardDutyThreatIntelSet items from an AWS CloudFormation template +// GetServiceDiscoveryHttpNamespaceWithName retrieves all servicediscovery.HttpNamespace items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSGuardDutyThreatIntelSetWithName(name string) (*resources.AWSGuardDutyThreatIntelSet, error) { +func (t *Template) GetServiceDiscoveryHttpNamespaceWithName(name string) (*servicediscovery.HttpNamespace, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSGuardDutyThreatIntelSet: + case *servicediscovery.HttpNamespace: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSGuardDutyThreatIntelSet not found", name) + return nil, fmt.Errorf("resource %q of type servicediscovery.HttpNamespace not found", name) } -// GetAllAWSIAMAccessKeyResources retrieves all AWSIAMAccessKey items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMAccessKeyResources() map[string]*resources.AWSIAMAccessKey { - results := map[string]*resources.AWSIAMAccessKey{} +// GetAllLogsLogGroupResources retrieves all logs.LogGroup items from an AWS CloudFormation template +func (t *Template) GetAllLogsLogGroupResources() map[string]*logs.LogGroup { + results := map[string]*logs.LogGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMAccessKey: + case *logs.LogGroup: results[name] = resource } } return results } -// GetAWSIAMAccessKeyWithName retrieves all AWSIAMAccessKey items from an AWS CloudFormation template +// GetLogsLogGroupWithName retrieves all logs.LogGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMAccessKeyWithName(name string) (*resources.AWSIAMAccessKey, error) { +func (t *Template) GetLogsLogGroupWithName(name string) (*logs.LogGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMAccessKey: + case *logs.LogGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMAccessKey not found", name) + return nil, fmt.Errorf("resource %q of type logs.LogGroup not found", name) } -// GetAllAWSIAMGroupResources retrieves all AWSIAMGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMGroupResources() map[string]*resources.AWSIAMGroup { - results := map[string]*resources.AWSIAMGroup{} +// GetAllEC2RouteTableResources retrieves all ec2.RouteTable items from an AWS CloudFormation template +func (t *Template) GetAllEC2RouteTableResources() map[string]*ec2.RouteTable { + results := map[string]*ec2.RouteTable{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMGroup: + case *ec2.RouteTable: results[name] = resource } } return results } -// GetAWSIAMGroupWithName retrieves all AWSIAMGroup items from an AWS CloudFormation template +// GetEC2RouteTableWithName retrieves all ec2.RouteTable items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMGroupWithName(name string) (*resources.AWSIAMGroup, error) { +func (t *Template) GetEC2RouteTableWithName(name string) (*ec2.RouteTable, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMGroup: + case *ec2.RouteTable: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMGroup not found", name) + return nil, fmt.Errorf("resource %q of type ec2.RouteTable not found", name) } -// GetAllAWSIAMInstanceProfileResources retrieves all AWSIAMInstanceProfile items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMInstanceProfileResources() map[string]*resources.AWSIAMInstanceProfile { - results := map[string]*resources.AWSIAMInstanceProfile{} +// GetAllApiGatewayV2RouteResources retrieves all apigatewayv2.Route items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2RouteResources() map[string]*apigatewayv2.Route { + results := map[string]*apigatewayv2.Route{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMInstanceProfile: + case *apigatewayv2.Route: results[name] = resource } } return results } -// GetAWSIAMInstanceProfileWithName retrieves all AWSIAMInstanceProfile items from an AWS CloudFormation template +// GetApiGatewayV2RouteWithName retrieves all apigatewayv2.Route items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMInstanceProfileWithName(name string) (*resources.AWSIAMInstanceProfile, error) { +func (t *Template) GetApiGatewayV2RouteWithName(name string) (*apigatewayv2.Route, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMInstanceProfile: + case *apigatewayv2.Route: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMInstanceProfile not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.Route not found", name) } -// GetAllAWSIAMManagedPolicyResources retrieves all AWSIAMManagedPolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMManagedPolicyResources() map[string]*resources.AWSIAMManagedPolicy { - results := map[string]*resources.AWSIAMManagedPolicy{} +// GetAllEC2VPNConnectionRouteResources retrieves all ec2.VPNConnectionRoute items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPNConnectionRouteResources() map[string]*ec2.VPNConnectionRoute { + results := map[string]*ec2.VPNConnectionRoute{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMManagedPolicy: + case *ec2.VPNConnectionRoute: results[name] = resource } } return results } -// GetAWSIAMManagedPolicyWithName retrieves all AWSIAMManagedPolicy items from an AWS CloudFormation template +// GetEC2VPNConnectionRouteWithName retrieves all ec2.VPNConnectionRoute items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMManagedPolicyWithName(name string) (*resources.AWSIAMManagedPolicy, error) { +func (t *Template) GetEC2VPNConnectionRouteWithName(name string) (*ec2.VPNConnectionRoute, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMManagedPolicy: + case *ec2.VPNConnectionRoute: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMManagedPolicy not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPNConnectionRoute not found", name) } -// GetAllAWSIAMPolicyResources retrieves all AWSIAMPolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMPolicyResources() map[string]*resources.AWSIAMPolicy { - results := map[string]*resources.AWSIAMPolicy{} +// GetAllOpsWorksStackResources retrieves all opsworks.Stack items from an AWS CloudFormation template +func (t *Template) GetAllOpsWorksStackResources() map[string]*opsworks.Stack { + results := map[string]*opsworks.Stack{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMPolicy: + case *opsworks.Stack: results[name] = resource } } return results } -// GetAWSIAMPolicyWithName retrieves all AWSIAMPolicy items from an AWS CloudFormation template +// GetOpsWorksStackWithName retrieves all opsworks.Stack items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMPolicyWithName(name string) (*resources.AWSIAMPolicy, error) { +func (t *Template) GetOpsWorksStackWithName(name string) (*opsworks.Stack, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMPolicy: + case *opsworks.Stack: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMPolicy not found", name) + return nil, fmt.Errorf("resource %q of type opsworks.Stack not found", name) } -// GetAllAWSIAMRoleResources retrieves all AWSIAMRole items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMRoleResources() map[string]*resources.AWSIAMRole { - results := map[string]*resources.AWSIAMRole{} +// GetAllDirectoryServiceMicrosoftADResources retrieves all directoryservice.MicrosoftAD items from an AWS CloudFormation template +func (t *Template) GetAllDirectoryServiceMicrosoftADResources() map[string]*directoryservice.MicrosoftAD { + results := map[string]*directoryservice.MicrosoftAD{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMRole: + case *directoryservice.MicrosoftAD: results[name] = resource } } return results } -// GetAWSIAMRoleWithName retrieves all AWSIAMRole items from an AWS CloudFormation template +// GetDirectoryServiceMicrosoftADWithName retrieves all directoryservice.MicrosoftAD items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMRoleWithName(name string) (*resources.AWSIAMRole, error) { +func (t *Template) GetDirectoryServiceMicrosoftADWithName(name string) (*directoryservice.MicrosoftAD, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMRole: + case *directoryservice.MicrosoftAD: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMRole not found", name) + return nil, fmt.Errorf("resource %q of type directoryservice.MicrosoftAD not found", name) } -// GetAllAWSIAMServiceLinkedRoleResources retrieves all AWSIAMServiceLinkedRole items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMServiceLinkedRoleResources() map[string]*resources.AWSIAMServiceLinkedRole { - results := map[string]*resources.AWSIAMServiceLinkedRole{} +// GetAllDataPipelinePipelineResources retrieves all datapipeline.Pipeline items from an AWS CloudFormation template +func (t *Template) GetAllDataPipelinePipelineResources() map[string]*datapipeline.Pipeline { + results := map[string]*datapipeline.Pipeline{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMServiceLinkedRole: + case *datapipeline.Pipeline: results[name] = resource } } return results } -// GetAWSIAMServiceLinkedRoleWithName retrieves all AWSIAMServiceLinkedRole items from an AWS CloudFormation template +// GetDataPipelinePipelineWithName retrieves all datapipeline.Pipeline items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMServiceLinkedRoleWithName(name string) (*resources.AWSIAMServiceLinkedRole, error) { +func (t *Template) GetDataPipelinePipelineWithName(name string) (*datapipeline.Pipeline, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMServiceLinkedRole: + case *datapipeline.Pipeline: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMServiceLinkedRole not found", name) + return nil, fmt.Errorf("resource %q of type datapipeline.Pipeline not found", name) } -// GetAllAWSIAMUserResources retrieves all AWSIAMUser items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMUserResources() map[string]*resources.AWSIAMUser { - results := map[string]*resources.AWSIAMUser{} +// GetAllBatchJobDefinitionResources retrieves all batch.JobDefinition items from an AWS CloudFormation template +func (t *Template) GetAllBatchJobDefinitionResources() map[string]*batch.JobDefinition { + results := map[string]*batch.JobDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMUser: + case *batch.JobDefinition: results[name] = resource } } return results } -// GetAWSIAMUserWithName retrieves all AWSIAMUser items from an AWS CloudFormation template +// GetBatchJobDefinitionWithName retrieves all batch.JobDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMUserWithName(name string) (*resources.AWSIAMUser, error) { +func (t *Template) GetBatchJobDefinitionWithName(name string) (*batch.JobDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMUser: + case *batch.JobDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMUser not found", name) + return nil, fmt.Errorf("resource %q of type batch.JobDefinition not found", name) } -// GetAllAWSIAMUserToGroupAdditionResources retrieves all AWSIAMUserToGroupAddition items from an AWS CloudFormation template -func (t *Template) GetAllAWSIAMUserToGroupAdditionResources() map[string]*resources.AWSIAMUserToGroupAddition { - results := map[string]*resources.AWSIAMUserToGroupAddition{} +// GetAllGreengrassResourceDefinitionResources retrieves all greengrass.ResourceDefinition items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassResourceDefinitionResources() map[string]*greengrass.ResourceDefinition { + results := map[string]*greengrass.ResourceDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIAMUserToGroupAddition: + case *greengrass.ResourceDefinition: results[name] = resource } } return results } -// GetAWSIAMUserToGroupAdditionWithName retrieves all AWSIAMUserToGroupAddition items from an AWS CloudFormation template +// GetGreengrassResourceDefinitionWithName retrieves all greengrass.ResourceDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIAMUserToGroupAdditionWithName(name string) (*resources.AWSIAMUserToGroupAddition, error) { +func (t *Template) GetGreengrassResourceDefinitionWithName(name string) (*greengrass.ResourceDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIAMUserToGroupAddition: + case *greengrass.ResourceDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIAMUserToGroupAddition not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.ResourceDefinition not found", name) } -// GetAllAWSInspectorAssessmentTargetResources retrieves all AWSInspectorAssessmentTarget items from an AWS CloudFormation template -func (t *Template) GetAllAWSInspectorAssessmentTargetResources() map[string]*resources.AWSInspectorAssessmentTarget { - results := map[string]*resources.AWSInspectorAssessmentTarget{} +// GetAllIAMRoleResources retrieves all iam.Role items from an AWS CloudFormation template +func (t *Template) GetAllIAMRoleResources() map[string]*iam.Role { + results := map[string]*iam.Role{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSInspectorAssessmentTarget: + case *iam.Role: results[name] = resource } } return results } -// GetAWSInspectorAssessmentTargetWithName retrieves all AWSInspectorAssessmentTarget items from an AWS CloudFormation template +// GetIAMRoleWithName retrieves all iam.Role items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSInspectorAssessmentTargetWithName(name string) (*resources.AWSInspectorAssessmentTarget, error) { +func (t *Template) GetIAMRoleWithName(name string) (*iam.Role, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSInspectorAssessmentTarget: + case *iam.Role: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSInspectorAssessmentTarget not found", name) + return nil, fmt.Errorf("resource %q of type iam.Role not found", name) } -// GetAllAWSInspectorAssessmentTemplateResources retrieves all AWSInspectorAssessmentTemplate items from an AWS CloudFormation template -func (t *Template) GetAllAWSInspectorAssessmentTemplateResources() map[string]*resources.AWSInspectorAssessmentTemplate { - results := map[string]*resources.AWSInspectorAssessmentTemplate{} +// GetAllServiceCatalogLaunchTemplateConstraintResources retrieves all servicecatalog.LaunchTemplateConstraint items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogLaunchTemplateConstraintResources() map[string]*servicecatalog.LaunchTemplateConstraint { + results := map[string]*servicecatalog.LaunchTemplateConstraint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSInspectorAssessmentTemplate: + case *servicecatalog.LaunchTemplateConstraint: results[name] = resource } } return results } -// GetAWSInspectorAssessmentTemplateWithName retrieves all AWSInspectorAssessmentTemplate items from an AWS CloudFormation template +// GetServiceCatalogLaunchTemplateConstraintWithName retrieves all servicecatalog.LaunchTemplateConstraint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSInspectorAssessmentTemplateWithName(name string) (*resources.AWSInspectorAssessmentTemplate, error) { +func (t *Template) GetServiceCatalogLaunchTemplateConstraintWithName(name string) (*servicecatalog.LaunchTemplateConstraint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSInspectorAssessmentTemplate: + case *servicecatalog.LaunchTemplateConstraint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSInspectorAssessmentTemplate not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.LaunchTemplateConstraint not found", name) } -// GetAllAWSInspectorResourceGroupResources retrieves all AWSInspectorResourceGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSInspectorResourceGroupResources() map[string]*resources.AWSInspectorResourceGroup { - results := map[string]*resources.AWSInspectorResourceGroup{} +// GetAllBatchComputeEnvironmentResources retrieves all batch.ComputeEnvironment items from an AWS CloudFormation template +func (t *Template) GetAllBatchComputeEnvironmentResources() map[string]*batch.ComputeEnvironment { + results := map[string]*batch.ComputeEnvironment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSInspectorResourceGroup: + case *batch.ComputeEnvironment: results[name] = resource } } return results } -// GetAWSInspectorResourceGroupWithName retrieves all AWSInspectorResourceGroup items from an AWS CloudFormation template +// GetBatchComputeEnvironmentWithName retrieves all batch.ComputeEnvironment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSInspectorResourceGroupWithName(name string) (*resources.AWSInspectorResourceGroup, error) { +func (t *Template) GetBatchComputeEnvironmentWithName(name string) (*batch.ComputeEnvironment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSInspectorResourceGroup: + case *batch.ComputeEnvironment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSInspectorResourceGroup not found", name) + return nil, fmt.Errorf("resource %q of type batch.ComputeEnvironment not found", name) } -// GetAllAWSIoT1ClickDeviceResources retrieves all AWSIoT1ClickDevice items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoT1ClickDeviceResources() map[string]*resources.AWSIoT1ClickDevice { - results := map[string]*resources.AWSIoT1ClickDevice{} +// GetAllDMSEndpointResources retrieves all dms.Endpoint items from an AWS CloudFormation template +func (t *Template) GetAllDMSEndpointResources() map[string]*dms.Endpoint { + results := map[string]*dms.Endpoint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoT1ClickDevice: + case *dms.Endpoint: results[name] = resource } } return results } -// GetAWSIoT1ClickDeviceWithName retrieves all AWSIoT1ClickDevice items from an AWS CloudFormation template +// GetDMSEndpointWithName retrieves all dms.Endpoint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoT1ClickDeviceWithName(name string) (*resources.AWSIoT1ClickDevice, error) { +func (t *Template) GetDMSEndpointWithName(name string) (*dms.Endpoint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoT1ClickDevice: + case *dms.Endpoint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoT1ClickDevice not found", name) + return nil, fmt.Errorf("resource %q of type dms.Endpoint not found", name) } -// GetAllAWSIoT1ClickPlacementResources retrieves all AWSIoT1ClickPlacement items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoT1ClickPlacementResources() map[string]*resources.AWSIoT1ClickPlacement { - results := map[string]*resources.AWSIoT1ClickPlacement{} +// GetAllGlueDataCatalogEncryptionSettingsResources retrieves all glue.DataCatalogEncryptionSettings items from an AWS CloudFormation template +func (t *Template) GetAllGlueDataCatalogEncryptionSettingsResources() map[string]*glue.DataCatalogEncryptionSettings { + results := map[string]*glue.DataCatalogEncryptionSettings{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoT1ClickPlacement: + case *glue.DataCatalogEncryptionSettings: results[name] = resource } } return results } -// GetAWSIoT1ClickPlacementWithName retrieves all AWSIoT1ClickPlacement items from an AWS CloudFormation template +// GetGlueDataCatalogEncryptionSettingsWithName retrieves all glue.DataCatalogEncryptionSettings items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoT1ClickPlacementWithName(name string) (*resources.AWSIoT1ClickPlacement, error) { +func (t *Template) GetGlueDataCatalogEncryptionSettingsWithName(name string) (*glue.DataCatalogEncryptionSettings, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoT1ClickPlacement: + case *glue.DataCatalogEncryptionSettings: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoT1ClickPlacement not found", name) + return nil, fmt.Errorf("resource %q of type glue.DataCatalogEncryptionSettings not found", name) } -// GetAllAWSIoT1ClickProjectResources retrieves all AWSIoT1ClickProject items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoT1ClickProjectResources() map[string]*resources.AWSIoT1ClickProject { - results := map[string]*resources.AWSIoT1ClickProject{} +// GetAllAppMeshVirtualRouterResources retrieves all appmesh.VirtualRouter items from an AWS CloudFormation template +func (t *Template) GetAllAppMeshVirtualRouterResources() map[string]*appmesh.VirtualRouter { + results := map[string]*appmesh.VirtualRouter{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoT1ClickProject: + case *appmesh.VirtualRouter: results[name] = resource } } return results } -// GetAWSIoT1ClickProjectWithName retrieves all AWSIoT1ClickProject items from an AWS CloudFormation template +// GetAppMeshVirtualRouterWithName retrieves all appmesh.VirtualRouter items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoT1ClickProjectWithName(name string) (*resources.AWSIoT1ClickProject, error) { +func (t *Template) GetAppMeshVirtualRouterWithName(name string) (*appmesh.VirtualRouter, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoT1ClickProject: + case *appmesh.VirtualRouter: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoT1ClickProject not found", name) + return nil, fmt.Errorf("resource %q of type appmesh.VirtualRouter not found", name) } -// GetAllAWSIoTCertificateResources retrieves all AWSIoTCertificate items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTCertificateResources() map[string]*resources.AWSIoTCertificate { - results := map[string]*resources.AWSIoTCertificate{} +// GetAllAmplifyAppResources retrieves all amplify.App items from an AWS CloudFormation template +func (t *Template) GetAllAmplifyAppResources() map[string]*amplify.App { + results := map[string]*amplify.App{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTCertificate: + case *amplify.App: results[name] = resource } } return results } -// GetAWSIoTCertificateWithName retrieves all AWSIoTCertificate items from an AWS CloudFormation template +// GetAmplifyAppWithName retrieves all amplify.App items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTCertificateWithName(name string) (*resources.AWSIoTCertificate, error) { +func (t *Template) GetAmplifyAppWithName(name string) (*amplify.App, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTCertificate: + case *amplify.App: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTCertificate not found", name) + return nil, fmt.Errorf("resource %q of type amplify.App not found", name) } -// GetAllAWSIoTPolicyResources retrieves all AWSIoTPolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTPolicyResources() map[string]*resources.AWSIoTPolicy { - results := map[string]*resources.AWSIoTPolicy{} +// GetAllNeptuneDBSubnetGroupResources retrieves all neptune.DBSubnetGroup items from an AWS CloudFormation template +func (t *Template) GetAllNeptuneDBSubnetGroupResources() map[string]*neptune.DBSubnetGroup { + results := map[string]*neptune.DBSubnetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTPolicy: + case *neptune.DBSubnetGroup: results[name] = resource } } return results } -// GetAWSIoTPolicyWithName retrieves all AWSIoTPolicy items from an AWS CloudFormation template +// GetNeptuneDBSubnetGroupWithName retrieves all neptune.DBSubnetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTPolicyWithName(name string) (*resources.AWSIoTPolicy, error) { +func (t *Template) GetNeptuneDBSubnetGroupWithName(name string) (*neptune.DBSubnetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTPolicy: + case *neptune.DBSubnetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTPolicy not found", name) + return nil, fmt.Errorf("resource %q of type neptune.DBSubnetGroup not found", name) } -// GetAllAWSIoTPolicyPrincipalAttachmentResources retrieves all AWSIoTPolicyPrincipalAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTPolicyPrincipalAttachmentResources() map[string]*resources.AWSIoTPolicyPrincipalAttachment { - results := map[string]*resources.AWSIoTPolicyPrincipalAttachment{} +// GetAllCloudFormationWaitConditionResources retrieves all cloudformation.WaitCondition items from an AWS CloudFormation template +func (t *Template) GetAllCloudFormationWaitConditionResources() map[string]*cloudformation.WaitCondition { + results := map[string]*cloudformation.WaitCondition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTPolicyPrincipalAttachment: + case *cloudformation.WaitCondition: results[name] = resource } } return results } -// GetAWSIoTPolicyPrincipalAttachmentWithName retrieves all AWSIoTPolicyPrincipalAttachment items from an AWS CloudFormation template +// GetCloudFormationWaitConditionWithName retrieves all cloudformation.WaitCondition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTPolicyPrincipalAttachmentWithName(name string) (*resources.AWSIoTPolicyPrincipalAttachment, error) { +func (t *Template) GetCloudFormationWaitConditionWithName(name string) (*cloudformation.WaitCondition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTPolicyPrincipalAttachment: + case *cloudformation.WaitCondition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTPolicyPrincipalAttachment not found", name) + return nil, fmt.Errorf("resource %q of type cloudformation.WaitCondition not found", name) } -// GetAllAWSIoTThingResources retrieves all AWSIoTThing items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTThingResources() map[string]*resources.AWSIoTThing { - results := map[string]*resources.AWSIoTThing{} +// GetAllApplicationAutoScalingScalableTargetResources retrieves all applicationautoscaling.ScalableTarget items from an AWS CloudFormation template +func (t *Template) GetAllApplicationAutoScalingScalableTargetResources() map[string]*applicationautoscaling.ScalableTarget { + results := map[string]*applicationautoscaling.ScalableTarget{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTThing: + case *applicationautoscaling.ScalableTarget: results[name] = resource } } return results } -// GetAWSIoTThingWithName retrieves all AWSIoTThing items from an AWS CloudFormation template +// GetApplicationAutoScalingScalableTargetWithName retrieves all applicationautoscaling.ScalableTarget items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTThingWithName(name string) (*resources.AWSIoTThing, error) { +func (t *Template) GetApplicationAutoScalingScalableTargetWithName(name string) (*applicationautoscaling.ScalableTarget, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTThing: + case *applicationautoscaling.ScalableTarget: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTThing not found", name) + return nil, fmt.Errorf("resource %q of type applicationautoscaling.ScalableTarget not found", name) } -// GetAllAWSIoTThingPrincipalAttachmentResources retrieves all AWSIoTThingPrincipalAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTThingPrincipalAttachmentResources() map[string]*resources.AWSIoTThingPrincipalAttachment { - results := map[string]*resources.AWSIoTThingPrincipalAttachment{} +// GetAllRedshiftClusterResources retrieves all redshift.Cluster items from an AWS CloudFormation template +func (t *Template) GetAllRedshiftClusterResources() map[string]*redshift.Cluster { + results := map[string]*redshift.Cluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTThingPrincipalAttachment: + case *redshift.Cluster: results[name] = resource } } return results } -// GetAWSIoTThingPrincipalAttachmentWithName retrieves all AWSIoTThingPrincipalAttachment items from an AWS CloudFormation template +// GetRedshiftClusterWithName retrieves all redshift.Cluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTThingPrincipalAttachmentWithName(name string) (*resources.AWSIoTThingPrincipalAttachment, error) { +func (t *Template) GetRedshiftClusterWithName(name string) (*redshift.Cluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTThingPrincipalAttachment: + case *redshift.Cluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTThingPrincipalAttachment not found", name) + return nil, fmt.Errorf("resource %q of type redshift.Cluster not found", name) } -// GetAllAWSIoTTopicRuleResources retrieves all AWSIoTTopicRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTTopicRuleResources() map[string]*resources.AWSIoTTopicRule { - results := map[string]*resources.AWSIoTTopicRule{} +// GetAllApiGatewayV2IntegrationResources retrieves all apigatewayv2.Integration items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2IntegrationResources() map[string]*apigatewayv2.Integration { + results := map[string]*apigatewayv2.Integration{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTTopicRule: + case *apigatewayv2.Integration: results[name] = resource } } return results } -// GetAWSIoTTopicRuleWithName retrieves all AWSIoTTopicRule items from an AWS CloudFormation template +// GetApiGatewayV2IntegrationWithName retrieves all apigatewayv2.Integration items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTTopicRuleWithName(name string) (*resources.AWSIoTTopicRule, error) { +func (t *Template) GetApiGatewayV2IntegrationWithName(name string) (*apigatewayv2.Integration, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTTopicRule: + case *apigatewayv2.Integration: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTTopicRule not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.Integration not found", name) } -// GetAllAWSIoTAnalyticsChannelResources retrieves all AWSIoTAnalyticsChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTAnalyticsChannelResources() map[string]*resources.AWSIoTAnalyticsChannel { - results := map[string]*resources.AWSIoTAnalyticsChannel{} +// GetAllAppSyncFunctionConfigurationResources retrieves all appsync.FunctionConfiguration items from an AWS CloudFormation template +func (t *Template) GetAllAppSyncFunctionConfigurationResources() map[string]*appsync.FunctionConfiguration { + results := map[string]*appsync.FunctionConfiguration{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTAnalyticsChannel: + case *appsync.FunctionConfiguration: results[name] = resource } } return results } -// GetAWSIoTAnalyticsChannelWithName retrieves all AWSIoTAnalyticsChannel items from an AWS CloudFormation template +// GetAppSyncFunctionConfigurationWithName retrieves all appsync.FunctionConfiguration items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTAnalyticsChannelWithName(name string) (*resources.AWSIoTAnalyticsChannel, error) { +func (t *Template) GetAppSyncFunctionConfigurationWithName(name string) (*appsync.FunctionConfiguration, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTAnalyticsChannel: + case *appsync.FunctionConfiguration: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTAnalyticsChannel not found", name) + return nil, fmt.Errorf("resource %q of type appsync.FunctionConfiguration not found", name) } -// GetAllAWSIoTAnalyticsDatasetResources retrieves all AWSIoTAnalyticsDataset items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTAnalyticsDatasetResources() map[string]*resources.AWSIoTAnalyticsDataset { - results := map[string]*resources.AWSIoTAnalyticsDataset{} +// GetAllCognitoUserPoolUICustomizationAttachmentResources retrieves all cognito.UserPoolUICustomizationAttachment items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolUICustomizationAttachmentResources() map[string]*cognito.UserPoolUICustomizationAttachment { + results := map[string]*cognito.UserPoolUICustomizationAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTAnalyticsDataset: + case *cognito.UserPoolUICustomizationAttachment: results[name] = resource } } return results } -// GetAWSIoTAnalyticsDatasetWithName retrieves all AWSIoTAnalyticsDataset items from an AWS CloudFormation template +// GetCognitoUserPoolUICustomizationAttachmentWithName retrieves all cognito.UserPoolUICustomizationAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTAnalyticsDatasetWithName(name string) (*resources.AWSIoTAnalyticsDataset, error) { +func (t *Template) GetCognitoUserPoolUICustomizationAttachmentWithName(name string) (*cognito.UserPoolUICustomizationAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTAnalyticsDataset: + case *cognito.UserPoolUICustomizationAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTAnalyticsDataset not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolUICustomizationAttachment not found", name) } -// GetAllAWSIoTAnalyticsDatastoreResources retrieves all AWSIoTAnalyticsDatastore items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTAnalyticsDatastoreResources() map[string]*resources.AWSIoTAnalyticsDatastore { - results := map[string]*resources.AWSIoTAnalyticsDatastore{} +// GetAllDynamoDBTableResources retrieves all dynamodb.Table items from an AWS CloudFormation template +func (t *Template) GetAllDynamoDBTableResources() map[string]*dynamodb.Table { + results := map[string]*dynamodb.Table{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTAnalyticsDatastore: + case *dynamodb.Table: results[name] = resource } } return results } -// GetAWSIoTAnalyticsDatastoreWithName retrieves all AWSIoTAnalyticsDatastore items from an AWS CloudFormation template +// GetDynamoDBTableWithName retrieves all dynamodb.Table items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTAnalyticsDatastoreWithName(name string) (*resources.AWSIoTAnalyticsDatastore, error) { +func (t *Template) GetDynamoDBTableWithName(name string) (*dynamodb.Table, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTAnalyticsDatastore: + case *dynamodb.Table: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTAnalyticsDatastore not found", name) + return nil, fmt.Errorf("resource %q of type dynamodb.Table not found", name) } -// GetAllAWSIoTAnalyticsPipelineResources retrieves all AWSIoTAnalyticsPipeline items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTAnalyticsPipelineResources() map[string]*resources.AWSIoTAnalyticsPipeline { - results := map[string]*resources.AWSIoTAnalyticsPipeline{} +// GetAllBackupBackupPlanResources retrieves all backup.BackupPlan items from an AWS CloudFormation template +func (t *Template) GetAllBackupBackupPlanResources() map[string]*backup.BackupPlan { + results := map[string]*backup.BackupPlan{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTAnalyticsPipeline: + case *backup.BackupPlan: results[name] = resource } } return results } -// GetAWSIoTAnalyticsPipelineWithName retrieves all AWSIoTAnalyticsPipeline items from an AWS CloudFormation template +// GetBackupBackupPlanWithName retrieves all backup.BackupPlan items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTAnalyticsPipelineWithName(name string) (*resources.AWSIoTAnalyticsPipeline, error) { +func (t *Template) GetBackupBackupPlanWithName(name string) (*backup.BackupPlan, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTAnalyticsPipeline: + case *backup.BackupPlan: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTAnalyticsPipeline not found", name) + return nil, fmt.Errorf("resource %q of type backup.BackupPlan not found", name) } -// GetAllAWSIoTEventsDetectorModelResources retrieves all AWSIoTEventsDetectorModel items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTEventsDetectorModelResources() map[string]*resources.AWSIoTEventsDetectorModel { - results := map[string]*resources.AWSIoTEventsDetectorModel{} +// GetAllGreengrassDeviceDefinitionResources retrieves all greengrass.DeviceDefinition items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassDeviceDefinitionResources() map[string]*greengrass.DeviceDefinition { + results := map[string]*greengrass.DeviceDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTEventsDetectorModel: + case *greengrass.DeviceDefinition: results[name] = resource } } return results } -// GetAWSIoTEventsDetectorModelWithName retrieves all AWSIoTEventsDetectorModel items from an AWS CloudFormation template +// GetGreengrassDeviceDefinitionWithName retrieves all greengrass.DeviceDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTEventsDetectorModelWithName(name string) (*resources.AWSIoTEventsDetectorModel, error) { +func (t *Template) GetGreengrassDeviceDefinitionWithName(name string) (*greengrass.DeviceDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTEventsDetectorModel: + case *greengrass.DeviceDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTEventsDetectorModel not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.DeviceDefinition not found", name) } -// GetAllAWSIoTEventsInputResources retrieves all AWSIoTEventsInput items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTEventsInputResources() map[string]*resources.AWSIoTEventsInput { - results := map[string]*resources.AWSIoTEventsInput{} +// GetAllCodePipelinePipelineResources retrieves all codepipeline.Pipeline items from an AWS CloudFormation template +func (t *Template) GetAllCodePipelinePipelineResources() map[string]*codepipeline.Pipeline { + results := map[string]*codepipeline.Pipeline{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTEventsInput: + case *codepipeline.Pipeline: results[name] = resource } } return results } -// GetAWSIoTEventsInputWithName retrieves all AWSIoTEventsInput items from an AWS CloudFormation template +// GetCodePipelinePipelineWithName retrieves all codepipeline.Pipeline items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTEventsInputWithName(name string) (*resources.AWSIoTEventsInput, error) { +func (t *Template) GetCodePipelinePipelineWithName(name string) (*codepipeline.Pipeline, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTEventsInput: + case *codepipeline.Pipeline: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTEventsInput not found", name) + return nil, fmt.Errorf("resource %q of type codepipeline.Pipeline not found", name) } -// GetAllAWSIoTThingsGraphFlowTemplateResources retrieves all AWSIoTThingsGraphFlowTemplate items from an AWS CloudFormation template -func (t *Template) GetAllAWSIoTThingsGraphFlowTemplateResources() map[string]*resources.AWSIoTThingsGraphFlowTemplate { - results := map[string]*resources.AWSIoTThingsGraphFlowTemplate{} +// GetAllEC2SpotFleetResources retrieves all ec2.SpotFleet items from an AWS CloudFormation template +func (t *Template) GetAllEC2SpotFleetResources() map[string]*ec2.SpotFleet { + results := map[string]*ec2.SpotFleet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSIoTThingsGraphFlowTemplate: + case *ec2.SpotFleet: results[name] = resource } } return results } -// GetAWSIoTThingsGraphFlowTemplateWithName retrieves all AWSIoTThingsGraphFlowTemplate items from an AWS CloudFormation template +// GetEC2SpotFleetWithName retrieves all ec2.SpotFleet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSIoTThingsGraphFlowTemplateWithName(name string) (*resources.AWSIoTThingsGraphFlowTemplate, error) { +func (t *Template) GetEC2SpotFleetWithName(name string) (*ec2.SpotFleet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSIoTThingsGraphFlowTemplate: + case *ec2.SpotFleet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSIoTThingsGraphFlowTemplate not found", name) + return nil, fmt.Errorf("resource %q of type ec2.SpotFleet not found", name) } -// GetAllAWSKMSAliasResources retrieves all AWSKMSAlias items from an AWS CloudFormation template -func (t *Template) GetAllAWSKMSAliasResources() map[string]*resources.AWSKMSAlias { - results := map[string]*resources.AWSKMSAlias{} +// GetAllIoTAnalyticsDatasetResources retrieves all iotanalytics.Dataset items from an AWS CloudFormation template +func (t *Template) GetAllIoTAnalyticsDatasetResources() map[string]*iotanalytics.Dataset { + results := map[string]*iotanalytics.Dataset{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKMSAlias: + case *iotanalytics.Dataset: results[name] = resource } } return results } -// GetAWSKMSAliasWithName retrieves all AWSKMSAlias items from an AWS CloudFormation template +// GetIoTAnalyticsDatasetWithName retrieves all iotanalytics.Dataset items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKMSAliasWithName(name string) (*resources.AWSKMSAlias, error) { +func (t *Template) GetIoTAnalyticsDatasetWithName(name string) (*iotanalytics.Dataset, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKMSAlias: + case *iotanalytics.Dataset: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKMSAlias not found", name) + return nil, fmt.Errorf("resource %q of type iotanalytics.Dataset not found", name) } -// GetAllAWSKMSKeyResources retrieves all AWSKMSKey items from an AWS CloudFormation template -func (t *Template) GetAllAWSKMSKeyResources() map[string]*resources.AWSKMSKey { - results := map[string]*resources.AWSKMSKey{} +// GetAllGreengrassLoggerDefinitionResources retrieves all greengrass.LoggerDefinition items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassLoggerDefinitionResources() map[string]*greengrass.LoggerDefinition { + results := map[string]*greengrass.LoggerDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKMSKey: + case *greengrass.LoggerDefinition: results[name] = resource } } return results } -// GetAWSKMSKeyWithName retrieves all AWSKMSKey items from an AWS CloudFormation template +// GetGreengrassLoggerDefinitionWithName retrieves all greengrass.LoggerDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKMSKeyWithName(name string) (*resources.AWSKMSKey, error) { +func (t *Template) GetGreengrassLoggerDefinitionWithName(name string) (*greengrass.LoggerDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKMSKey: + case *greengrass.LoggerDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKMSKey not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.LoggerDefinition not found", name) } -// GetAllAWSKinesisStreamResources retrieves all AWSKinesisStream items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisStreamResources() map[string]*resources.AWSKinesisStream { - results := map[string]*resources.AWSKinesisStream{} +// GetAllAppSyncGraphQLSchemaResources retrieves all appsync.GraphQLSchema items from an AWS CloudFormation template +func (t *Template) GetAllAppSyncGraphQLSchemaResources() map[string]*appsync.GraphQLSchema { + results := map[string]*appsync.GraphQLSchema{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisStream: + case *appsync.GraphQLSchema: results[name] = resource } } return results } -// GetAWSKinesisStreamWithName retrieves all AWSKinesisStream items from an AWS CloudFormation template +// GetAppSyncGraphQLSchemaWithName retrieves all appsync.GraphQLSchema items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisStreamWithName(name string) (*resources.AWSKinesisStream, error) { +func (t *Template) GetAppSyncGraphQLSchemaWithName(name string) (*appsync.GraphQLSchema, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisStream: + case *appsync.GraphQLSchema: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisStream not found", name) + return nil, fmt.Errorf("resource %q of type appsync.GraphQLSchema not found", name) } -// GetAllAWSKinesisStreamConsumerResources retrieves all AWSKinesisStreamConsumer items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisStreamConsumerResources() map[string]*resources.AWSKinesisStreamConsumer { - results := map[string]*resources.AWSKinesisStreamConsumer{} +// GetAllS3BucketResources retrieves all s3.Bucket items from an AWS CloudFormation template +func (t *Template) GetAllS3BucketResources() map[string]*s3.Bucket { + results := map[string]*s3.Bucket{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisStreamConsumer: + case *s3.Bucket: results[name] = resource } } return results } -// GetAWSKinesisStreamConsumerWithName retrieves all AWSKinesisStreamConsumer items from an AWS CloudFormation template +// GetS3BucketWithName retrieves all s3.Bucket items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisStreamConsumerWithName(name string) (*resources.AWSKinesisStreamConsumer, error) { +func (t *Template) GetS3BucketWithName(name string) (*s3.Bucket, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisStreamConsumer: + case *s3.Bucket: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisStreamConsumer not found", name) + return nil, fmt.Errorf("resource %q of type s3.Bucket not found", name) } -// GetAllAWSKinesisAnalyticsApplicationResources retrieves all AWSKinesisAnalyticsApplication items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisAnalyticsApplicationResources() map[string]*resources.AWSKinesisAnalyticsApplication { - results := map[string]*resources.AWSKinesisAnalyticsApplication{} +// GetAllCognitoUserPoolDomainResources retrieves all cognito.UserPoolDomain items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolDomainResources() map[string]*cognito.UserPoolDomain { + results := map[string]*cognito.UserPoolDomain{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsApplication: + case *cognito.UserPoolDomain: results[name] = resource } } return results } -// GetAWSKinesisAnalyticsApplicationWithName retrieves all AWSKinesisAnalyticsApplication items from an AWS CloudFormation template +// GetCognitoUserPoolDomainWithName retrieves all cognito.UserPoolDomain items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisAnalyticsApplicationWithName(name string) (*resources.AWSKinesisAnalyticsApplication, error) { +func (t *Template) GetCognitoUserPoolDomainWithName(name string) (*cognito.UserPoolDomain, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsApplication: + case *cognito.UserPoolDomain: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisAnalyticsApplication not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolDomain not found", name) } -// GetAllAWSKinesisAnalyticsApplicationOutputResources retrieves all AWSKinesisAnalyticsApplicationOutput items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisAnalyticsApplicationOutputResources() map[string]*resources.AWSKinesisAnalyticsApplicationOutput { - results := map[string]*resources.AWSKinesisAnalyticsApplicationOutput{} +// GetAllKMSKeyResources retrieves all kms.Key items from an AWS CloudFormation template +func (t *Template) GetAllKMSKeyResources() map[string]*kms.Key { + results := map[string]*kms.Key{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsApplicationOutput: + case *kms.Key: results[name] = resource } } return results } -// GetAWSKinesisAnalyticsApplicationOutputWithName retrieves all AWSKinesisAnalyticsApplicationOutput items from an AWS CloudFormation template +// GetKMSKeyWithName retrieves all kms.Key items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisAnalyticsApplicationOutputWithName(name string) (*resources.AWSKinesisAnalyticsApplicationOutput, error) { +func (t *Template) GetKMSKeyWithName(name string) (*kms.Key, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsApplicationOutput: + case *kms.Key: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisAnalyticsApplicationOutput not found", name) + return nil, fmt.Errorf("resource %q of type kms.Key not found", name) } -// GetAllAWSKinesisAnalyticsApplicationReferenceDataSourceResources retrieves all AWSKinesisAnalyticsApplicationReferenceDataSource items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisAnalyticsApplicationReferenceDataSourceResources() map[string]*resources.AWSKinesisAnalyticsApplicationReferenceDataSource { - results := map[string]*resources.AWSKinesisAnalyticsApplicationReferenceDataSource{} +// GetAllDMSReplicationSubnetGroupResources retrieves all dms.ReplicationSubnetGroup items from an AWS CloudFormation template +func (t *Template) GetAllDMSReplicationSubnetGroupResources() map[string]*dms.ReplicationSubnetGroup { + results := map[string]*dms.ReplicationSubnetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsApplicationReferenceDataSource: + case *dms.ReplicationSubnetGroup: results[name] = resource } } return results } -// GetAWSKinesisAnalyticsApplicationReferenceDataSourceWithName retrieves all AWSKinesisAnalyticsApplicationReferenceDataSource items from an AWS CloudFormation template +// GetDMSReplicationSubnetGroupWithName retrieves all dms.ReplicationSubnetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisAnalyticsApplicationReferenceDataSourceWithName(name string) (*resources.AWSKinesisAnalyticsApplicationReferenceDataSource, error) { +func (t *Template) GetDMSReplicationSubnetGroupWithName(name string) (*dms.ReplicationSubnetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsApplicationReferenceDataSource: + case *dms.ReplicationSubnetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisAnalyticsApplicationReferenceDataSource not found", name) + return nil, fmt.Errorf("resource %q of type dms.ReplicationSubnetGroup not found", name) } -// GetAllAWSKinesisAnalyticsV2ApplicationResources retrieves all AWSKinesisAnalyticsV2Application items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisAnalyticsV2ApplicationResources() map[string]*resources.AWSKinesisAnalyticsV2Application { - results := map[string]*resources.AWSKinesisAnalyticsV2Application{} +// GetAllConfigConfigurationRecorderResources retrieves all config.ConfigurationRecorder items from an AWS CloudFormation template +func (t *Template) GetAllConfigConfigurationRecorderResources() map[string]*config.ConfigurationRecorder { + results := map[string]*config.ConfigurationRecorder{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsV2Application: + case *config.ConfigurationRecorder: results[name] = resource } } return results } -// GetAWSKinesisAnalyticsV2ApplicationWithName retrieves all AWSKinesisAnalyticsV2Application items from an AWS CloudFormation template +// GetConfigConfigurationRecorderWithName retrieves all config.ConfigurationRecorder items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisAnalyticsV2ApplicationWithName(name string) (*resources.AWSKinesisAnalyticsV2Application, error) { +func (t *Template) GetConfigConfigurationRecorderWithName(name string) (*config.ConfigurationRecorder, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsV2Application: + case *config.ConfigurationRecorder: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisAnalyticsV2Application not found", name) + return nil, fmt.Errorf("resource %q of type config.ConfigurationRecorder not found", name) } -// GetAllAWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOptionResources retrieves all AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOptionResources() map[string]*resources.AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption { - results := map[string]*resources.AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption{} +// GetAllSSMDocumentResources retrieves all ssm.Document items from an AWS CloudFormation template +func (t *Template) GetAllSSMDocumentResources() map[string]*ssm.Document { + results := map[string]*ssm.Document{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption: + case *ssm.Document: results[name] = resource } } return results } -// GetAWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOptionWithName retrieves all AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption items from an AWS CloudFormation template +// GetSSMDocumentWithName retrieves all ssm.Document items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOptionWithName(name string) (*resources.AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption, error) { +func (t *Template) GetSSMDocumentWithName(name string) (*ssm.Document, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption: + case *ssm.Document: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption not found", name) + return nil, fmt.Errorf("resource %q of type ssm.Document not found", name) } -// GetAllAWSKinesisAnalyticsV2ApplicationOutputResources retrieves all AWSKinesisAnalyticsV2ApplicationOutput items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisAnalyticsV2ApplicationOutputResources() map[string]*resources.AWSKinesisAnalyticsV2ApplicationOutput { - results := map[string]*resources.AWSKinesisAnalyticsV2ApplicationOutput{} +// GetAllEC2VPCEndpointConnectionNotificationResources retrieves all ec2.VPCEndpointConnectionNotification items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCEndpointConnectionNotificationResources() map[string]*ec2.VPCEndpointConnectionNotification { + results := map[string]*ec2.VPCEndpointConnectionNotification{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsV2ApplicationOutput: + case *ec2.VPCEndpointConnectionNotification: results[name] = resource } } return results } -// GetAWSKinesisAnalyticsV2ApplicationOutputWithName retrieves all AWSKinesisAnalyticsV2ApplicationOutput items from an AWS CloudFormation template +// GetEC2VPCEndpointConnectionNotificationWithName retrieves all ec2.VPCEndpointConnectionNotification items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisAnalyticsV2ApplicationOutputWithName(name string) (*resources.AWSKinesisAnalyticsV2ApplicationOutput, error) { +func (t *Template) GetEC2VPCEndpointConnectionNotificationWithName(name string) (*ec2.VPCEndpointConnectionNotification, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsV2ApplicationOutput: + case *ec2.VPCEndpointConnectionNotification: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisAnalyticsV2ApplicationOutput not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPCEndpointConnectionNotification not found", name) } -// GetAllAWSKinesisAnalyticsV2ApplicationReferenceDataSourceResources retrieves all AWSKinesisAnalyticsV2ApplicationReferenceDataSource items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisAnalyticsV2ApplicationReferenceDataSourceResources() map[string]*resources.AWSKinesisAnalyticsV2ApplicationReferenceDataSource { - results := map[string]*resources.AWSKinesisAnalyticsV2ApplicationReferenceDataSource{} +// GetAllWAFRuleResources retrieves all waf.Rule items from an AWS CloudFormation template +func (t *Template) GetAllWAFRuleResources() map[string]*waf.Rule { + results := map[string]*waf.Rule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsV2ApplicationReferenceDataSource: + case *waf.Rule: results[name] = resource } } return results } -// GetAWSKinesisAnalyticsV2ApplicationReferenceDataSourceWithName retrieves all AWSKinesisAnalyticsV2ApplicationReferenceDataSource items from an AWS CloudFormation template +// GetWAFRuleWithName retrieves all waf.Rule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisAnalyticsV2ApplicationReferenceDataSourceWithName(name string) (*resources.AWSKinesisAnalyticsV2ApplicationReferenceDataSource, error) { +func (t *Template) GetWAFRuleWithName(name string) (*waf.Rule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisAnalyticsV2ApplicationReferenceDataSource: + case *waf.Rule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisAnalyticsV2ApplicationReferenceDataSource not found", name) + return nil, fmt.Errorf("resource %q of type waf.Rule not found", name) } -// GetAllAWSKinesisFirehoseDeliveryStreamResources retrieves all AWSKinesisFirehoseDeliveryStream items from an AWS CloudFormation template -func (t *Template) GetAllAWSKinesisFirehoseDeliveryStreamResources() map[string]*resources.AWSKinesisFirehoseDeliveryStream { - results := map[string]*resources.AWSKinesisFirehoseDeliveryStream{} +// GetAllCloudWatchAlarmResources retrieves all cloudwatch.Alarm items from an AWS CloudFormation template +func (t *Template) GetAllCloudWatchAlarmResources() map[string]*cloudwatch.Alarm { + results := map[string]*cloudwatch.Alarm{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSKinesisFirehoseDeliveryStream: + case *cloudwatch.Alarm: results[name] = resource } } return results } -// GetAWSKinesisFirehoseDeliveryStreamWithName retrieves all AWSKinesisFirehoseDeliveryStream items from an AWS CloudFormation template +// GetCloudWatchAlarmWithName retrieves all cloudwatch.Alarm items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSKinesisFirehoseDeliveryStreamWithName(name string) (*resources.AWSKinesisFirehoseDeliveryStream, error) { +func (t *Template) GetCloudWatchAlarmWithName(name string) (*cloudwatch.Alarm, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSKinesisFirehoseDeliveryStream: + case *cloudwatch.Alarm: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSKinesisFirehoseDeliveryStream not found", name) + return nil, fmt.Errorf("resource %q of type cloudwatch.Alarm not found", name) } -// GetAllAWSLakeFormationDataLakeSettingsResources retrieves all AWSLakeFormationDataLakeSettings items from an AWS CloudFormation template -func (t *Template) GetAllAWSLakeFormationDataLakeSettingsResources() map[string]*resources.AWSLakeFormationDataLakeSettings { - results := map[string]*resources.AWSLakeFormationDataLakeSettings{} +// GetAllCloudWatchDashboardResources retrieves all cloudwatch.Dashboard items from an AWS CloudFormation template +func (t *Template) GetAllCloudWatchDashboardResources() map[string]*cloudwatch.Dashboard { + results := map[string]*cloudwatch.Dashboard{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLakeFormationDataLakeSettings: + case *cloudwatch.Dashboard: results[name] = resource } } return results } -// GetAWSLakeFormationDataLakeSettingsWithName retrieves all AWSLakeFormationDataLakeSettings items from an AWS CloudFormation template +// GetCloudWatchDashboardWithName retrieves all cloudwatch.Dashboard items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLakeFormationDataLakeSettingsWithName(name string) (*resources.AWSLakeFormationDataLakeSettings, error) { +func (t *Template) GetCloudWatchDashboardWithName(name string) (*cloudwatch.Dashboard, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLakeFormationDataLakeSettings: + case *cloudwatch.Dashboard: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLakeFormationDataLakeSettings not found", name) + return nil, fmt.Errorf("resource %q of type cloudwatch.Dashboard not found", name) } -// GetAllAWSLakeFormationPermissionsResources retrieves all AWSLakeFormationPermissions items from an AWS CloudFormation template -func (t *Template) GetAllAWSLakeFormationPermissionsResources() map[string]*resources.AWSLakeFormationPermissions { - results := map[string]*resources.AWSLakeFormationPermissions{} +// GetAllCodeBuildSourceCredentialResources retrieves all codebuild.SourceCredential items from an AWS CloudFormation template +func (t *Template) GetAllCodeBuildSourceCredentialResources() map[string]*codebuild.SourceCredential { + results := map[string]*codebuild.SourceCredential{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLakeFormationPermissions: + case *codebuild.SourceCredential: results[name] = resource } } return results } -// GetAWSLakeFormationPermissionsWithName retrieves all AWSLakeFormationPermissions items from an AWS CloudFormation template +// GetCodeBuildSourceCredentialWithName retrieves all codebuild.SourceCredential items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLakeFormationPermissionsWithName(name string) (*resources.AWSLakeFormationPermissions, error) { +func (t *Template) GetCodeBuildSourceCredentialWithName(name string) (*codebuild.SourceCredential, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLakeFormationPermissions: + case *codebuild.SourceCredential: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLakeFormationPermissions not found", name) + return nil, fmt.Errorf("resource %q of type codebuild.SourceCredential not found", name) } -// GetAllAWSLakeFormationResourceResources retrieves all AWSLakeFormationResource items from an AWS CloudFormation template -func (t *Template) GetAllAWSLakeFormationResourceResources() map[string]*resources.AWSLakeFormationResource { - results := map[string]*resources.AWSLakeFormationResource{} +// GetAllCodePipelineWebhookResources retrieves all codepipeline.Webhook items from an AWS CloudFormation template +func (t *Template) GetAllCodePipelineWebhookResources() map[string]*codepipeline.Webhook { + results := map[string]*codepipeline.Webhook{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLakeFormationResource: + case *codepipeline.Webhook: results[name] = resource } } return results } -// GetAWSLakeFormationResourceWithName retrieves all AWSLakeFormationResource items from an AWS CloudFormation template +// GetCodePipelineWebhookWithName retrieves all codepipeline.Webhook items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLakeFormationResourceWithName(name string) (*resources.AWSLakeFormationResource, error) { +func (t *Template) GetCodePipelineWebhookWithName(name string) (*codepipeline.Webhook, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLakeFormationResource: + case *codepipeline.Webhook: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLakeFormationResource not found", name) + return nil, fmt.Errorf("resource %q of type codepipeline.Webhook not found", name) } -// GetAllAWSLambdaAliasResources retrieves all AWSLambdaAlias items from an AWS CloudFormation template -func (t *Template) GetAllAWSLambdaAliasResources() map[string]*resources.AWSLambdaAlias { - results := map[string]*resources.AWSLambdaAlias{} +// GetAllEC2VPNGatewayRoutePropagationResources retrieves all ec2.VPNGatewayRoutePropagation items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPNGatewayRoutePropagationResources() map[string]*ec2.VPNGatewayRoutePropagation { + results := map[string]*ec2.VPNGatewayRoutePropagation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLambdaAlias: + case *ec2.VPNGatewayRoutePropagation: results[name] = resource } } return results } -// GetAWSLambdaAliasWithName retrieves all AWSLambdaAlias items from an AWS CloudFormation template +// GetEC2VPNGatewayRoutePropagationWithName retrieves all ec2.VPNGatewayRoutePropagation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLambdaAliasWithName(name string) (*resources.AWSLambdaAlias, error) { +func (t *Template) GetEC2VPNGatewayRoutePropagationWithName(name string) (*ec2.VPNGatewayRoutePropagation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLambdaAlias: + case *ec2.VPNGatewayRoutePropagation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLambdaAlias not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPNGatewayRoutePropagation not found", name) } -// GetAllAWSLambdaEventSourceMappingResources retrieves all AWSLambdaEventSourceMapping items from an AWS CloudFormation template -func (t *Template) GetAllAWSLambdaEventSourceMappingResources() map[string]*resources.AWSLambdaEventSourceMapping { - results := map[string]*resources.AWSLambdaEventSourceMapping{} +// GetAllECSClusterResources retrieves all ecs.Cluster items from an AWS CloudFormation template +func (t *Template) GetAllECSClusterResources() map[string]*ecs.Cluster { + results := map[string]*ecs.Cluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLambdaEventSourceMapping: + case *ecs.Cluster: results[name] = resource } } return results } -// GetAWSLambdaEventSourceMappingWithName retrieves all AWSLambdaEventSourceMapping items from an AWS CloudFormation template +// GetECSClusterWithName retrieves all ecs.Cluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLambdaEventSourceMappingWithName(name string) (*resources.AWSLambdaEventSourceMapping, error) { +func (t *Template) GetECSClusterWithName(name string) (*ecs.Cluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLambdaEventSourceMapping: + case *ecs.Cluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLambdaEventSourceMapping not found", name) + return nil, fmt.Errorf("resource %q of type ecs.Cluster not found", name) } -// GetAllAWSLambdaFunctionResources retrieves all AWSLambdaFunction items from an AWS CloudFormation template -func (t *Template) GetAllAWSLambdaFunctionResources() map[string]*resources.AWSLambdaFunction { - results := map[string]*resources.AWSLambdaFunction{} +// GetAllServiceCatalogTagOptionResources retrieves all servicecatalog.TagOption items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogTagOptionResources() map[string]*servicecatalog.TagOption { + results := map[string]*servicecatalog.TagOption{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLambdaFunction: + case *servicecatalog.TagOption: results[name] = resource } } return results } -// GetAWSLambdaFunctionWithName retrieves all AWSLambdaFunction items from an AWS CloudFormation template +// GetServiceCatalogTagOptionWithName retrieves all servicecatalog.TagOption items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLambdaFunctionWithName(name string) (*resources.AWSLambdaFunction, error) { +func (t *Template) GetServiceCatalogTagOptionWithName(name string) (*servicecatalog.TagOption, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLambdaFunction: + case *servicecatalog.TagOption: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLambdaFunction not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.TagOption not found", name) } -// GetAllAWSLambdaLayerVersionResources retrieves all AWSLambdaLayerVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSLambdaLayerVersionResources() map[string]*resources.AWSLambdaLayerVersion { - results := map[string]*resources.AWSLambdaLayerVersion{} +// GetAllSSMPatchBaselineResources retrieves all ssm.PatchBaseline items from an AWS CloudFormation template +func (t *Template) GetAllSSMPatchBaselineResources() map[string]*ssm.PatchBaseline { + results := map[string]*ssm.PatchBaseline{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLambdaLayerVersion: + case *ssm.PatchBaseline: results[name] = resource } } return results } -// GetAWSLambdaLayerVersionWithName retrieves all AWSLambdaLayerVersion items from an AWS CloudFormation template +// GetSSMPatchBaselineWithName retrieves all ssm.PatchBaseline items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLambdaLayerVersionWithName(name string) (*resources.AWSLambdaLayerVersion, error) { +func (t *Template) GetSSMPatchBaselineWithName(name string) (*ssm.PatchBaseline, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLambdaLayerVersion: + case *ssm.PatchBaseline: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLambdaLayerVersion not found", name) + return nil, fmt.Errorf("resource %q of type ssm.PatchBaseline not found", name) } -// GetAllAWSLambdaLayerVersionPermissionResources retrieves all AWSLambdaLayerVersionPermission items from an AWS CloudFormation template -func (t *Template) GetAllAWSLambdaLayerVersionPermissionResources() map[string]*resources.AWSLambdaLayerVersionPermission { - results := map[string]*resources.AWSLambdaLayerVersionPermission{} +// GetAllApiGatewayGatewayResponseResources retrieves all apigateway.GatewayResponse items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayGatewayResponseResources() map[string]*apigateway.GatewayResponse { + results := map[string]*apigateway.GatewayResponse{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLambdaLayerVersionPermission: + case *apigateway.GatewayResponse: results[name] = resource } } return results } -// GetAWSLambdaLayerVersionPermissionWithName retrieves all AWSLambdaLayerVersionPermission items from an AWS CloudFormation template +// GetApiGatewayGatewayResponseWithName retrieves all apigateway.GatewayResponse items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLambdaLayerVersionPermissionWithName(name string) (*resources.AWSLambdaLayerVersionPermission, error) { +func (t *Template) GetApiGatewayGatewayResponseWithName(name string) (*apigateway.GatewayResponse, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLambdaLayerVersionPermission: + case *apigateway.GatewayResponse: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLambdaLayerVersionPermission not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.GatewayResponse not found", name) } -// GetAllAWSLambdaPermissionResources retrieves all AWSLambdaPermission items from an AWS CloudFormation template -func (t *Template) GetAllAWSLambdaPermissionResources() map[string]*resources.AWSLambdaPermission { - results := map[string]*resources.AWSLambdaPermission{} +// GetAllPinpointAPNSChannelResources retrieves all pinpoint.APNSChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointAPNSChannelResources() map[string]*pinpoint.APNSChannel { + results := map[string]*pinpoint.APNSChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLambdaPermission: + case *pinpoint.APNSChannel: results[name] = resource } } return results } -// GetAWSLambdaPermissionWithName retrieves all AWSLambdaPermission items from an AWS CloudFormation template +// GetPinpointAPNSChannelWithName retrieves all pinpoint.APNSChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLambdaPermissionWithName(name string) (*resources.AWSLambdaPermission, error) { +func (t *Template) GetPinpointAPNSChannelWithName(name string) (*pinpoint.APNSChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLambdaPermission: + case *pinpoint.APNSChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLambdaPermission not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.APNSChannel not found", name) } -// GetAllAWSLambdaVersionResources retrieves all AWSLambdaVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSLambdaVersionResources() map[string]*resources.AWSLambdaVersion { - results := map[string]*resources.AWSLambdaVersion{} +// GetAllBatchJobQueueResources retrieves all batch.JobQueue items from an AWS CloudFormation template +func (t *Template) GetAllBatchJobQueueResources() map[string]*batch.JobQueue { + results := map[string]*batch.JobQueue{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLambdaVersion: + case *batch.JobQueue: results[name] = resource } } return results } -// GetAWSLambdaVersionWithName retrieves all AWSLambdaVersion items from an AWS CloudFormation template +// GetBatchJobQueueWithName retrieves all batch.JobQueue items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLambdaVersionWithName(name string) (*resources.AWSLambdaVersion, error) { +func (t *Template) GetBatchJobQueueWithName(name string) (*batch.JobQueue, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLambdaVersion: + case *batch.JobQueue: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLambdaVersion not found", name) + return nil, fmt.Errorf("resource %q of type batch.JobQueue not found", name) } -// GetAllAWSLogsDestinationResources retrieves all AWSLogsDestination items from an AWS CloudFormation template -func (t *Template) GetAllAWSLogsDestinationResources() map[string]*resources.AWSLogsDestination { - results := map[string]*resources.AWSLogsDestination{} +// GetAllBackupBackupVaultResources retrieves all backup.BackupVault items from an AWS CloudFormation template +func (t *Template) GetAllBackupBackupVaultResources() map[string]*backup.BackupVault { + results := map[string]*backup.BackupVault{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLogsDestination: + case *backup.BackupVault: results[name] = resource } } return results } -// GetAWSLogsDestinationWithName retrieves all AWSLogsDestination items from an AWS CloudFormation template +// GetBackupBackupVaultWithName retrieves all backup.BackupVault items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLogsDestinationWithName(name string) (*resources.AWSLogsDestination, error) { +func (t *Template) GetBackupBackupVaultWithName(name string) (*backup.BackupVault, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLogsDestination: + case *backup.BackupVault: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLogsDestination not found", name) + return nil, fmt.Errorf("resource %q of type backup.BackupVault not found", name) } -// GetAllAWSLogsLogGroupResources retrieves all AWSLogsLogGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSLogsLogGroupResources() map[string]*resources.AWSLogsLogGroup { - results := map[string]*resources.AWSLogsLogGroup{} +// GetAllRoute53ResolverResolverRuleAssociationResources retrieves all route53resolver.ResolverRuleAssociation items from an AWS CloudFormation template +func (t *Template) GetAllRoute53ResolverResolverRuleAssociationResources() map[string]*route53resolver.ResolverRuleAssociation { + results := map[string]*route53resolver.ResolverRuleAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLogsLogGroup: + case *route53resolver.ResolverRuleAssociation: results[name] = resource } } return results } -// GetAWSLogsLogGroupWithName retrieves all AWSLogsLogGroup items from an AWS CloudFormation template +// GetRoute53ResolverResolverRuleAssociationWithName retrieves all route53resolver.ResolverRuleAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLogsLogGroupWithName(name string) (*resources.AWSLogsLogGroup, error) { +func (t *Template) GetRoute53ResolverResolverRuleAssociationWithName(name string) (*route53resolver.ResolverRuleAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLogsLogGroup: + case *route53resolver.ResolverRuleAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLogsLogGroup not found", name) + return nil, fmt.Errorf("resource %q of type route53resolver.ResolverRuleAssociation not found", name) } -// GetAllAWSLogsLogStreamResources retrieves all AWSLogsLogStream items from an AWS CloudFormation template -func (t *Template) GetAllAWSLogsLogStreamResources() map[string]*resources.AWSLogsLogStream { - results := map[string]*resources.AWSLogsLogStream{} +// GetAllRDSDBSubnetGroupResources retrieves all rds.DBSubnetGroup items from an AWS CloudFormation template +func (t *Template) GetAllRDSDBSubnetGroupResources() map[string]*rds.DBSubnetGroup { + results := map[string]*rds.DBSubnetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLogsLogStream: + case *rds.DBSubnetGroup: results[name] = resource } } return results } -// GetAWSLogsLogStreamWithName retrieves all AWSLogsLogStream items from an AWS CloudFormation template +// GetRDSDBSubnetGroupWithName retrieves all rds.DBSubnetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLogsLogStreamWithName(name string) (*resources.AWSLogsLogStream, error) { +func (t *Template) GetRDSDBSubnetGroupWithName(name string) (*rds.DBSubnetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLogsLogStream: + case *rds.DBSubnetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLogsLogStream not found", name) + return nil, fmt.Errorf("resource %q of type rds.DBSubnetGroup not found", name) } -// GetAllAWSLogsMetricFilterResources retrieves all AWSLogsMetricFilter items from an AWS CloudFormation template -func (t *Template) GetAllAWSLogsMetricFilterResources() map[string]*resources.AWSLogsMetricFilter { - results := map[string]*resources.AWSLogsMetricFilter{} +// GetAllSecretsManagerRotationScheduleResources retrieves all secretsmanager.RotationSchedule items from an AWS CloudFormation template +func (t *Template) GetAllSecretsManagerRotationScheduleResources() map[string]*secretsmanager.RotationSchedule { + results := map[string]*secretsmanager.RotationSchedule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLogsMetricFilter: + case *secretsmanager.RotationSchedule: results[name] = resource } } return results } -// GetAWSLogsMetricFilterWithName retrieves all AWSLogsMetricFilter items from an AWS CloudFormation template +// GetSecretsManagerRotationScheduleWithName retrieves all secretsmanager.RotationSchedule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLogsMetricFilterWithName(name string) (*resources.AWSLogsMetricFilter, error) { +func (t *Template) GetSecretsManagerRotationScheduleWithName(name string) (*secretsmanager.RotationSchedule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLogsMetricFilter: + case *secretsmanager.RotationSchedule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLogsMetricFilter not found", name) + return nil, fmt.Errorf("resource %q of type secretsmanager.RotationSchedule not found", name) } -// GetAllAWSLogsSubscriptionFilterResources retrieves all AWSLogsSubscriptionFilter items from an AWS CloudFormation template -func (t *Template) GetAllAWSLogsSubscriptionFilterResources() map[string]*resources.AWSLogsSubscriptionFilter { - results := map[string]*resources.AWSLogsSubscriptionFilter{} +// GetAllEMRSecurityConfigurationResources retrieves all emr.SecurityConfiguration items from an AWS CloudFormation template +func (t *Template) GetAllEMRSecurityConfigurationResources() map[string]*emr.SecurityConfiguration { + results := map[string]*emr.SecurityConfiguration{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSLogsSubscriptionFilter: + case *emr.SecurityConfiguration: results[name] = resource } } return results } -// GetAWSLogsSubscriptionFilterWithName retrieves all AWSLogsSubscriptionFilter items from an AWS CloudFormation template +// GetEMRSecurityConfigurationWithName retrieves all emr.SecurityConfiguration items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSLogsSubscriptionFilterWithName(name string) (*resources.AWSLogsSubscriptionFilter, error) { +func (t *Template) GetEMRSecurityConfigurationWithName(name string) (*emr.SecurityConfiguration, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSLogsSubscriptionFilter: + case *emr.SecurityConfiguration: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSLogsSubscriptionFilter not found", name) + return nil, fmt.Errorf("resource %q of type emr.SecurityConfiguration not found", name) } -// GetAllAWSMSKClusterResources retrieves all AWSMSKCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSMSKClusterResources() map[string]*resources.AWSMSKCluster { - results := map[string]*resources.AWSMSKCluster{} +// GetAllElasticBeanstalkApplicationResources retrieves all elasticbeanstalk.Application items from an AWS CloudFormation template +func (t *Template) GetAllElasticBeanstalkApplicationResources() map[string]*elasticbeanstalk.Application { + results := map[string]*elasticbeanstalk.Application{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSMSKCluster: + case *elasticbeanstalk.Application: results[name] = resource } } return results } -// GetAWSMSKClusterWithName retrieves all AWSMSKCluster items from an AWS CloudFormation template +// GetElasticBeanstalkApplicationWithName retrieves all elasticbeanstalk.Application items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSMSKClusterWithName(name string) (*resources.AWSMSKCluster, error) { +func (t *Template) GetElasticBeanstalkApplicationWithName(name string) (*elasticbeanstalk.Application, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSMSKCluster: + case *elasticbeanstalk.Application: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSMSKCluster not found", name) + return nil, fmt.Errorf("resource %q of type elasticbeanstalk.Application not found", name) } -// GetAllAWSManagedBlockchainMemberResources retrieves all AWSManagedBlockchainMember items from an AWS CloudFormation template -func (t *Template) GetAllAWSManagedBlockchainMemberResources() map[string]*resources.AWSManagedBlockchainMember { - results := map[string]*resources.AWSManagedBlockchainMember{} +// GetAllCloudFormationWaitConditionHandleResources retrieves all cloudformation.WaitConditionHandle items from an AWS CloudFormation template +func (t *Template) GetAllCloudFormationWaitConditionHandleResources() map[string]*cloudformation.WaitConditionHandle { + results := map[string]*cloudformation.WaitConditionHandle{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSManagedBlockchainMember: + case *cloudformation.WaitConditionHandle: results[name] = resource } } return results } -// GetAWSManagedBlockchainMemberWithName retrieves all AWSManagedBlockchainMember items from an AWS CloudFormation template +// GetCloudFormationWaitConditionHandleWithName retrieves all cloudformation.WaitConditionHandle items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSManagedBlockchainMemberWithName(name string) (*resources.AWSManagedBlockchainMember, error) { +func (t *Template) GetCloudFormationWaitConditionHandleWithName(name string) (*cloudformation.WaitConditionHandle, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSManagedBlockchainMember: + case *cloudformation.WaitConditionHandle: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSManagedBlockchainMember not found", name) + return nil, fmt.Errorf("resource %q of type cloudformation.WaitConditionHandle not found", name) } -// GetAllAWSManagedBlockchainNodeResources retrieves all AWSManagedBlockchainNode items from an AWS CloudFormation template -func (t *Template) GetAllAWSManagedBlockchainNodeResources() map[string]*resources.AWSManagedBlockchainNode { - results := map[string]*resources.AWSManagedBlockchainNode{} +// GetAllApiGatewayDeploymentResources retrieves all apigateway.Deployment items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayDeploymentResources() map[string]*apigateway.Deployment { + results := map[string]*apigateway.Deployment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSManagedBlockchainNode: + case *apigateway.Deployment: results[name] = resource } } return results } -// GetAWSManagedBlockchainNodeWithName retrieves all AWSManagedBlockchainNode items from an AWS CloudFormation template +// GetApiGatewayDeploymentWithName retrieves all apigateway.Deployment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSManagedBlockchainNodeWithName(name string) (*resources.AWSManagedBlockchainNode, error) { +func (t *Template) GetApiGatewayDeploymentWithName(name string) (*apigateway.Deployment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSManagedBlockchainNode: + case *apigateway.Deployment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSManagedBlockchainNode not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.Deployment not found", name) } -// GetAllAWSMediaLiveChannelResources retrieves all AWSMediaLiveChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSMediaLiveChannelResources() map[string]*resources.AWSMediaLiveChannel { - results := map[string]*resources.AWSMediaLiveChannel{} +// GetAllGameLiftFleetResources retrieves all gamelift.Fleet items from an AWS CloudFormation template +func (t *Template) GetAllGameLiftFleetResources() map[string]*gamelift.Fleet { + results := map[string]*gamelift.Fleet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSMediaLiveChannel: + case *gamelift.Fleet: results[name] = resource } } return results } -// GetAWSMediaLiveChannelWithName retrieves all AWSMediaLiveChannel items from an AWS CloudFormation template +// GetGameLiftFleetWithName retrieves all gamelift.Fleet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSMediaLiveChannelWithName(name string) (*resources.AWSMediaLiveChannel, error) { +func (t *Template) GetGameLiftFleetWithName(name string) (*gamelift.Fleet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSMediaLiveChannel: + case *gamelift.Fleet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSMediaLiveChannel not found", name) + return nil, fmt.Errorf("resource %q of type gamelift.Fleet not found", name) } -// GetAllAWSMediaLiveInputResources retrieves all AWSMediaLiveInput items from an AWS CloudFormation template -func (t *Template) GetAllAWSMediaLiveInputResources() map[string]*resources.AWSMediaLiveInput { - results := map[string]*resources.AWSMediaLiveInput{} +// GetAllAppMeshVirtualNodeResources retrieves all appmesh.VirtualNode items from an AWS CloudFormation template +func (t *Template) GetAllAppMeshVirtualNodeResources() map[string]*appmesh.VirtualNode { + results := map[string]*appmesh.VirtualNode{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSMediaLiveInput: + case *appmesh.VirtualNode: results[name] = resource } } return results } -// GetAWSMediaLiveInputWithName retrieves all AWSMediaLiveInput items from an AWS CloudFormation template +// GetAppMeshVirtualNodeWithName retrieves all appmesh.VirtualNode items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSMediaLiveInputWithName(name string) (*resources.AWSMediaLiveInput, error) { +func (t *Template) GetAppMeshVirtualNodeWithName(name string) (*appmesh.VirtualNode, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSMediaLiveInput: + case *appmesh.VirtualNode: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSMediaLiveInput not found", name) + return nil, fmt.Errorf("resource %q of type appmesh.VirtualNode not found", name) } -// GetAllAWSMediaLiveInputSecurityGroupResources retrieves all AWSMediaLiveInputSecurityGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSMediaLiveInputSecurityGroupResources() map[string]*resources.AWSMediaLiveInputSecurityGroup { - results := map[string]*resources.AWSMediaLiveInputSecurityGroup{} +// GetAllInspectorResourceGroupResources retrieves all inspector.ResourceGroup items from an AWS CloudFormation template +func (t *Template) GetAllInspectorResourceGroupResources() map[string]*inspector.ResourceGroup { + results := map[string]*inspector.ResourceGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSMediaLiveInputSecurityGroup: + case *inspector.ResourceGroup: results[name] = resource } } return results } -// GetAWSMediaLiveInputSecurityGroupWithName retrieves all AWSMediaLiveInputSecurityGroup items from an AWS CloudFormation template +// GetInspectorResourceGroupWithName retrieves all inspector.ResourceGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSMediaLiveInputSecurityGroupWithName(name string) (*resources.AWSMediaLiveInputSecurityGroup, error) { +func (t *Template) GetInspectorResourceGroupWithName(name string) (*inspector.ResourceGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSMediaLiveInputSecurityGroup: + case *inspector.ResourceGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSMediaLiveInputSecurityGroup not found", name) + return nil, fmt.Errorf("resource %q of type inspector.ResourceGroup not found", name) } -// GetAllAWSMediaStoreContainerResources retrieves all AWSMediaStoreContainer items from an AWS CloudFormation template -func (t *Template) GetAllAWSMediaStoreContainerResources() map[string]*resources.AWSMediaStoreContainer { - results := map[string]*resources.AWSMediaStoreContainer{} +// GetAllIoTAnalyticsPipelineResources retrieves all iotanalytics.Pipeline items from an AWS CloudFormation template +func (t *Template) GetAllIoTAnalyticsPipelineResources() map[string]*iotanalytics.Pipeline { + results := map[string]*iotanalytics.Pipeline{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSMediaStoreContainer: + case *iotanalytics.Pipeline: results[name] = resource } } return results } -// GetAWSMediaStoreContainerWithName retrieves all AWSMediaStoreContainer items from an AWS CloudFormation template +// GetIoTAnalyticsPipelineWithName retrieves all iotanalytics.Pipeline items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSMediaStoreContainerWithName(name string) (*resources.AWSMediaStoreContainer, error) { +func (t *Template) GetIoTAnalyticsPipelineWithName(name string) (*iotanalytics.Pipeline, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSMediaStoreContainer: + case *iotanalytics.Pipeline: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSMediaStoreContainer not found", name) + return nil, fmt.Errorf("resource %q of type iotanalytics.Pipeline not found", name) } -// GetAllAWSNeptuneDBClusterResources retrieves all AWSNeptuneDBCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSNeptuneDBClusterResources() map[string]*resources.AWSNeptuneDBCluster { - results := map[string]*resources.AWSNeptuneDBCluster{} +// GetAllWAFRegionalRateBasedRuleResources retrieves all wafregional.RateBasedRule items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalRateBasedRuleResources() map[string]*wafregional.RateBasedRule { + results := map[string]*wafregional.RateBasedRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBCluster: + case *wafregional.RateBasedRule: results[name] = resource } } return results } -// GetAWSNeptuneDBClusterWithName retrieves all AWSNeptuneDBCluster items from an AWS CloudFormation template +// GetWAFRegionalRateBasedRuleWithName retrieves all wafregional.RateBasedRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSNeptuneDBClusterWithName(name string) (*resources.AWSNeptuneDBCluster, error) { +func (t *Template) GetWAFRegionalRateBasedRuleWithName(name string) (*wafregional.RateBasedRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBCluster: + case *wafregional.RateBasedRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSNeptuneDBCluster not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.RateBasedRule not found", name) } -// GetAllAWSNeptuneDBClusterParameterGroupResources retrieves all AWSNeptuneDBClusterParameterGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSNeptuneDBClusterParameterGroupResources() map[string]*resources.AWSNeptuneDBClusterParameterGroup { - results := map[string]*resources.AWSNeptuneDBClusterParameterGroup{} +// GetAllAutoScalingLaunchConfigurationResources retrieves all autoscaling.LaunchConfiguration items from an AWS CloudFormation template +func (t *Template) GetAllAutoScalingLaunchConfigurationResources() map[string]*autoscaling.LaunchConfiguration { + results := map[string]*autoscaling.LaunchConfiguration{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBClusterParameterGroup: + case *autoscaling.LaunchConfiguration: results[name] = resource } } return results } -// GetAWSNeptuneDBClusterParameterGroupWithName retrieves all AWSNeptuneDBClusterParameterGroup items from an AWS CloudFormation template +// GetAutoScalingLaunchConfigurationWithName retrieves all autoscaling.LaunchConfiguration items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSNeptuneDBClusterParameterGroupWithName(name string) (*resources.AWSNeptuneDBClusterParameterGroup, error) { +func (t *Template) GetAutoScalingLaunchConfigurationWithName(name string) (*autoscaling.LaunchConfiguration, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBClusterParameterGroup: + case *autoscaling.LaunchConfiguration: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSNeptuneDBClusterParameterGroup not found", name) + return nil, fmt.Errorf("resource %q of type autoscaling.LaunchConfiguration not found", name) } -// GetAllAWSNeptuneDBInstanceResources retrieves all AWSNeptuneDBInstance items from an AWS CloudFormation template -func (t *Template) GetAllAWSNeptuneDBInstanceResources() map[string]*resources.AWSNeptuneDBInstance { - results := map[string]*resources.AWSNeptuneDBInstance{} +// GetAllEMRStepResources retrieves all emr.Step items from an AWS CloudFormation template +func (t *Template) GetAllEMRStepResources() map[string]*emr.Step { + results := map[string]*emr.Step{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBInstance: + case *emr.Step: results[name] = resource } } return results } -// GetAWSNeptuneDBInstanceWithName retrieves all AWSNeptuneDBInstance items from an AWS CloudFormation template +// GetEMRStepWithName retrieves all emr.Step items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSNeptuneDBInstanceWithName(name string) (*resources.AWSNeptuneDBInstance, error) { +func (t *Template) GetEMRStepWithName(name string) (*emr.Step, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBInstance: + case *emr.Step: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSNeptuneDBInstance not found", name) + return nil, fmt.Errorf("resource %q of type emr.Step not found", name) } -// GetAllAWSNeptuneDBParameterGroupResources retrieves all AWSNeptuneDBParameterGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSNeptuneDBParameterGroupResources() map[string]*resources.AWSNeptuneDBParameterGroup { - results := map[string]*resources.AWSNeptuneDBParameterGroup{} +// GetAllServiceCatalogPortfolioPrincipalAssociationResources retrieves all servicecatalog.PortfolioPrincipalAssociation items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogPortfolioPrincipalAssociationResources() map[string]*servicecatalog.PortfolioPrincipalAssociation { + results := map[string]*servicecatalog.PortfolioPrincipalAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBParameterGroup: + case *servicecatalog.PortfolioPrincipalAssociation: results[name] = resource } } return results } -// GetAWSNeptuneDBParameterGroupWithName retrieves all AWSNeptuneDBParameterGroup items from an AWS CloudFormation template +// GetServiceCatalogPortfolioPrincipalAssociationWithName retrieves all servicecatalog.PortfolioPrincipalAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSNeptuneDBParameterGroupWithName(name string) (*resources.AWSNeptuneDBParameterGroup, error) { +func (t *Template) GetServiceCatalogPortfolioPrincipalAssociationWithName(name string) (*servicecatalog.PortfolioPrincipalAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBParameterGroup: + case *servicecatalog.PortfolioPrincipalAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSNeptuneDBParameterGroup not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.PortfolioPrincipalAssociation not found", name) } -// GetAllAWSNeptuneDBSubnetGroupResources retrieves all AWSNeptuneDBSubnetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSNeptuneDBSubnetGroupResources() map[string]*resources.AWSNeptuneDBSubnetGroup { - results := map[string]*resources.AWSNeptuneDBSubnetGroup{} +// GetAllEC2SecurityGroupResources retrieves all ec2.SecurityGroup items from an AWS CloudFormation template +func (t *Template) GetAllEC2SecurityGroupResources() map[string]*ec2.SecurityGroup { + results := map[string]*ec2.SecurityGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBSubnetGroup: + case *ec2.SecurityGroup: results[name] = resource } } return results } -// GetAWSNeptuneDBSubnetGroupWithName retrieves all AWSNeptuneDBSubnetGroup items from an AWS CloudFormation template +// GetEC2SecurityGroupWithName retrieves all ec2.SecurityGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSNeptuneDBSubnetGroupWithName(name string) (*resources.AWSNeptuneDBSubnetGroup, error) { +func (t *Template) GetEC2SecurityGroupWithName(name string) (*ec2.SecurityGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSNeptuneDBSubnetGroup: + case *ec2.SecurityGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSNeptuneDBSubnetGroup not found", name) + return nil, fmt.Errorf("resource %q of type ec2.SecurityGroup not found", name) } -// GetAllAWSOpsWorksAppResources retrieves all AWSOpsWorksApp items from an AWS CloudFormation template -func (t *Template) GetAllAWSOpsWorksAppResources() map[string]*resources.AWSOpsWorksApp { - results := map[string]*resources.AWSOpsWorksApp{} +// GetAllCloudWatchAnomalyDetectorResources retrieves all cloudwatch.AnomalyDetector items from an AWS CloudFormation template +func (t *Template) GetAllCloudWatchAnomalyDetectorResources() map[string]*cloudwatch.AnomalyDetector { + results := map[string]*cloudwatch.AnomalyDetector{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSOpsWorksApp: + case *cloudwatch.AnomalyDetector: results[name] = resource } } return results } -// GetAWSOpsWorksAppWithName retrieves all AWSOpsWorksApp items from an AWS CloudFormation template +// GetCloudWatchAnomalyDetectorWithName retrieves all cloudwatch.AnomalyDetector items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSOpsWorksAppWithName(name string) (*resources.AWSOpsWorksApp, error) { +func (t *Template) GetCloudWatchAnomalyDetectorWithName(name string) (*cloudwatch.AnomalyDetector, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSOpsWorksApp: + case *cloudwatch.AnomalyDetector: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSOpsWorksApp not found", name) + return nil, fmt.Errorf("resource %q of type cloudwatch.AnomalyDetector not found", name) } -// GetAllAWSOpsWorksElasticLoadBalancerAttachmentResources retrieves all AWSOpsWorksElasticLoadBalancerAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSOpsWorksElasticLoadBalancerAttachmentResources() map[string]*resources.AWSOpsWorksElasticLoadBalancerAttachment { - results := map[string]*resources.AWSOpsWorksElasticLoadBalancerAttachment{} +// GetAllApiGatewayV2DeploymentResources retrieves all apigatewayv2.Deployment items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2DeploymentResources() map[string]*apigatewayv2.Deployment { + results := map[string]*apigatewayv2.Deployment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSOpsWorksElasticLoadBalancerAttachment: + case *apigatewayv2.Deployment: results[name] = resource } } return results } -// GetAWSOpsWorksElasticLoadBalancerAttachmentWithName retrieves all AWSOpsWorksElasticLoadBalancerAttachment items from an AWS CloudFormation template +// GetApiGatewayV2DeploymentWithName retrieves all apigatewayv2.Deployment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSOpsWorksElasticLoadBalancerAttachmentWithName(name string) (*resources.AWSOpsWorksElasticLoadBalancerAttachment, error) { +func (t *Template) GetApiGatewayV2DeploymentWithName(name string) (*apigatewayv2.Deployment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSOpsWorksElasticLoadBalancerAttachment: + case *apigatewayv2.Deployment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSOpsWorksElasticLoadBalancerAttachment not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.Deployment not found", name) } -// GetAllAWSOpsWorksInstanceResources retrieves all AWSOpsWorksInstance items from an AWS CloudFormation template -func (t *Template) GetAllAWSOpsWorksInstanceResources() map[string]*resources.AWSOpsWorksInstance { - results := map[string]*resources.AWSOpsWorksInstance{} +// GetAllAutoScalingScheduledActionResources retrieves all autoscaling.ScheduledAction items from an AWS CloudFormation template +func (t *Template) GetAllAutoScalingScheduledActionResources() map[string]*autoscaling.ScheduledAction { + results := map[string]*autoscaling.ScheduledAction{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSOpsWorksInstance: + case *autoscaling.ScheduledAction: results[name] = resource } } return results } -// GetAWSOpsWorksInstanceWithName retrieves all AWSOpsWorksInstance items from an AWS CloudFormation template +// GetAutoScalingScheduledActionWithName retrieves all autoscaling.ScheduledAction items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSOpsWorksInstanceWithName(name string) (*resources.AWSOpsWorksInstance, error) { +func (t *Template) GetAutoScalingScheduledActionWithName(name string) (*autoscaling.ScheduledAction, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSOpsWorksInstance: + case *autoscaling.ScheduledAction: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSOpsWorksInstance not found", name) + return nil, fmt.Errorf("resource %q of type autoscaling.ScheduledAction not found", name) } -// GetAllAWSOpsWorksLayerResources retrieves all AWSOpsWorksLayer items from an AWS CloudFormation template -func (t *Template) GetAllAWSOpsWorksLayerResources() map[string]*resources.AWSOpsWorksLayer { - results := map[string]*resources.AWSOpsWorksLayer{} +// GetAllAppSyncApiKeyResources retrieves all appsync.ApiKey items from an AWS CloudFormation template +func (t *Template) GetAllAppSyncApiKeyResources() map[string]*appsync.ApiKey { + results := map[string]*appsync.ApiKey{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSOpsWorksLayer: + case *appsync.ApiKey: results[name] = resource } } return results } -// GetAWSOpsWorksLayerWithName retrieves all AWSOpsWorksLayer items from an AWS CloudFormation template +// GetAppSyncApiKeyWithName retrieves all appsync.ApiKey items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSOpsWorksLayerWithName(name string) (*resources.AWSOpsWorksLayer, error) { +func (t *Template) GetAppSyncApiKeyWithName(name string) (*appsync.ApiKey, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSOpsWorksLayer: + case *appsync.ApiKey: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSOpsWorksLayer not found", name) + return nil, fmt.Errorf("resource %q of type appsync.ApiKey not found", name) } -// GetAllAWSOpsWorksStackResources retrieves all AWSOpsWorksStack items from an AWS CloudFormation template -func (t *Template) GetAllAWSOpsWorksStackResources() map[string]*resources.AWSOpsWorksStack { - results := map[string]*resources.AWSOpsWorksStack{} +// GetAllOpsWorksCMServerResources retrieves all opsworkscm.Server items from an AWS CloudFormation template +func (t *Template) GetAllOpsWorksCMServerResources() map[string]*opsworkscm.Server { + results := map[string]*opsworkscm.Server{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSOpsWorksStack: + case *opsworkscm.Server: results[name] = resource } } return results } -// GetAWSOpsWorksStackWithName retrieves all AWSOpsWorksStack items from an AWS CloudFormation template +// GetOpsWorksCMServerWithName retrieves all opsworkscm.Server items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSOpsWorksStackWithName(name string) (*resources.AWSOpsWorksStack, error) { +func (t *Template) GetOpsWorksCMServerWithName(name string) (*opsworkscm.Server, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSOpsWorksStack: + case *opsworkscm.Server: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSOpsWorksStack not found", name) + return nil, fmt.Errorf("resource %q of type opsworkscm.Server not found", name) } -// GetAllAWSOpsWorksUserProfileResources retrieves all AWSOpsWorksUserProfile items from an AWS CloudFormation template -func (t *Template) GetAllAWSOpsWorksUserProfileResources() map[string]*resources.AWSOpsWorksUserProfile { - results := map[string]*resources.AWSOpsWorksUserProfile{} +// GetAllRoute53ResolverResolverRuleResources retrieves all route53resolver.ResolverRule items from an AWS CloudFormation template +func (t *Template) GetAllRoute53ResolverResolverRuleResources() map[string]*route53resolver.ResolverRule { + results := map[string]*route53resolver.ResolverRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSOpsWorksUserProfile: + case *route53resolver.ResolverRule: results[name] = resource } } return results } -// GetAWSOpsWorksUserProfileWithName retrieves all AWSOpsWorksUserProfile items from an AWS CloudFormation template +// GetRoute53ResolverResolverRuleWithName retrieves all route53resolver.ResolverRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSOpsWorksUserProfileWithName(name string) (*resources.AWSOpsWorksUserProfile, error) { +func (t *Template) GetRoute53ResolverResolverRuleWithName(name string) (*route53resolver.ResolverRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSOpsWorksUserProfile: + case *route53resolver.ResolverRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSOpsWorksUserProfile not found", name) + return nil, fmt.Errorf("resource %q of type route53resolver.ResolverRule not found", name) } -// GetAllAWSOpsWorksVolumeResources retrieves all AWSOpsWorksVolume items from an AWS CloudFormation template -func (t *Template) GetAllAWSOpsWorksVolumeResources() map[string]*resources.AWSOpsWorksVolume { - results := map[string]*resources.AWSOpsWorksVolume{} +// GetAllSecretsManagerSecretResources retrieves all secretsmanager.Secret items from an AWS CloudFormation template +func (t *Template) GetAllSecretsManagerSecretResources() map[string]*secretsmanager.Secret { + results := map[string]*secretsmanager.Secret{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSOpsWorksVolume: + case *secretsmanager.Secret: results[name] = resource } } return results } -// GetAWSOpsWorksVolumeWithName retrieves all AWSOpsWorksVolume items from an AWS CloudFormation template +// GetSecretsManagerSecretWithName retrieves all secretsmanager.Secret items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSOpsWorksVolumeWithName(name string) (*resources.AWSOpsWorksVolume, error) { +func (t *Template) GetSecretsManagerSecretWithName(name string) (*secretsmanager.Secret, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSOpsWorksVolume: + case *secretsmanager.Secret: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSOpsWorksVolume not found", name) + return nil, fmt.Errorf("resource %q of type secretsmanager.Secret not found", name) } -// GetAllAWSOpsWorksCMServerResources retrieves all AWSOpsWorksCMServer items from an AWS CloudFormation template -func (t *Template) GetAllAWSOpsWorksCMServerResources() map[string]*resources.AWSOpsWorksCMServer { - results := map[string]*resources.AWSOpsWorksCMServer{} +// GetAllIoTPolicyPrincipalAttachmentResources retrieves all iot.PolicyPrincipalAttachment items from an AWS CloudFormation template +func (t *Template) GetAllIoTPolicyPrincipalAttachmentResources() map[string]*iot.PolicyPrincipalAttachment { + results := map[string]*iot.PolicyPrincipalAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSOpsWorksCMServer: + case *iot.PolicyPrincipalAttachment: results[name] = resource } } return results } -// GetAWSOpsWorksCMServerWithName retrieves all AWSOpsWorksCMServer items from an AWS CloudFormation template +// GetIoTPolicyPrincipalAttachmentWithName retrieves all iot.PolicyPrincipalAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSOpsWorksCMServerWithName(name string) (*resources.AWSOpsWorksCMServer, error) { +func (t *Template) GetIoTPolicyPrincipalAttachmentWithName(name string) (*iot.PolicyPrincipalAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSOpsWorksCMServer: + case *iot.PolicyPrincipalAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSOpsWorksCMServer not found", name) + return nil, fmt.Errorf("resource %q of type iot.PolicyPrincipalAttachment not found", name) } -// GetAllAWSPinpointADMChannelResources retrieves all AWSPinpointADMChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointADMChannelResources() map[string]*resources.AWSPinpointADMChannel { - results := map[string]*resources.AWSPinpointADMChannel{} +// GetAllLakeFormationPermissionsResources retrieves all lakeformation.Permissions items from an AWS CloudFormation template +func (t *Template) GetAllLakeFormationPermissionsResources() map[string]*lakeformation.Permissions { + results := map[string]*lakeformation.Permissions{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointADMChannel: + case *lakeformation.Permissions: results[name] = resource } } return results } -// GetAWSPinpointADMChannelWithName retrieves all AWSPinpointADMChannel items from an AWS CloudFormation template +// GetLakeFormationPermissionsWithName retrieves all lakeformation.Permissions items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointADMChannelWithName(name string) (*resources.AWSPinpointADMChannel, error) { +func (t *Template) GetLakeFormationPermissionsWithName(name string) (*lakeformation.Permissions, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointADMChannel: + case *lakeformation.Permissions: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointADMChannel not found", name) + return nil, fmt.Errorf("resource %q of type lakeformation.Permissions not found", name) } -// GetAllAWSPinpointAPNSChannelResources retrieves all AWSPinpointAPNSChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointAPNSChannelResources() map[string]*resources.AWSPinpointAPNSChannel { - results := map[string]*resources.AWSPinpointAPNSChannel{} +// GetAllSDBDomainResources retrieves all sdb.Domain items from an AWS CloudFormation template +func (t *Template) GetAllSDBDomainResources() map[string]*sdb.Domain { + results := map[string]*sdb.Domain{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointAPNSChannel: + case *sdb.Domain: results[name] = resource } } return results } -// GetAWSPinpointAPNSChannelWithName retrieves all AWSPinpointAPNSChannel items from an AWS CloudFormation template +// GetSDBDomainWithName retrieves all sdb.Domain items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointAPNSChannelWithName(name string) (*resources.AWSPinpointAPNSChannel, error) { +func (t *Template) GetSDBDomainWithName(name string) (*sdb.Domain, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointAPNSChannel: + case *sdb.Domain: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointAPNSChannel not found", name) + return nil, fmt.Errorf("resource %q of type sdb.Domain not found", name) } -// GetAllAWSPinpointAPNSSandboxChannelResources retrieves all AWSPinpointAPNSSandboxChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointAPNSSandboxChannelResources() map[string]*resources.AWSPinpointAPNSSandboxChannel { - results := map[string]*resources.AWSPinpointAPNSSandboxChannel{} +// GetAllWAFRegionalSizeConstraintSetResources retrieves all wafregional.SizeConstraintSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalSizeConstraintSetResources() map[string]*wafregional.SizeConstraintSet { + results := map[string]*wafregional.SizeConstraintSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointAPNSSandboxChannel: + case *wafregional.SizeConstraintSet: results[name] = resource } } return results } -// GetAWSPinpointAPNSSandboxChannelWithName retrieves all AWSPinpointAPNSSandboxChannel items from an AWS CloudFormation template +// GetWAFRegionalSizeConstraintSetWithName retrieves all wafregional.SizeConstraintSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointAPNSSandboxChannelWithName(name string) (*resources.AWSPinpointAPNSSandboxChannel, error) { +func (t *Template) GetWAFRegionalSizeConstraintSetWithName(name string) (*wafregional.SizeConstraintSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointAPNSSandboxChannel: + case *wafregional.SizeConstraintSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointAPNSSandboxChannel not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.SizeConstraintSet not found", name) } -// GetAllAWSPinpointAPNSVoipChannelResources retrieves all AWSPinpointAPNSVoipChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointAPNSVoipChannelResources() map[string]*resources.AWSPinpointAPNSVoipChannel { - results := map[string]*resources.AWSPinpointAPNSVoipChannel{} +// GetAllMediaStoreContainerResources retrieves all mediastore.Container items from an AWS CloudFormation template +func (t *Template) GetAllMediaStoreContainerResources() map[string]*mediastore.Container { + results := map[string]*mediastore.Container{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointAPNSVoipChannel: + case *mediastore.Container: results[name] = resource } } return results } -// GetAWSPinpointAPNSVoipChannelWithName retrieves all AWSPinpointAPNSVoipChannel items from an AWS CloudFormation template +// GetMediaStoreContainerWithName retrieves all mediastore.Container items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointAPNSVoipChannelWithName(name string) (*resources.AWSPinpointAPNSVoipChannel, error) { +func (t *Template) GetMediaStoreContainerWithName(name string) (*mediastore.Container, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointAPNSVoipChannel: + case *mediastore.Container: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointAPNSVoipChannel not found", name) + return nil, fmt.Errorf("resource %q of type mediastore.Container not found", name) } -// GetAllAWSPinpointAPNSVoipSandboxChannelResources retrieves all AWSPinpointAPNSVoipSandboxChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointAPNSVoipSandboxChannelResources() map[string]*resources.AWSPinpointAPNSVoipSandboxChannel { - results := map[string]*resources.AWSPinpointAPNSVoipSandboxChannel{} +// GetAllGreengrassConnectorDefinitionVersionResources retrieves all greengrass.ConnectorDefinitionVersion items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassConnectorDefinitionVersionResources() map[string]*greengrass.ConnectorDefinitionVersion { + results := map[string]*greengrass.ConnectorDefinitionVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointAPNSVoipSandboxChannel: + case *greengrass.ConnectorDefinitionVersion: results[name] = resource } } return results } -// GetAWSPinpointAPNSVoipSandboxChannelWithName retrieves all AWSPinpointAPNSVoipSandboxChannel items from an AWS CloudFormation template +// GetGreengrassConnectorDefinitionVersionWithName retrieves all greengrass.ConnectorDefinitionVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointAPNSVoipSandboxChannelWithName(name string) (*resources.AWSPinpointAPNSVoipSandboxChannel, error) { +func (t *Template) GetGreengrassConnectorDefinitionVersionWithName(name string) (*greengrass.ConnectorDefinitionVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointAPNSVoipSandboxChannel: + case *greengrass.ConnectorDefinitionVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointAPNSVoipSandboxChannel not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.ConnectorDefinitionVersion not found", name) } -// GetAllAWSPinpointAppResources retrieves all AWSPinpointApp items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointAppResources() map[string]*resources.AWSPinpointApp { - results := map[string]*resources.AWSPinpointApp{} +// GetAllPinpointGCMChannelResources retrieves all pinpoint.GCMChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointGCMChannelResources() map[string]*pinpoint.GCMChannel { + results := map[string]*pinpoint.GCMChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointApp: + case *pinpoint.GCMChannel: results[name] = resource } } return results } -// GetAWSPinpointAppWithName retrieves all AWSPinpointApp items from an AWS CloudFormation template +// GetPinpointGCMChannelWithName retrieves all pinpoint.GCMChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointAppWithName(name string) (*resources.AWSPinpointApp, error) { +func (t *Template) GetPinpointGCMChannelWithName(name string) (*pinpoint.GCMChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointApp: + case *pinpoint.GCMChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointApp not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.GCMChannel not found", name) } -// GetAllAWSPinpointApplicationSettingsResources retrieves all AWSPinpointApplicationSettings items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointApplicationSettingsResources() map[string]*resources.AWSPinpointApplicationSettings { - results := map[string]*resources.AWSPinpointApplicationSettings{} +// GetAllRDSDBSecurityGroupIngressResources retrieves all rds.DBSecurityGroupIngress items from an AWS CloudFormation template +func (t *Template) GetAllRDSDBSecurityGroupIngressResources() map[string]*rds.DBSecurityGroupIngress { + results := map[string]*rds.DBSecurityGroupIngress{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointApplicationSettings: + case *rds.DBSecurityGroupIngress: results[name] = resource } } return results } -// GetAWSPinpointApplicationSettingsWithName retrieves all AWSPinpointApplicationSettings items from an AWS CloudFormation template +// GetRDSDBSecurityGroupIngressWithName retrieves all rds.DBSecurityGroupIngress items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointApplicationSettingsWithName(name string) (*resources.AWSPinpointApplicationSettings, error) { +func (t *Template) GetRDSDBSecurityGroupIngressWithName(name string) (*rds.DBSecurityGroupIngress, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointApplicationSettings: + case *rds.DBSecurityGroupIngress: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointApplicationSettings not found", name) + return nil, fmt.Errorf("resource %q of type rds.DBSecurityGroupIngress not found", name) } -// GetAllAWSPinpointBaiduChannelResources retrieves all AWSPinpointBaiduChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointBaiduChannelResources() map[string]*resources.AWSPinpointBaiduChannel { - results := map[string]*resources.AWSPinpointBaiduChannel{} +// GetAllConfigOrganizationConfigRuleResources retrieves all config.OrganizationConfigRule items from an AWS CloudFormation template +func (t *Template) GetAllConfigOrganizationConfigRuleResources() map[string]*config.OrganizationConfigRule { + results := map[string]*config.OrganizationConfigRule{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointBaiduChannel: + case *config.OrganizationConfigRule: results[name] = resource } } return results } -// GetAWSPinpointBaiduChannelWithName retrieves all AWSPinpointBaiduChannel items from an AWS CloudFormation template +// GetConfigOrganizationConfigRuleWithName retrieves all config.OrganizationConfigRule items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointBaiduChannelWithName(name string) (*resources.AWSPinpointBaiduChannel, error) { +func (t *Template) GetConfigOrganizationConfigRuleWithName(name string) (*config.OrganizationConfigRule, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointBaiduChannel: + case *config.OrganizationConfigRule: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointBaiduChannel not found", name) + return nil, fmt.Errorf("resource %q of type config.OrganizationConfigRule not found", name) } -// GetAllAWSPinpointCampaignResources retrieves all AWSPinpointCampaign items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointCampaignResources() map[string]*resources.AWSPinpointCampaign { - results := map[string]*resources.AWSPinpointCampaign{} +// GetAllIoTThingResources retrieves all iot.Thing items from an AWS CloudFormation template +func (t *Template) GetAllIoTThingResources() map[string]*iot.Thing { + results := map[string]*iot.Thing{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointCampaign: + case *iot.Thing: results[name] = resource } } return results } -// GetAWSPinpointCampaignWithName retrieves all AWSPinpointCampaign items from an AWS CloudFormation template +// GetIoTThingWithName retrieves all iot.Thing items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointCampaignWithName(name string) (*resources.AWSPinpointCampaign, error) { +func (t *Template) GetIoTThingWithName(name string) (*iot.Thing, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointCampaign: + case *iot.Thing: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointCampaign not found", name) + return nil, fmt.Errorf("resource %q of type iot.Thing not found", name) } -// GetAllAWSPinpointEmailChannelResources retrieves all AWSPinpointEmailChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointEmailChannelResources() map[string]*resources.AWSPinpointEmailChannel { - results := map[string]*resources.AWSPinpointEmailChannel{} +// GetAllCodeDeployDeploymentGroupResources retrieves all codedeploy.DeploymentGroup items from an AWS CloudFormation template +func (t *Template) GetAllCodeDeployDeploymentGroupResources() map[string]*codedeploy.DeploymentGroup { + results := map[string]*codedeploy.DeploymentGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailChannel: + case *codedeploy.DeploymentGroup: results[name] = resource } } return results } -// GetAWSPinpointEmailChannelWithName retrieves all AWSPinpointEmailChannel items from an AWS CloudFormation template +// GetCodeDeployDeploymentGroupWithName retrieves all codedeploy.DeploymentGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointEmailChannelWithName(name string) (*resources.AWSPinpointEmailChannel, error) { +func (t *Template) GetCodeDeployDeploymentGroupWithName(name string) (*codedeploy.DeploymentGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailChannel: + case *codedeploy.DeploymentGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointEmailChannel not found", name) + return nil, fmt.Errorf("resource %q of type codedeploy.DeploymentGroup not found", name) } -// GetAllAWSPinpointEventStreamResources retrieves all AWSPinpointEventStream items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointEventStreamResources() map[string]*resources.AWSPinpointEventStream { - results := map[string]*resources.AWSPinpointEventStream{} +// GetAllWAFRegionalWebACLAssociationResources retrieves all wafregional.WebACLAssociation items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalWebACLAssociationResources() map[string]*wafregional.WebACLAssociation { + results := map[string]*wafregional.WebACLAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointEventStream: + case *wafregional.WebACLAssociation: results[name] = resource } } return results } -// GetAWSPinpointEventStreamWithName retrieves all AWSPinpointEventStream items from an AWS CloudFormation template +// GetWAFRegionalWebACLAssociationWithName retrieves all wafregional.WebACLAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointEventStreamWithName(name string) (*resources.AWSPinpointEventStream, error) { +func (t *Template) GetWAFRegionalWebACLAssociationWithName(name string) (*wafregional.WebACLAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointEventStream: + case *wafregional.WebACLAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointEventStream not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.WebACLAssociation not found", name) } -// GetAllAWSPinpointGCMChannelResources retrieves all AWSPinpointGCMChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointGCMChannelResources() map[string]*resources.AWSPinpointGCMChannel { - results := map[string]*resources.AWSPinpointGCMChannel{} +// GetAllIAMUserResources retrieves all iam.User items from an AWS CloudFormation template +func (t *Template) GetAllIAMUserResources() map[string]*iam.User { + results := map[string]*iam.User{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointGCMChannel: + case *iam.User: results[name] = resource } } return results } -// GetAWSPinpointGCMChannelWithName retrieves all AWSPinpointGCMChannel items from an AWS CloudFormation template +// GetIAMUserWithName retrieves all iam.User items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointGCMChannelWithName(name string) (*resources.AWSPinpointGCMChannel, error) { +func (t *Template) GetIAMUserWithName(name string) (*iam.User, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointGCMChannel: + case *iam.User: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointGCMChannel not found", name) + return nil, fmt.Errorf("resource %q of type iam.User not found", name) } -// GetAllAWSPinpointSMSChannelResources retrieves all AWSPinpointSMSChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointSMSChannelResources() map[string]*resources.AWSPinpointSMSChannel { - results := map[string]*resources.AWSPinpointSMSChannel{} +// GetAllIoTEventsInputResources retrieves all iotevents.Input items from an AWS CloudFormation template +func (t *Template) GetAllIoTEventsInputResources() map[string]*iotevents.Input { + results := map[string]*iotevents.Input{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointSMSChannel: + case *iotevents.Input: results[name] = resource } } return results } -// GetAWSPinpointSMSChannelWithName retrieves all AWSPinpointSMSChannel items from an AWS CloudFormation template +// GetIoTEventsInputWithName retrieves all iotevents.Input items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointSMSChannelWithName(name string) (*resources.AWSPinpointSMSChannel, error) { +func (t *Template) GetIoTEventsInputWithName(name string) (*iotevents.Input, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointSMSChannel: + case *iotevents.Input: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointSMSChannel not found", name) + return nil, fmt.Errorf("resource %q of type iotevents.Input not found", name) } -// GetAllAWSPinpointSegmentResources retrieves all AWSPinpointSegment items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointSegmentResources() map[string]*resources.AWSPinpointSegment { - results := map[string]*resources.AWSPinpointSegment{} +// GetAllRDSDBSecurityGroupResources retrieves all rds.DBSecurityGroup items from an AWS CloudFormation template +func (t *Template) GetAllRDSDBSecurityGroupResources() map[string]*rds.DBSecurityGroup { + results := map[string]*rds.DBSecurityGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointSegment: + case *rds.DBSecurityGroup: results[name] = resource } } return results } -// GetAWSPinpointSegmentWithName retrieves all AWSPinpointSegment items from an AWS CloudFormation template +// GetRDSDBSecurityGroupWithName retrieves all rds.DBSecurityGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointSegmentWithName(name string) (*resources.AWSPinpointSegment, error) { +func (t *Template) GetRDSDBSecurityGroupWithName(name string) (*rds.DBSecurityGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointSegment: + case *rds.DBSecurityGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointSegment not found", name) + return nil, fmt.Errorf("resource %q of type rds.DBSecurityGroup not found", name) } -// GetAllAWSPinpointVoiceChannelResources retrieves all AWSPinpointVoiceChannel items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointVoiceChannelResources() map[string]*resources.AWSPinpointVoiceChannel { - results := map[string]*resources.AWSPinpointVoiceChannel{} +// GetAllLogsSubscriptionFilterResources retrieves all logs.SubscriptionFilter items from an AWS CloudFormation template +func (t *Template) GetAllLogsSubscriptionFilterResources() map[string]*logs.SubscriptionFilter { + results := map[string]*logs.SubscriptionFilter{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointVoiceChannel: + case *logs.SubscriptionFilter: results[name] = resource } } return results } -// GetAWSPinpointVoiceChannelWithName retrieves all AWSPinpointVoiceChannel items from an AWS CloudFormation template +// GetLogsSubscriptionFilterWithName retrieves all logs.SubscriptionFilter items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointVoiceChannelWithName(name string) (*resources.AWSPinpointVoiceChannel, error) { +func (t *Template) GetLogsSubscriptionFilterWithName(name string) (*logs.SubscriptionFilter, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointVoiceChannel: + case *logs.SubscriptionFilter: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointVoiceChannel not found", name) + return nil, fmt.Errorf("resource %q of type logs.SubscriptionFilter not found", name) } -// GetAllAWSPinpointEmailConfigurationSetResources retrieves all AWSPinpointEmailConfigurationSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointEmailConfigurationSetResources() map[string]*resources.AWSPinpointEmailConfigurationSet { - results := map[string]*resources.AWSPinpointEmailConfigurationSet{} +// GetAllElastiCacheSecurityGroupIngressResources retrieves all elasticache.SecurityGroupIngress items from an AWS CloudFormation template +func (t *Template) GetAllElastiCacheSecurityGroupIngressResources() map[string]*elasticache.SecurityGroupIngress { + results := map[string]*elasticache.SecurityGroupIngress{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailConfigurationSet: + case *elasticache.SecurityGroupIngress: results[name] = resource } } return results } -// GetAWSPinpointEmailConfigurationSetWithName retrieves all AWSPinpointEmailConfigurationSet items from an AWS CloudFormation template +// GetElastiCacheSecurityGroupIngressWithName retrieves all elasticache.SecurityGroupIngress items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointEmailConfigurationSetWithName(name string) (*resources.AWSPinpointEmailConfigurationSet, error) { +func (t *Template) GetElastiCacheSecurityGroupIngressWithName(name string) (*elasticache.SecurityGroupIngress, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailConfigurationSet: + case *elasticache.SecurityGroupIngress: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointEmailConfigurationSet not found", name) + return nil, fmt.Errorf("resource %q of type elasticache.SecurityGroupIngress not found", name) } -// GetAllAWSPinpointEmailConfigurationSetEventDestinationResources retrieves all AWSPinpointEmailConfigurationSetEventDestination items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointEmailConfigurationSetEventDestinationResources() map[string]*resources.AWSPinpointEmailConfigurationSetEventDestination { - results := map[string]*resources.AWSPinpointEmailConfigurationSetEventDestination{} +// GetAllEFSMountTargetResources retrieves all efs.MountTarget items from an AWS CloudFormation template +func (t *Template) GetAllEFSMountTargetResources() map[string]*efs.MountTarget { + results := map[string]*efs.MountTarget{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailConfigurationSetEventDestination: + case *efs.MountTarget: results[name] = resource } } return results } -// GetAWSPinpointEmailConfigurationSetEventDestinationWithName retrieves all AWSPinpointEmailConfigurationSetEventDestination items from an AWS CloudFormation template +// GetEFSMountTargetWithName retrieves all efs.MountTarget items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointEmailConfigurationSetEventDestinationWithName(name string) (*resources.AWSPinpointEmailConfigurationSetEventDestination, error) { +func (t *Template) GetEFSMountTargetWithName(name string) (*efs.MountTarget, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailConfigurationSetEventDestination: + case *efs.MountTarget: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointEmailConfigurationSetEventDestination not found", name) + return nil, fmt.Errorf("resource %q of type efs.MountTarget not found", name) } -// GetAllAWSPinpointEmailDedicatedIpPoolResources retrieves all AWSPinpointEmailDedicatedIpPool items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointEmailDedicatedIpPoolResources() map[string]*resources.AWSPinpointEmailDedicatedIpPool { - results := map[string]*resources.AWSPinpointEmailDedicatedIpPool{} +// GetAllDAXClusterResources retrieves all dax.Cluster items from an AWS CloudFormation template +func (t *Template) GetAllDAXClusterResources() map[string]*dax.Cluster { + results := map[string]*dax.Cluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailDedicatedIpPool: + case *dax.Cluster: results[name] = resource } } return results } -// GetAWSPinpointEmailDedicatedIpPoolWithName retrieves all AWSPinpointEmailDedicatedIpPool items from an AWS CloudFormation template +// GetDAXClusterWithName retrieves all dax.Cluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointEmailDedicatedIpPoolWithName(name string) (*resources.AWSPinpointEmailDedicatedIpPool, error) { +func (t *Template) GetDAXClusterWithName(name string) (*dax.Cluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailDedicatedIpPool: + case *dax.Cluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointEmailDedicatedIpPool not found", name) + return nil, fmt.Errorf("resource %q of type dax.Cluster not found", name) } -// GetAllAWSPinpointEmailIdentityResources retrieves all AWSPinpointEmailIdentity items from an AWS CloudFormation template -func (t *Template) GetAllAWSPinpointEmailIdentityResources() map[string]*resources.AWSPinpointEmailIdentity { - results := map[string]*resources.AWSPinpointEmailIdentity{} +// GetAllApiGatewayV2RouteResponseResources retrieves all apigatewayv2.RouteResponse items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2RouteResponseResources() map[string]*apigatewayv2.RouteResponse { + results := map[string]*apigatewayv2.RouteResponse{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailIdentity: + case *apigatewayv2.RouteResponse: results[name] = resource } } return results } -// GetAWSPinpointEmailIdentityWithName retrieves all AWSPinpointEmailIdentity items from an AWS CloudFormation template +// GetApiGatewayV2RouteResponseWithName retrieves all apigatewayv2.RouteResponse items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSPinpointEmailIdentityWithName(name string) (*resources.AWSPinpointEmailIdentity, error) { +func (t *Template) GetApiGatewayV2RouteResponseWithName(name string) (*apigatewayv2.RouteResponse, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSPinpointEmailIdentity: + case *apigatewayv2.RouteResponse: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSPinpointEmailIdentity not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.RouteResponse not found", name) } -// GetAllAWSQLDBLedgerResources retrieves all AWSQLDBLedger items from an AWS CloudFormation template -func (t *Template) GetAllAWSQLDBLedgerResources() map[string]*resources.AWSQLDBLedger { - results := map[string]*resources.AWSQLDBLedger{} +// GetAllLogsDestinationResources retrieves all logs.Destination items from an AWS CloudFormation template +func (t *Template) GetAllLogsDestinationResources() map[string]*logs.Destination { + results := map[string]*logs.Destination{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSQLDBLedger: + case *logs.Destination: results[name] = resource } } return results } -// GetAWSQLDBLedgerWithName retrieves all AWSQLDBLedger items from an AWS CloudFormation template +// GetLogsDestinationWithName retrieves all logs.Destination items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSQLDBLedgerWithName(name string) (*resources.AWSQLDBLedger, error) { +func (t *Template) GetLogsDestinationWithName(name string) (*logs.Destination, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSQLDBLedger: + case *logs.Destination: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSQLDBLedger not found", name) + return nil, fmt.Errorf("resource %q of type logs.Destination not found", name) } -// GetAllAWSRAMResourceShareResources retrieves all AWSRAMResourceShare items from an AWS CloudFormation template -func (t *Template) GetAllAWSRAMResourceShareResources() map[string]*resources.AWSRAMResourceShare { - results := map[string]*resources.AWSRAMResourceShare{} +// GetAllSSMResourceDataSyncResources retrieves all ssm.ResourceDataSync items from an AWS CloudFormation template +func (t *Template) GetAllSSMResourceDataSyncResources() map[string]*ssm.ResourceDataSync { + results := map[string]*ssm.ResourceDataSync{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRAMResourceShare: + case *ssm.ResourceDataSync: results[name] = resource } } return results } -// GetAWSRAMResourceShareWithName retrieves all AWSRAMResourceShare items from an AWS CloudFormation template +// GetSSMResourceDataSyncWithName retrieves all ssm.ResourceDataSync items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRAMResourceShareWithName(name string) (*resources.AWSRAMResourceShare, error) { +func (t *Template) GetSSMResourceDataSyncWithName(name string) (*ssm.ResourceDataSync, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRAMResourceShare: + case *ssm.ResourceDataSync: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRAMResourceShare not found", name) + return nil, fmt.Errorf("resource %q of type ssm.ResourceDataSync not found", name) } -// GetAllAWSRDSDBClusterResources retrieves all AWSRDSDBCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSDBClusterResources() map[string]*resources.AWSRDSDBCluster { - results := map[string]*resources.AWSRDSDBCluster{} +// GetAllRedshiftClusterSecurityGroupResources retrieves all redshift.ClusterSecurityGroup items from an AWS CloudFormation template +func (t *Template) GetAllRedshiftClusterSecurityGroupResources() map[string]*redshift.ClusterSecurityGroup { + results := map[string]*redshift.ClusterSecurityGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSDBCluster: + case *redshift.ClusterSecurityGroup: results[name] = resource } } return results } -// GetAWSRDSDBClusterWithName retrieves all AWSRDSDBCluster items from an AWS CloudFormation template +// GetRedshiftClusterSecurityGroupWithName retrieves all redshift.ClusterSecurityGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSDBClusterWithName(name string) (*resources.AWSRDSDBCluster, error) { +func (t *Template) GetRedshiftClusterSecurityGroupWithName(name string) (*redshift.ClusterSecurityGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSDBCluster: + case *redshift.ClusterSecurityGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSDBCluster not found", name) + return nil, fmt.Errorf("resource %q of type redshift.ClusterSecurityGroup not found", name) } -// GetAllAWSRDSDBClusterParameterGroupResources retrieves all AWSRDSDBClusterParameterGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSDBClusterParameterGroupResources() map[string]*resources.AWSRDSDBClusterParameterGroup { - results := map[string]*resources.AWSRDSDBClusterParameterGroup{} +// GetAllAmazonMQBrokerResources retrieves all amazonmq.Broker items from an AWS CloudFormation template +func (t *Template) GetAllAmazonMQBrokerResources() map[string]*amazonmq.Broker { + results := map[string]*amazonmq.Broker{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSDBClusterParameterGroup: + case *amazonmq.Broker: results[name] = resource } } return results } -// GetAWSRDSDBClusterParameterGroupWithName retrieves all AWSRDSDBClusterParameterGroup items from an AWS CloudFormation template +// GetAmazonMQBrokerWithName retrieves all amazonmq.Broker items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSDBClusterParameterGroupWithName(name string) (*resources.AWSRDSDBClusterParameterGroup, error) { +func (t *Template) GetAmazonMQBrokerWithName(name string) (*amazonmq.Broker, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSDBClusterParameterGroup: + case *amazonmq.Broker: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSDBClusterParameterGroup not found", name) + return nil, fmt.Errorf("resource %q of type amazonmq.Broker not found", name) } -// GetAllAWSRDSDBInstanceResources retrieves all AWSRDSDBInstance items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSDBInstanceResources() map[string]*resources.AWSRDSDBInstance { - results := map[string]*resources.AWSRDSDBInstance{} +// GetAllSSMParameterResources retrieves all ssm.Parameter items from an AWS CloudFormation template +func (t *Template) GetAllSSMParameterResources() map[string]*ssm.Parameter { + results := map[string]*ssm.Parameter{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSDBInstance: + case *ssm.Parameter: results[name] = resource } } return results } -// GetAWSRDSDBInstanceWithName retrieves all AWSRDSDBInstance items from an AWS CloudFormation template +// GetSSMParameterWithName retrieves all ssm.Parameter items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSDBInstanceWithName(name string) (*resources.AWSRDSDBInstance, error) { +func (t *Template) GetSSMParameterWithName(name string) (*ssm.Parameter, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSDBInstance: + case *ssm.Parameter: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSDBInstance not found", name) + return nil, fmt.Errorf("resource %q of type ssm.Parameter not found", name) } -// GetAllAWSRDSDBParameterGroupResources retrieves all AWSRDSDBParameterGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSDBParameterGroupResources() map[string]*resources.AWSRDSDBParameterGroup { - results := map[string]*resources.AWSRDSDBParameterGroup{} +// GetAllEMRInstanceFleetConfigResources retrieves all emr.InstanceFleetConfig items from an AWS CloudFormation template +func (t *Template) GetAllEMRInstanceFleetConfigResources() map[string]*emr.InstanceFleetConfig { + results := map[string]*emr.InstanceFleetConfig{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSDBParameterGroup: + case *emr.InstanceFleetConfig: results[name] = resource } } return results } -// GetAWSRDSDBParameterGroupWithName retrieves all AWSRDSDBParameterGroup items from an AWS CloudFormation template +// GetEMRInstanceFleetConfigWithName retrieves all emr.InstanceFleetConfig items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSDBParameterGroupWithName(name string) (*resources.AWSRDSDBParameterGroup, error) { +func (t *Template) GetEMRInstanceFleetConfigWithName(name string) (*emr.InstanceFleetConfig, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSDBParameterGroup: + case *emr.InstanceFleetConfig: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSDBParameterGroup not found", name) + return nil, fmt.Errorf("resource %q of type emr.InstanceFleetConfig not found", name) } -// GetAllAWSRDSDBSecurityGroupResources retrieves all AWSRDSDBSecurityGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSDBSecurityGroupResources() map[string]*resources.AWSRDSDBSecurityGroup { - results := map[string]*resources.AWSRDSDBSecurityGroup{} +// GetAllKinesisStreamResources retrieves all kinesis.Stream items from an AWS CloudFormation template +func (t *Template) GetAllKinesisStreamResources() map[string]*kinesis.Stream { + results := map[string]*kinesis.Stream{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSDBSecurityGroup: + case *kinesis.Stream: results[name] = resource } } return results } -// GetAWSRDSDBSecurityGroupWithName retrieves all AWSRDSDBSecurityGroup items from an AWS CloudFormation template +// GetKinesisStreamWithName retrieves all kinesis.Stream items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSDBSecurityGroupWithName(name string) (*resources.AWSRDSDBSecurityGroup, error) { +func (t *Template) GetKinesisStreamWithName(name string) (*kinesis.Stream, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSDBSecurityGroup: + case *kinesis.Stream: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSDBSecurityGroup not found", name) + return nil, fmt.Errorf("resource %q of type kinesis.Stream not found", name) } -// GetAllAWSRDSDBSecurityGroupIngressResources retrieves all AWSRDSDBSecurityGroupIngress items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSDBSecurityGroupIngressResources() map[string]*resources.AWSRDSDBSecurityGroupIngress { - results := map[string]*resources.AWSRDSDBSecurityGroupIngress{} +// GetAllServiceCatalogLaunchNotificationConstraintResources retrieves all servicecatalog.LaunchNotificationConstraint items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogLaunchNotificationConstraintResources() map[string]*servicecatalog.LaunchNotificationConstraint { + results := map[string]*servicecatalog.LaunchNotificationConstraint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSDBSecurityGroupIngress: + case *servicecatalog.LaunchNotificationConstraint: results[name] = resource } } return results } -// GetAWSRDSDBSecurityGroupIngressWithName retrieves all AWSRDSDBSecurityGroupIngress items from an AWS CloudFormation template +// GetServiceCatalogLaunchNotificationConstraintWithName retrieves all servicecatalog.LaunchNotificationConstraint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSDBSecurityGroupIngressWithName(name string) (*resources.AWSRDSDBSecurityGroupIngress, error) { +func (t *Template) GetServiceCatalogLaunchNotificationConstraintWithName(name string) (*servicecatalog.LaunchNotificationConstraint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSDBSecurityGroupIngress: + case *servicecatalog.LaunchNotificationConstraint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSDBSecurityGroupIngress not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.LaunchNotificationConstraint not found", name) } -// GetAllAWSRDSDBSubnetGroupResources retrieves all AWSRDSDBSubnetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSDBSubnetGroupResources() map[string]*resources.AWSRDSDBSubnetGroup { - results := map[string]*resources.AWSRDSDBSubnetGroup{} +// GetAllEC2TransitGatewayRouteTableResources retrieves all ec2.TransitGatewayRouteTable items from an AWS CloudFormation template +func (t *Template) GetAllEC2TransitGatewayRouteTableResources() map[string]*ec2.TransitGatewayRouteTable { + results := map[string]*ec2.TransitGatewayRouteTable{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSDBSubnetGroup: + case *ec2.TransitGatewayRouteTable: results[name] = resource } } return results } -// GetAWSRDSDBSubnetGroupWithName retrieves all AWSRDSDBSubnetGroup items from an AWS CloudFormation template +// GetEC2TransitGatewayRouteTableWithName retrieves all ec2.TransitGatewayRouteTable items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSDBSubnetGroupWithName(name string) (*resources.AWSRDSDBSubnetGroup, error) { +func (t *Template) GetEC2TransitGatewayRouteTableWithName(name string) (*ec2.TransitGatewayRouteTable, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSDBSubnetGroup: + case *ec2.TransitGatewayRouteTable: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSDBSubnetGroup not found", name) + return nil, fmt.Errorf("resource %q of type ec2.TransitGatewayRouteTable not found", name) } -// GetAllAWSRDSEventSubscriptionResources retrieves all AWSRDSEventSubscription items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSEventSubscriptionResources() map[string]*resources.AWSRDSEventSubscription { - results := map[string]*resources.AWSRDSEventSubscription{} +// GetAllAppMeshVirtualServiceResources retrieves all appmesh.VirtualService items from an AWS CloudFormation template +func (t *Template) GetAllAppMeshVirtualServiceResources() map[string]*appmesh.VirtualService { + results := map[string]*appmesh.VirtualService{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSEventSubscription: + case *appmesh.VirtualService: results[name] = resource } } return results } -// GetAWSRDSEventSubscriptionWithName retrieves all AWSRDSEventSubscription items from an AWS CloudFormation template +// GetAppMeshVirtualServiceWithName retrieves all appmesh.VirtualService items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSEventSubscriptionWithName(name string) (*resources.AWSRDSEventSubscription, error) { +func (t *Template) GetAppMeshVirtualServiceWithName(name string) (*appmesh.VirtualService, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSEventSubscription: + case *appmesh.VirtualService: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSEventSubscription not found", name) + return nil, fmt.Errorf("resource %q of type appmesh.VirtualService not found", name) } -// GetAllAWSRDSOptionGroupResources retrieves all AWSRDSOptionGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRDSOptionGroupResources() map[string]*resources.AWSRDSOptionGroup { - results := map[string]*resources.AWSRDSOptionGroup{} +// GetAllIoT1ClickDeviceResources retrieves all iot1click.Device items from an AWS CloudFormation template +func (t *Template) GetAllIoT1ClickDeviceResources() map[string]*iot1click.Device { + results := map[string]*iot1click.Device{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRDSOptionGroup: + case *iot1click.Device: results[name] = resource } } return results } -// GetAWSRDSOptionGroupWithName retrieves all AWSRDSOptionGroup items from an AWS CloudFormation template +// GetIoT1ClickDeviceWithName retrieves all iot1click.Device items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRDSOptionGroupWithName(name string) (*resources.AWSRDSOptionGroup, error) { +func (t *Template) GetIoT1ClickDeviceWithName(name string) (*iot1click.Device, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRDSOptionGroup: + case *iot1click.Device: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRDSOptionGroup not found", name) + return nil, fmt.Errorf("resource %q of type iot1click.Device not found", name) } -// GetAllAWSRedshiftClusterResources retrieves all AWSRedshiftCluster items from an AWS CloudFormation template -func (t *Template) GetAllAWSRedshiftClusterResources() map[string]*resources.AWSRedshiftCluster { - results := map[string]*resources.AWSRedshiftCluster{} +// GetAllPinpointAPNSVoipChannelResources retrieves all pinpoint.APNSVoipChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointAPNSVoipChannelResources() map[string]*pinpoint.APNSVoipChannel { + results := map[string]*pinpoint.APNSVoipChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRedshiftCluster: + case *pinpoint.APNSVoipChannel: results[name] = resource } } return results } -// GetAWSRedshiftClusterWithName retrieves all AWSRedshiftCluster items from an AWS CloudFormation template +// GetPinpointAPNSVoipChannelWithName retrieves all pinpoint.APNSVoipChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRedshiftClusterWithName(name string) (*resources.AWSRedshiftCluster, error) { +func (t *Template) GetPinpointAPNSVoipChannelWithName(name string) (*pinpoint.APNSVoipChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRedshiftCluster: + case *pinpoint.APNSVoipChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRedshiftCluster not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.APNSVoipChannel not found", name) } -// GetAllAWSRedshiftClusterParameterGroupResources retrieves all AWSRedshiftClusterParameterGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRedshiftClusterParameterGroupResources() map[string]*resources.AWSRedshiftClusterParameterGroup { - results := map[string]*resources.AWSRedshiftClusterParameterGroup{} +// GetAllGreengrassGroupVersionResources retrieves all greengrass.GroupVersion items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassGroupVersionResources() map[string]*greengrass.GroupVersion { + results := map[string]*greengrass.GroupVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRedshiftClusterParameterGroup: + case *greengrass.GroupVersion: results[name] = resource } } return results } -// GetAWSRedshiftClusterParameterGroupWithName retrieves all AWSRedshiftClusterParameterGroup items from an AWS CloudFormation template +// GetGreengrassGroupVersionWithName retrieves all greengrass.GroupVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRedshiftClusterParameterGroupWithName(name string) (*resources.AWSRedshiftClusterParameterGroup, error) { +func (t *Template) GetGreengrassGroupVersionWithName(name string) (*greengrass.GroupVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRedshiftClusterParameterGroup: + case *greengrass.GroupVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRedshiftClusterParameterGroup not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.GroupVersion not found", name) } -// GetAllAWSRedshiftClusterSecurityGroupResources retrieves all AWSRedshiftClusterSecurityGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRedshiftClusterSecurityGroupResources() map[string]*resources.AWSRedshiftClusterSecurityGroup { - results := map[string]*resources.AWSRedshiftClusterSecurityGroup{} +// GetAllSESReceiptFilterResources retrieves all ses.ReceiptFilter items from an AWS CloudFormation template +func (t *Template) GetAllSESReceiptFilterResources() map[string]*ses.ReceiptFilter { + results := map[string]*ses.ReceiptFilter{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRedshiftClusterSecurityGroup: + case *ses.ReceiptFilter: results[name] = resource } } return results } -// GetAWSRedshiftClusterSecurityGroupWithName retrieves all AWSRedshiftClusterSecurityGroup items from an AWS CloudFormation template +// GetSESReceiptFilterWithName retrieves all ses.ReceiptFilter items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRedshiftClusterSecurityGroupWithName(name string) (*resources.AWSRedshiftClusterSecurityGroup, error) { +func (t *Template) GetSESReceiptFilterWithName(name string) (*ses.ReceiptFilter, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRedshiftClusterSecurityGroup: + case *ses.ReceiptFilter: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRedshiftClusterSecurityGroup not found", name) + return nil, fmt.Errorf("resource %q of type ses.ReceiptFilter not found", name) } -// GetAllAWSRedshiftClusterSecurityGroupIngressResources retrieves all AWSRedshiftClusterSecurityGroupIngress items from an AWS CloudFormation template -func (t *Template) GetAllAWSRedshiftClusterSecurityGroupIngressResources() map[string]*resources.AWSRedshiftClusterSecurityGroupIngress { - results := map[string]*resources.AWSRedshiftClusterSecurityGroupIngress{} +// GetAllGreengrassSubscriptionDefinitionResources retrieves all greengrass.SubscriptionDefinition items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassSubscriptionDefinitionResources() map[string]*greengrass.SubscriptionDefinition { + results := map[string]*greengrass.SubscriptionDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRedshiftClusterSecurityGroupIngress: + case *greengrass.SubscriptionDefinition: results[name] = resource } } return results } -// GetAWSRedshiftClusterSecurityGroupIngressWithName retrieves all AWSRedshiftClusterSecurityGroupIngress items from an AWS CloudFormation template +// GetGreengrassSubscriptionDefinitionWithName retrieves all greengrass.SubscriptionDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRedshiftClusterSecurityGroupIngressWithName(name string) (*resources.AWSRedshiftClusterSecurityGroupIngress, error) { +func (t *Template) GetGreengrassSubscriptionDefinitionWithName(name string) (*greengrass.SubscriptionDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRedshiftClusterSecurityGroupIngress: + case *greengrass.SubscriptionDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRedshiftClusterSecurityGroupIngress not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.SubscriptionDefinition not found", name) } -// GetAllAWSRedshiftClusterSubnetGroupResources retrieves all AWSRedshiftClusterSubnetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRedshiftClusterSubnetGroupResources() map[string]*resources.AWSRedshiftClusterSubnetGroup { - results := map[string]*resources.AWSRedshiftClusterSubnetGroup{} +// GetAllAthenaNamedQueryResources retrieves all athena.NamedQuery items from an AWS CloudFormation template +func (t *Template) GetAllAthenaNamedQueryResources() map[string]*athena.NamedQuery { + results := map[string]*athena.NamedQuery{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRedshiftClusterSubnetGroup: + case *athena.NamedQuery: results[name] = resource } } return results } -// GetAWSRedshiftClusterSubnetGroupWithName retrieves all AWSRedshiftClusterSubnetGroup items from an AWS CloudFormation template +// GetAthenaNamedQueryWithName retrieves all athena.NamedQuery items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRedshiftClusterSubnetGroupWithName(name string) (*resources.AWSRedshiftClusterSubnetGroup, error) { +func (t *Template) GetAthenaNamedQueryWithName(name string) (*athena.NamedQuery, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRedshiftClusterSubnetGroup: + case *athena.NamedQuery: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRedshiftClusterSubnetGroup not found", name) + return nil, fmt.Errorf("resource %q of type athena.NamedQuery not found", name) } -// GetAllAWSRoboMakerFleetResources retrieves all AWSRoboMakerFleet items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoboMakerFleetResources() map[string]*resources.AWSRoboMakerFleet { - results := map[string]*resources.AWSRoboMakerFleet{} +// GetAllSSMMaintenanceWindowResources retrieves all ssm.MaintenanceWindow items from an AWS CloudFormation template +func (t *Template) GetAllSSMMaintenanceWindowResources() map[string]*ssm.MaintenanceWindow { + results := map[string]*ssm.MaintenanceWindow{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoboMakerFleet: + case *ssm.MaintenanceWindow: results[name] = resource } } return results } -// GetAWSRoboMakerFleetWithName retrieves all AWSRoboMakerFleet items from an AWS CloudFormation template +// GetSSMMaintenanceWindowWithName retrieves all ssm.MaintenanceWindow items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoboMakerFleetWithName(name string) (*resources.AWSRoboMakerFleet, error) { +func (t *Template) GetSSMMaintenanceWindowWithName(name string) (*ssm.MaintenanceWindow, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoboMakerFleet: + case *ssm.MaintenanceWindow: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoboMakerFleet not found", name) + return nil, fmt.Errorf("resource %q of type ssm.MaintenanceWindow not found", name) } -// GetAllAWSRoboMakerRobotResources retrieves all AWSRoboMakerRobot items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoboMakerRobotResources() map[string]*resources.AWSRoboMakerRobot { - results := map[string]*resources.AWSRoboMakerRobot{} +// GetAllEMRInstanceGroupConfigResources retrieves all emr.InstanceGroupConfig items from an AWS CloudFormation template +func (t *Template) GetAllEMRInstanceGroupConfigResources() map[string]*emr.InstanceGroupConfig { + results := map[string]*emr.InstanceGroupConfig{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoboMakerRobot: + case *emr.InstanceGroupConfig: results[name] = resource } } return results } -// GetAWSRoboMakerRobotWithName retrieves all AWSRoboMakerRobot items from an AWS CloudFormation template +// GetEMRInstanceGroupConfigWithName retrieves all emr.InstanceGroupConfig items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoboMakerRobotWithName(name string) (*resources.AWSRoboMakerRobot, error) { +func (t *Template) GetEMRInstanceGroupConfigWithName(name string) (*emr.InstanceGroupConfig, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoboMakerRobot: + case *emr.InstanceGroupConfig: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoboMakerRobot not found", name) + return nil, fmt.Errorf("resource %q of type emr.InstanceGroupConfig not found", name) } -// GetAllAWSRoboMakerRobotApplicationResources retrieves all AWSRoboMakerRobotApplication items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoboMakerRobotApplicationResources() map[string]*resources.AWSRoboMakerRobotApplication { - results := map[string]*resources.AWSRoboMakerRobotApplication{} +// GetAllRoboMakerSimulationApplicationResources retrieves all robomaker.SimulationApplication items from an AWS CloudFormation template +func (t *Template) GetAllRoboMakerSimulationApplicationResources() map[string]*robomaker.SimulationApplication { + results := map[string]*robomaker.SimulationApplication{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoboMakerRobotApplication: + case *robomaker.SimulationApplication: results[name] = resource } } return results } -// GetAWSRoboMakerRobotApplicationWithName retrieves all AWSRoboMakerRobotApplication items from an AWS CloudFormation template +// GetRoboMakerSimulationApplicationWithName retrieves all robomaker.SimulationApplication items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoboMakerRobotApplicationWithName(name string) (*resources.AWSRoboMakerRobotApplication, error) { +func (t *Template) GetRoboMakerSimulationApplicationWithName(name string) (*robomaker.SimulationApplication, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoboMakerRobotApplication: + case *robomaker.SimulationApplication: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoboMakerRobotApplication not found", name) + return nil, fmt.Errorf("resource %q of type robomaker.SimulationApplication not found", name) } -// GetAllAWSRoboMakerRobotApplicationVersionResources retrieves all AWSRoboMakerRobotApplicationVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoboMakerRobotApplicationVersionResources() map[string]*resources.AWSRoboMakerRobotApplicationVersion { - results := map[string]*resources.AWSRoboMakerRobotApplicationVersion{} +// GetAllManagedBlockchainNodeResources retrieves all managedblockchain.Node items from an AWS CloudFormation template +func (t *Template) GetAllManagedBlockchainNodeResources() map[string]*managedblockchain.Node { + results := map[string]*managedblockchain.Node{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoboMakerRobotApplicationVersion: + case *managedblockchain.Node: results[name] = resource } } return results } -// GetAWSRoboMakerRobotApplicationVersionWithName retrieves all AWSRoboMakerRobotApplicationVersion items from an AWS CloudFormation template +// GetManagedBlockchainNodeWithName retrieves all managedblockchain.Node items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoboMakerRobotApplicationVersionWithName(name string) (*resources.AWSRoboMakerRobotApplicationVersion, error) { +func (t *Template) GetManagedBlockchainNodeWithName(name string) (*managedblockchain.Node, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoboMakerRobotApplicationVersion: + case *managedblockchain.Node: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoboMakerRobotApplicationVersion not found", name) + return nil, fmt.Errorf("resource %q of type managedblockchain.Node not found", name) } -// GetAllAWSRoboMakerSimulationApplicationResources retrieves all AWSRoboMakerSimulationApplication items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoboMakerSimulationApplicationResources() map[string]*resources.AWSRoboMakerSimulationApplication { - results := map[string]*resources.AWSRoboMakerSimulationApplication{} +// GetAllIAMInstanceProfileResources retrieves all iam.InstanceProfile items from an AWS CloudFormation template +func (t *Template) GetAllIAMInstanceProfileResources() map[string]*iam.InstanceProfile { + results := map[string]*iam.InstanceProfile{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoboMakerSimulationApplication: + case *iam.InstanceProfile: results[name] = resource } } return results } -// GetAWSRoboMakerSimulationApplicationWithName retrieves all AWSRoboMakerSimulationApplication items from an AWS CloudFormation template +// GetIAMInstanceProfileWithName retrieves all iam.InstanceProfile items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoboMakerSimulationApplicationWithName(name string) (*resources.AWSRoboMakerSimulationApplication, error) { +func (t *Template) GetIAMInstanceProfileWithName(name string) (*iam.InstanceProfile, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoboMakerSimulationApplication: + case *iam.InstanceProfile: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoboMakerSimulationApplication not found", name) + return nil, fmt.Errorf("resource %q of type iam.InstanceProfile not found", name) } -// GetAllAWSRoboMakerSimulationApplicationVersionResources retrieves all AWSRoboMakerSimulationApplicationVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoboMakerSimulationApplicationVersionResources() map[string]*resources.AWSRoboMakerSimulationApplicationVersion { - results := map[string]*resources.AWSRoboMakerSimulationApplicationVersion{} +// GetAllKinesisAnalyticsV2ApplicationReferenceDataSourceResources retrieves all kinesisanalyticsv2.ApplicationReferenceDataSource items from an AWS CloudFormation template +func (t *Template) GetAllKinesisAnalyticsV2ApplicationReferenceDataSourceResources() map[string]*kinesisanalyticsv2.ApplicationReferenceDataSource { + results := map[string]*kinesisanalyticsv2.ApplicationReferenceDataSource{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoboMakerSimulationApplicationVersion: + case *kinesisanalyticsv2.ApplicationReferenceDataSource: results[name] = resource } } return results } -// GetAWSRoboMakerSimulationApplicationVersionWithName retrieves all AWSRoboMakerSimulationApplicationVersion items from an AWS CloudFormation template +// GetKinesisAnalyticsV2ApplicationReferenceDataSourceWithName retrieves all kinesisanalyticsv2.ApplicationReferenceDataSource items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoboMakerSimulationApplicationVersionWithName(name string) (*resources.AWSRoboMakerSimulationApplicationVersion, error) { +func (t *Template) GetKinesisAnalyticsV2ApplicationReferenceDataSourceWithName(name string) (*kinesisanalyticsv2.ApplicationReferenceDataSource, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoboMakerSimulationApplicationVersion: + case *kinesisanalyticsv2.ApplicationReferenceDataSource: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoboMakerSimulationApplicationVersion not found", name) + return nil, fmt.Errorf("resource %q of type kinesisanalyticsv2.ApplicationReferenceDataSource not found", name) } -// GetAllAWSRoute53HealthCheckResources retrieves all AWSRoute53HealthCheck items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoute53HealthCheckResources() map[string]*resources.AWSRoute53HealthCheck { - results := map[string]*resources.AWSRoute53HealthCheck{} +// GetAllRDSDBInstanceResources retrieves all rds.DBInstance items from an AWS CloudFormation template +func (t *Template) GetAllRDSDBInstanceResources() map[string]*rds.DBInstance { + results := map[string]*rds.DBInstance{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoute53HealthCheck: + case *rds.DBInstance: results[name] = resource } } return results } -// GetAWSRoute53HealthCheckWithName retrieves all AWSRoute53HealthCheck items from an AWS CloudFormation template +// GetRDSDBInstanceWithName retrieves all rds.DBInstance items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoute53HealthCheckWithName(name string) (*resources.AWSRoute53HealthCheck, error) { +func (t *Template) GetRDSDBInstanceWithName(name string) (*rds.DBInstance, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoute53HealthCheck: + case *rds.DBInstance: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoute53HealthCheck not found", name) + return nil, fmt.Errorf("resource %q of type rds.DBInstance not found", name) } -// GetAllAWSRoute53HostedZoneResources retrieves all AWSRoute53HostedZone items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoute53HostedZoneResources() map[string]*resources.AWSRoute53HostedZone { - results := map[string]*resources.AWSRoute53HostedZone{} +// GetAllRDSDBClusterParameterGroupResources retrieves all rds.DBClusterParameterGroup items from an AWS CloudFormation template +func (t *Template) GetAllRDSDBClusterParameterGroupResources() map[string]*rds.DBClusterParameterGroup { + results := map[string]*rds.DBClusterParameterGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoute53HostedZone: + case *rds.DBClusterParameterGroup: results[name] = resource } } return results } -// GetAWSRoute53HostedZoneWithName retrieves all AWSRoute53HostedZone items from an AWS CloudFormation template +// GetRDSDBClusterParameterGroupWithName retrieves all rds.DBClusterParameterGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoute53HostedZoneWithName(name string) (*resources.AWSRoute53HostedZone, error) { +func (t *Template) GetRDSDBClusterParameterGroupWithName(name string) (*rds.DBClusterParameterGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoute53HostedZone: + case *rds.DBClusterParameterGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoute53HostedZone not found", name) + return nil, fmt.Errorf("resource %q of type rds.DBClusterParameterGroup not found", name) } -// GetAllAWSRoute53RecordSetResources retrieves all AWSRoute53RecordSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoute53RecordSetResources() map[string]*resources.AWSRoute53RecordSet { - results := map[string]*resources.AWSRoute53RecordSet{} +// GetAllGlueMLTransformResources retrieves all glue.MLTransform items from an AWS CloudFormation template +func (t *Template) GetAllGlueMLTransformResources() map[string]*glue.MLTransform { + results := map[string]*glue.MLTransform{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoute53RecordSet: + case *glue.MLTransform: results[name] = resource } } return results } -// GetAWSRoute53RecordSetWithName retrieves all AWSRoute53RecordSet items from an AWS CloudFormation template +// GetGlueMLTransformWithName retrieves all glue.MLTransform items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoute53RecordSetWithName(name string) (*resources.AWSRoute53RecordSet, error) { +func (t *Template) GetGlueMLTransformWithName(name string) (*glue.MLTransform, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoute53RecordSet: + case *glue.MLTransform: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoute53RecordSet not found", name) + return nil, fmt.Errorf("resource %q of type glue.MLTransform not found", name) } -// GetAllAWSRoute53RecordSetGroupResources retrieves all AWSRoute53RecordSetGroup items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoute53RecordSetGroupResources() map[string]*resources.AWSRoute53RecordSetGroup { - results := map[string]*resources.AWSRoute53RecordSetGroup{} +// GetAllGlueTableResources retrieves all glue.Table items from an AWS CloudFormation template +func (t *Template) GetAllGlueTableResources() map[string]*glue.Table { + results := map[string]*glue.Table{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoute53RecordSetGroup: + case *glue.Table: results[name] = resource } } return results } -// GetAWSRoute53RecordSetGroupWithName retrieves all AWSRoute53RecordSetGroup items from an AWS CloudFormation template +// GetGlueTableWithName retrieves all glue.Table items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoute53RecordSetGroupWithName(name string) (*resources.AWSRoute53RecordSetGroup, error) { +func (t *Template) GetGlueTableWithName(name string) (*glue.Table, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoute53RecordSetGroup: + case *glue.Table: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoute53RecordSetGroup not found", name) + return nil, fmt.Errorf("resource %q of type glue.Table not found", name) } -// GetAllAWSRoute53ResolverResolverEndpointResources retrieves all AWSRoute53ResolverResolverEndpoint items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoute53ResolverResolverEndpointResources() map[string]*resources.AWSRoute53ResolverResolverEndpoint { - results := map[string]*resources.AWSRoute53ResolverResolverEndpoint{} +// GetAllServiceCatalogLaunchRoleConstraintResources retrieves all servicecatalog.LaunchRoleConstraint items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogLaunchRoleConstraintResources() map[string]*servicecatalog.LaunchRoleConstraint { + results := map[string]*servicecatalog.LaunchRoleConstraint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoute53ResolverResolverEndpoint: + case *servicecatalog.LaunchRoleConstraint: results[name] = resource } } return results } -// GetAWSRoute53ResolverResolverEndpointWithName retrieves all AWSRoute53ResolverResolverEndpoint items from an AWS CloudFormation template +// GetServiceCatalogLaunchRoleConstraintWithName retrieves all servicecatalog.LaunchRoleConstraint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoute53ResolverResolverEndpointWithName(name string) (*resources.AWSRoute53ResolverResolverEndpoint, error) { +func (t *Template) GetServiceCatalogLaunchRoleConstraintWithName(name string) (*servicecatalog.LaunchRoleConstraint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoute53ResolverResolverEndpoint: + case *servicecatalog.LaunchRoleConstraint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoute53ResolverResolverEndpoint not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.LaunchRoleConstraint not found", name) } -// GetAllAWSRoute53ResolverResolverRuleResources retrieves all AWSRoute53ResolverResolverRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoute53ResolverResolverRuleResources() map[string]*resources.AWSRoute53ResolverResolverRule { - results := map[string]*resources.AWSRoute53ResolverResolverRule{} +// GetAllLogsLogStreamResources retrieves all logs.LogStream items from an AWS CloudFormation template +func (t *Template) GetAllLogsLogStreamResources() map[string]*logs.LogStream { + results := map[string]*logs.LogStream{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoute53ResolverResolverRule: + case *logs.LogStream: results[name] = resource } } return results } -// GetAWSRoute53ResolverResolverRuleWithName retrieves all AWSRoute53ResolverResolverRule items from an AWS CloudFormation template +// GetLogsLogStreamWithName retrieves all logs.LogStream items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoute53ResolverResolverRuleWithName(name string) (*resources.AWSRoute53ResolverResolverRule, error) { +func (t *Template) GetLogsLogStreamWithName(name string) (*logs.LogStream, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoute53ResolverResolverRule: + case *logs.LogStream: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoute53ResolverResolverRule not found", name) + return nil, fmt.Errorf("resource %q of type logs.LogStream not found", name) } -// GetAllAWSRoute53ResolverResolverRuleAssociationResources retrieves all AWSRoute53ResolverResolverRuleAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSRoute53ResolverResolverRuleAssociationResources() map[string]*resources.AWSRoute53ResolverResolverRuleAssociation { - results := map[string]*resources.AWSRoute53ResolverResolverRuleAssociation{} +// GetAllRedshiftClusterParameterGroupResources retrieves all redshift.ClusterParameterGroup items from an AWS CloudFormation template +func (t *Template) GetAllRedshiftClusterParameterGroupResources() map[string]*redshift.ClusterParameterGroup { + results := map[string]*redshift.ClusterParameterGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSRoute53ResolverResolverRuleAssociation: + case *redshift.ClusterParameterGroup: results[name] = resource } } return results } -// GetAWSRoute53ResolverResolverRuleAssociationWithName retrieves all AWSRoute53ResolverResolverRuleAssociation items from an AWS CloudFormation template +// GetRedshiftClusterParameterGroupWithName retrieves all redshift.ClusterParameterGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSRoute53ResolverResolverRuleAssociationWithName(name string) (*resources.AWSRoute53ResolverResolverRuleAssociation, error) { +func (t *Template) GetRedshiftClusterParameterGroupWithName(name string) (*redshift.ClusterParameterGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSRoute53ResolverResolverRuleAssociation: + case *redshift.ClusterParameterGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSRoute53ResolverResolverRuleAssociation not found", name) + return nil, fmt.Errorf("resource %q of type redshift.ClusterParameterGroup not found", name) } -// GetAllAWSS3BucketResources retrieves all AWSS3Bucket items from an AWS CloudFormation template -func (t *Template) GetAllAWSS3BucketResources() map[string]*resources.AWSS3Bucket { - results := map[string]*resources.AWSS3Bucket{} +// GetAllDirectoryServiceSimpleADResources retrieves all directoryservice.SimpleAD items from an AWS CloudFormation template +func (t *Template) GetAllDirectoryServiceSimpleADResources() map[string]*directoryservice.SimpleAD { + results := map[string]*directoryservice.SimpleAD{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSS3Bucket: + case *directoryservice.SimpleAD: results[name] = resource } } return results } -// GetAWSS3BucketWithName retrieves all AWSS3Bucket items from an AWS CloudFormation template +// GetDirectoryServiceSimpleADWithName retrieves all directoryservice.SimpleAD items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSS3BucketWithName(name string) (*resources.AWSS3Bucket, error) { +func (t *Template) GetDirectoryServiceSimpleADWithName(name string) (*directoryservice.SimpleAD, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSS3Bucket: + case *directoryservice.SimpleAD: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSS3Bucket not found", name) + return nil, fmt.Errorf("resource %q of type directoryservice.SimpleAD not found", name) } -// GetAllAWSS3BucketPolicyResources retrieves all AWSS3BucketPolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSS3BucketPolicyResources() map[string]*resources.AWSS3BucketPolicy { - results := map[string]*resources.AWSS3BucketPolicy{} +// GetAllRoute53RecordSetResources retrieves all route53.RecordSet items from an AWS CloudFormation template +func (t *Template) GetAllRoute53RecordSetResources() map[string]*route53.RecordSet { + results := map[string]*route53.RecordSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSS3BucketPolicy: + case *route53.RecordSet: results[name] = resource } } return results } -// GetAWSS3BucketPolicyWithName retrieves all AWSS3BucketPolicy items from an AWS CloudFormation template +// GetRoute53RecordSetWithName retrieves all route53.RecordSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSS3BucketPolicyWithName(name string) (*resources.AWSS3BucketPolicy, error) { +func (t *Template) GetRoute53RecordSetWithName(name string) (*route53.RecordSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSS3BucketPolicy: + case *route53.RecordSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSS3BucketPolicy not found", name) + return nil, fmt.Errorf("resource %q of type route53.RecordSet not found", name) } -// GetAllAWSSDBDomainResources retrieves all AWSSDBDomain items from an AWS CloudFormation template -func (t *Template) GetAllAWSSDBDomainResources() map[string]*resources.AWSSDBDomain { - results := map[string]*resources.AWSSDBDomain{} +// GetAllBudgetsBudgetResources retrieves all budgets.Budget items from an AWS CloudFormation template +func (t *Template) GetAllBudgetsBudgetResources() map[string]*budgets.Budget { + results := map[string]*budgets.Budget{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSDBDomain: + case *budgets.Budget: results[name] = resource } } return results } -// GetAWSSDBDomainWithName retrieves all AWSSDBDomain items from an AWS CloudFormation template +// GetBudgetsBudgetWithName retrieves all budgets.Budget items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSDBDomainWithName(name string) (*resources.AWSSDBDomain, error) { +func (t *Template) GetBudgetsBudgetWithName(name string) (*budgets.Budget, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSDBDomain: + case *budgets.Budget: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSDBDomain not found", name) + return nil, fmt.Errorf("resource %q of type budgets.Budget not found", name) } -// GetAllAWSSESConfigurationSetResources retrieves all AWSSESConfigurationSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSSESConfigurationSetResources() map[string]*resources.AWSSESConfigurationSet { - results := map[string]*resources.AWSSESConfigurationSet{} +// GetAllEC2VPCResources retrieves all ec2.VPC items from an AWS CloudFormation template +func (t *Template) GetAllEC2VPCResources() map[string]*ec2.VPC { + results := map[string]*ec2.VPC{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSESConfigurationSet: + case *ec2.VPC: results[name] = resource } } return results } -// GetAWSSESConfigurationSetWithName retrieves all AWSSESConfigurationSet items from an AWS CloudFormation template +// GetEC2VPCWithName retrieves all ec2.VPC items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSESConfigurationSetWithName(name string) (*resources.AWSSESConfigurationSet, error) { +func (t *Template) GetEC2VPCWithName(name string) (*ec2.VPC, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSESConfigurationSet: + case *ec2.VPC: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSESConfigurationSet not found", name) + return nil, fmt.Errorf("resource %q of type ec2.VPC not found", name) } -// GetAllAWSSESConfigurationSetEventDestinationResources retrieves all AWSSESConfigurationSetEventDestination items from an AWS CloudFormation template -func (t *Template) GetAllAWSSESConfigurationSetEventDestinationResources() map[string]*resources.AWSSESConfigurationSetEventDestination { - results := map[string]*resources.AWSSESConfigurationSetEventDestination{} +// GetAllRoute53HostedZoneResources retrieves all route53.HostedZone items from an AWS CloudFormation template +func (t *Template) GetAllRoute53HostedZoneResources() map[string]*route53.HostedZone { + results := map[string]*route53.HostedZone{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSESConfigurationSetEventDestination: + case *route53.HostedZone: results[name] = resource } } return results } -// GetAWSSESConfigurationSetEventDestinationWithName retrieves all AWSSESConfigurationSetEventDestination items from an AWS CloudFormation template +// GetRoute53HostedZoneWithName retrieves all route53.HostedZone items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSESConfigurationSetEventDestinationWithName(name string) (*resources.AWSSESConfigurationSetEventDestination, error) { +func (t *Template) GetRoute53HostedZoneWithName(name string) (*route53.HostedZone, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSESConfigurationSetEventDestination: + case *route53.HostedZone: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSESConfigurationSetEventDestination not found", name) + return nil, fmt.Errorf("resource %q of type route53.HostedZone not found", name) } -// GetAllAWSSESReceiptFilterResources retrieves all AWSSESReceiptFilter items from an AWS CloudFormation template -func (t *Template) GetAllAWSSESReceiptFilterResources() map[string]*resources.AWSSESReceiptFilter { - results := map[string]*resources.AWSSESReceiptFilter{} +// GetAllGlueDatabaseResources retrieves all glue.Database items from an AWS CloudFormation template +func (t *Template) GetAllGlueDatabaseResources() map[string]*glue.Database { + results := map[string]*glue.Database{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSESReceiptFilter: + case *glue.Database: results[name] = resource } } return results } -// GetAWSSESReceiptFilterWithName retrieves all AWSSESReceiptFilter items from an AWS CloudFormation template +// GetGlueDatabaseWithName retrieves all glue.Database items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSESReceiptFilterWithName(name string) (*resources.AWSSESReceiptFilter, error) { +func (t *Template) GetGlueDatabaseWithName(name string) (*glue.Database, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSESReceiptFilter: + case *glue.Database: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSESReceiptFilter not found", name) + return nil, fmt.Errorf("resource %q of type glue.Database not found", name) } -// GetAllAWSSESReceiptRuleResources retrieves all AWSSESReceiptRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSSESReceiptRuleResources() map[string]*resources.AWSSESReceiptRule { - results := map[string]*resources.AWSSESReceiptRule{} +// GetAllOpsWorksUserProfileResources retrieves all opsworks.UserProfile items from an AWS CloudFormation template +func (t *Template) GetAllOpsWorksUserProfileResources() map[string]*opsworks.UserProfile { + results := map[string]*opsworks.UserProfile{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSESReceiptRule: + case *opsworks.UserProfile: results[name] = resource } } return results } -// GetAWSSESReceiptRuleWithName retrieves all AWSSESReceiptRule items from an AWS CloudFormation template +// GetOpsWorksUserProfileWithName retrieves all opsworks.UserProfile items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSESReceiptRuleWithName(name string) (*resources.AWSSESReceiptRule, error) { +func (t *Template) GetOpsWorksUserProfileWithName(name string) (*opsworks.UserProfile, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSESReceiptRule: + case *opsworks.UserProfile: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSESReceiptRule not found", name) + return nil, fmt.Errorf("resource %q of type opsworks.UserProfile not found", name) } -// GetAllAWSSESReceiptRuleSetResources retrieves all AWSSESReceiptRuleSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSSESReceiptRuleSetResources() map[string]*resources.AWSSESReceiptRuleSet { - results := map[string]*resources.AWSSESReceiptRuleSet{} +// GetAllEC2LaunchTemplateResources retrieves all ec2.LaunchTemplate items from an AWS CloudFormation template +func (t *Template) GetAllEC2LaunchTemplateResources() map[string]*ec2.LaunchTemplate { + results := map[string]*ec2.LaunchTemplate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSESReceiptRuleSet: + case *ec2.LaunchTemplate: results[name] = resource } } return results } -// GetAWSSESReceiptRuleSetWithName retrieves all AWSSESReceiptRuleSet items from an AWS CloudFormation template +// GetEC2LaunchTemplateWithName retrieves all ec2.LaunchTemplate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSESReceiptRuleSetWithName(name string) (*resources.AWSSESReceiptRuleSet, error) { +func (t *Template) GetEC2LaunchTemplateWithName(name string) (*ec2.LaunchTemplate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSESReceiptRuleSet: + case *ec2.LaunchTemplate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSESReceiptRuleSet not found", name) + return nil, fmt.Errorf("resource %q of type ec2.LaunchTemplate not found", name) } -// GetAllAWSSESTemplateResources retrieves all AWSSESTemplate items from an AWS CloudFormation template -func (t *Template) GetAllAWSSESTemplateResources() map[string]*resources.AWSSESTemplate { - results := map[string]*resources.AWSSESTemplate{} +// GetAllEC2SubnetCidrBlockResources retrieves all ec2.SubnetCidrBlock items from an AWS CloudFormation template +func (t *Template) GetAllEC2SubnetCidrBlockResources() map[string]*ec2.SubnetCidrBlock { + results := map[string]*ec2.SubnetCidrBlock{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSESTemplate: + case *ec2.SubnetCidrBlock: results[name] = resource } } return results } -// GetAWSSESTemplateWithName retrieves all AWSSESTemplate items from an AWS CloudFormation template +// GetEC2SubnetCidrBlockWithName retrieves all ec2.SubnetCidrBlock items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSESTemplateWithName(name string) (*resources.AWSSESTemplate, error) { +func (t *Template) GetEC2SubnetCidrBlockWithName(name string) (*ec2.SubnetCidrBlock, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSESTemplate: + case *ec2.SubnetCidrBlock: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSESTemplate not found", name) + return nil, fmt.Errorf("resource %q of type ec2.SubnetCidrBlock not found", name) } -// GetAllAWSSNSSubscriptionResources retrieves all AWSSNSSubscription items from an AWS CloudFormation template -func (t *Template) GetAllAWSSNSSubscriptionResources() map[string]*resources.AWSSNSSubscription { - results := map[string]*resources.AWSSNSSubscription{} +// GetAllAppStreamFleetResources retrieves all appstream.Fleet items from an AWS CloudFormation template +func (t *Template) GetAllAppStreamFleetResources() map[string]*appstream.Fleet { + results := map[string]*appstream.Fleet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSNSSubscription: + case *appstream.Fleet: results[name] = resource } } return results } -// GetAWSSNSSubscriptionWithName retrieves all AWSSNSSubscription items from an AWS CloudFormation template +// GetAppStreamFleetWithName retrieves all appstream.Fleet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSNSSubscriptionWithName(name string) (*resources.AWSSNSSubscription, error) { +func (t *Template) GetAppStreamFleetWithName(name string) (*appstream.Fleet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSNSSubscription: + case *appstream.Fleet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSNSSubscription not found", name) + return nil, fmt.Errorf("resource %q of type appstream.Fleet not found", name) } -// GetAllAWSSNSTopicResources retrieves all AWSSNSTopic items from an AWS CloudFormation template -func (t *Template) GetAllAWSSNSTopicResources() map[string]*resources.AWSSNSTopic { - results := map[string]*resources.AWSSNSTopic{} +// GetAllWAFRegionalByteMatchSetResources retrieves all wafregional.ByteMatchSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalByteMatchSetResources() map[string]*wafregional.ByteMatchSet { + results := map[string]*wafregional.ByteMatchSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSNSTopic: + case *wafregional.ByteMatchSet: results[name] = resource } } return results } -// GetAWSSNSTopicWithName retrieves all AWSSNSTopic items from an AWS CloudFormation template +// GetWAFRegionalByteMatchSetWithName retrieves all wafregional.ByteMatchSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSNSTopicWithName(name string) (*resources.AWSSNSTopic, error) { +func (t *Template) GetWAFRegionalByteMatchSetWithName(name string) (*wafregional.ByteMatchSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSNSTopic: + case *wafregional.ByteMatchSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSNSTopic not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.ByteMatchSet not found", name) } -// GetAllAWSSNSTopicPolicyResources retrieves all AWSSNSTopicPolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSSNSTopicPolicyResources() map[string]*resources.AWSSNSTopicPolicy { - results := map[string]*resources.AWSSNSTopicPolicy{} +// GetAllPinpointSMSChannelResources retrieves all pinpoint.SMSChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointSMSChannelResources() map[string]*pinpoint.SMSChannel { + results := map[string]*pinpoint.SMSChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSNSTopicPolicy: + case *pinpoint.SMSChannel: results[name] = resource } } return results } -// GetAWSSNSTopicPolicyWithName retrieves all AWSSNSTopicPolicy items from an AWS CloudFormation template +// GetPinpointSMSChannelWithName retrieves all pinpoint.SMSChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSNSTopicPolicyWithName(name string) (*resources.AWSSNSTopicPolicy, error) { +func (t *Template) GetPinpointSMSChannelWithName(name string) (*pinpoint.SMSChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSNSTopicPolicy: + case *pinpoint.SMSChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSNSTopicPolicy not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.SMSChannel not found", name) } -// GetAllAWSSQSQueueResources retrieves all AWSSQSQueue items from an AWS CloudFormation template -func (t *Template) GetAllAWSSQSQueueResources() map[string]*resources.AWSSQSQueue { - results := map[string]*resources.AWSSQSQueue{} +// GetAllSNSTopicPolicyResources retrieves all sns.TopicPolicy items from an AWS CloudFormation template +func (t *Template) GetAllSNSTopicPolicyResources() map[string]*sns.TopicPolicy { + results := map[string]*sns.TopicPolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSQSQueue: + case *sns.TopicPolicy: results[name] = resource } } return results } -// GetAWSSQSQueueWithName retrieves all AWSSQSQueue items from an AWS CloudFormation template +// GetSNSTopicPolicyWithName retrieves all sns.TopicPolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSQSQueueWithName(name string) (*resources.AWSSQSQueue, error) { +func (t *Template) GetSNSTopicPolicyWithName(name string) (*sns.TopicPolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSQSQueue: + case *sns.TopicPolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSQSQueue not found", name) + return nil, fmt.Errorf("resource %q of type sns.TopicPolicy not found", name) } -// GetAllAWSSQSQueuePolicyResources retrieves all AWSSQSQueuePolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSSQSQueuePolicyResources() map[string]*resources.AWSSQSQueuePolicy { - results := map[string]*resources.AWSSQSQueuePolicy{} +// GetAllSageMakerModelResources retrieves all sagemaker.Model items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerModelResources() map[string]*sagemaker.Model { + results := map[string]*sagemaker.Model{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSQSQueuePolicy: + case *sagemaker.Model: results[name] = resource } } return results } -// GetAWSSQSQueuePolicyWithName retrieves all AWSSQSQueuePolicy items from an AWS CloudFormation template +// GetSageMakerModelWithName retrieves all sagemaker.Model items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSQSQueuePolicyWithName(name string) (*resources.AWSSQSQueuePolicy, error) { +func (t *Template) GetSageMakerModelWithName(name string) (*sagemaker.Model, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSQSQueuePolicy: + case *sagemaker.Model: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSQSQueuePolicy not found", name) + return nil, fmt.Errorf("resource %q of type sagemaker.Model not found", name) } -// GetAllAWSSSMAssociationResources retrieves all AWSSSMAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSSSMAssociationResources() map[string]*resources.AWSSSMAssociation { - results := map[string]*resources.AWSSSMAssociation{} +// GetAllCognitoUserPoolResourceServerResources retrieves all cognito.UserPoolResourceServer items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolResourceServerResources() map[string]*cognito.UserPoolResourceServer { + results := map[string]*cognito.UserPoolResourceServer{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSSMAssociation: + case *cognito.UserPoolResourceServer: results[name] = resource } } return results } -// GetAWSSSMAssociationWithName retrieves all AWSSSMAssociation items from an AWS CloudFormation template +// GetCognitoUserPoolResourceServerWithName retrieves all cognito.UserPoolResourceServer items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSSMAssociationWithName(name string) (*resources.AWSSSMAssociation, error) { +func (t *Template) GetCognitoUserPoolResourceServerWithName(name string) (*cognito.UserPoolResourceServer, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSSMAssociation: + case *cognito.UserPoolResourceServer: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSSMAssociation not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolResourceServer not found", name) } -// GetAllAWSSSMDocumentResources retrieves all AWSSSMDocument items from an AWS CloudFormation template -func (t *Template) GetAllAWSSSMDocumentResources() map[string]*resources.AWSSSMDocument { - results := map[string]*resources.AWSSSMDocument{} +// GetAllGlueConnectionResources retrieves all glue.Connection items from an AWS CloudFormation template +func (t *Template) GetAllGlueConnectionResources() map[string]*glue.Connection { + results := map[string]*glue.Connection{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSSMDocument: + case *glue.Connection: results[name] = resource } } return results } -// GetAWSSSMDocumentWithName retrieves all AWSSSMDocument items from an AWS CloudFormation template +// GetGlueConnectionWithName retrieves all glue.Connection items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSSMDocumentWithName(name string) (*resources.AWSSSMDocument, error) { +func (t *Template) GetGlueConnectionWithName(name string) (*glue.Connection, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSSMDocument: + case *glue.Connection: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSSMDocument not found", name) + return nil, fmt.Errorf("resource %q of type glue.Connection not found", name) } -// GetAllAWSSSMMaintenanceWindowResources retrieves all AWSSSMMaintenanceWindow items from an AWS CloudFormation template -func (t *Template) GetAllAWSSSMMaintenanceWindowResources() map[string]*resources.AWSSSMMaintenanceWindow { - results := map[string]*resources.AWSSSMMaintenanceWindow{} +// GetAllIoTThingPrincipalAttachmentResources retrieves all iot.ThingPrincipalAttachment items from an AWS CloudFormation template +func (t *Template) GetAllIoTThingPrincipalAttachmentResources() map[string]*iot.ThingPrincipalAttachment { + results := map[string]*iot.ThingPrincipalAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSSMMaintenanceWindow: + case *iot.ThingPrincipalAttachment: results[name] = resource } } return results } -// GetAWSSSMMaintenanceWindowWithName retrieves all AWSSSMMaintenanceWindow items from an AWS CloudFormation template +// GetIoTThingPrincipalAttachmentWithName retrieves all iot.ThingPrincipalAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSSMMaintenanceWindowWithName(name string) (*resources.AWSSSMMaintenanceWindow, error) { +func (t *Template) GetIoTThingPrincipalAttachmentWithName(name string) (*iot.ThingPrincipalAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSSMMaintenanceWindow: + case *iot.ThingPrincipalAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSSMMaintenanceWindow not found", name) + return nil, fmt.Errorf("resource %q of type iot.ThingPrincipalAttachment not found", name) } -// GetAllAWSSSMMaintenanceWindowTargetResources retrieves all AWSSSMMaintenanceWindowTarget items from an AWS CloudFormation template -func (t *Template) GetAllAWSSSMMaintenanceWindowTargetResources() map[string]*resources.AWSSSMMaintenanceWindowTarget { - results := map[string]*resources.AWSSSMMaintenanceWindowTarget{} +// GetAllMediaLiveChannelResources retrieves all medialive.Channel items from an AWS CloudFormation template +func (t *Template) GetAllMediaLiveChannelResources() map[string]*medialive.Channel { + results := map[string]*medialive.Channel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSSMMaintenanceWindowTarget: + case *medialive.Channel: results[name] = resource } } return results } -// GetAWSSSMMaintenanceWindowTargetWithName retrieves all AWSSSMMaintenanceWindowTarget items from an AWS CloudFormation template +// GetMediaLiveChannelWithName retrieves all medialive.Channel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSSMMaintenanceWindowTargetWithName(name string) (*resources.AWSSSMMaintenanceWindowTarget, error) { +func (t *Template) GetMediaLiveChannelWithName(name string) (*medialive.Channel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSSMMaintenanceWindowTarget: + case *medialive.Channel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSSMMaintenanceWindowTarget not found", name) + return nil, fmt.Errorf("resource %q of type medialive.Channel not found", name) } -// GetAllAWSSSMMaintenanceWindowTaskResources retrieves all AWSSSMMaintenanceWindowTask items from an AWS CloudFormation template -func (t *Template) GetAllAWSSSMMaintenanceWindowTaskResources() map[string]*resources.AWSSSMMaintenanceWindowTask { - results := map[string]*resources.AWSSSMMaintenanceWindowTask{} +// GetAllAmplifyBranchResources retrieves all amplify.Branch items from an AWS CloudFormation template +func (t *Template) GetAllAmplifyBranchResources() map[string]*amplify.Branch { + results := map[string]*amplify.Branch{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSSMMaintenanceWindowTask: + case *amplify.Branch: results[name] = resource } } return results } -// GetAWSSSMMaintenanceWindowTaskWithName retrieves all AWSSSMMaintenanceWindowTask items from an AWS CloudFormation template +// GetAmplifyBranchWithName retrieves all amplify.Branch items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSSMMaintenanceWindowTaskWithName(name string) (*resources.AWSSSMMaintenanceWindowTask, error) { +func (t *Template) GetAmplifyBranchWithName(name string) (*amplify.Branch, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSSMMaintenanceWindowTask: + case *amplify.Branch: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSSMMaintenanceWindowTask not found", name) + return nil, fmt.Errorf("resource %q of type amplify.Branch not found", name) } -// GetAllAWSSSMParameterResources retrieves all AWSSSMParameter items from an AWS CloudFormation template -func (t *Template) GetAllAWSSSMParameterResources() map[string]*resources.AWSSSMParameter { - results := map[string]*resources.AWSSSMParameter{} +// GetAllWAFSizeConstraintSetResources retrieves all waf.SizeConstraintSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFSizeConstraintSetResources() map[string]*waf.SizeConstraintSet { + results := map[string]*waf.SizeConstraintSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSSMParameter: + case *waf.SizeConstraintSet: results[name] = resource } } return results } -// GetAWSSSMParameterWithName retrieves all AWSSSMParameter items from an AWS CloudFormation template +// GetWAFSizeConstraintSetWithName retrieves all waf.SizeConstraintSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSSMParameterWithName(name string) (*resources.AWSSSMParameter, error) { +func (t *Template) GetWAFSizeConstraintSetWithName(name string) (*waf.SizeConstraintSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSSMParameter: + case *waf.SizeConstraintSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSSMParameter not found", name) + return nil, fmt.Errorf("resource %q of type waf.SizeConstraintSet not found", name) } -// GetAllAWSSSMPatchBaselineResources retrieves all AWSSSMPatchBaseline items from an AWS CloudFormation template -func (t *Template) GetAllAWSSSMPatchBaselineResources() map[string]*resources.AWSSSMPatchBaseline { - results := map[string]*resources.AWSSSMPatchBaseline{} +// GetAllSageMakerNotebookInstanceResources retrieves all sagemaker.NotebookInstance items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerNotebookInstanceResources() map[string]*sagemaker.NotebookInstance { + results := map[string]*sagemaker.NotebookInstance{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSSMPatchBaseline: + case *sagemaker.NotebookInstance: results[name] = resource } } return results } -// GetAWSSSMPatchBaselineWithName retrieves all AWSSSMPatchBaseline items from an AWS CloudFormation template +// GetSageMakerNotebookInstanceWithName retrieves all sagemaker.NotebookInstance items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSSMPatchBaselineWithName(name string) (*resources.AWSSSMPatchBaseline, error) { +func (t *Template) GetSageMakerNotebookInstanceWithName(name string) (*sagemaker.NotebookInstance, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSSMPatchBaseline: + case *sagemaker.NotebookInstance: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSSMPatchBaseline not found", name) + return nil, fmt.Errorf("resource %q of type sagemaker.NotebookInstance not found", name) } -// GetAllAWSSSMResourceDataSyncResources retrieves all AWSSSMResourceDataSync items from an AWS CloudFormation template -func (t *Template) GetAllAWSSSMResourceDataSyncResources() map[string]*resources.AWSSSMResourceDataSync { - results := map[string]*resources.AWSSSMResourceDataSync{} +// GetAllECRRepositoryResources retrieves all ecr.Repository items from an AWS CloudFormation template +func (t *Template) GetAllECRRepositoryResources() map[string]*ecr.Repository { + results := map[string]*ecr.Repository{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSSMResourceDataSync: + case *ecr.Repository: results[name] = resource } } return results } -// GetAWSSSMResourceDataSyncWithName retrieves all AWSSSMResourceDataSync items from an AWS CloudFormation template +// GetECRRepositoryWithName retrieves all ecr.Repository items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSSMResourceDataSyncWithName(name string) (*resources.AWSSSMResourceDataSync, error) { +func (t *Template) GetECRRepositoryWithName(name string) (*ecr.Repository, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSSMResourceDataSync: + case *ecr.Repository: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSSMResourceDataSync not found", name) + return nil, fmt.Errorf("resource %q of type ecr.Repository not found", name) } -// GetAllAWSSageMakerCodeRepositoryResources retrieves all AWSSageMakerCodeRepository items from an AWS CloudFormation template -func (t *Template) GetAllAWSSageMakerCodeRepositoryResources() map[string]*resources.AWSSageMakerCodeRepository { - results := map[string]*resources.AWSSageMakerCodeRepository{} +// GetAllPinpointAPNSVoipSandboxChannelResources retrieves all pinpoint.APNSVoipSandboxChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointAPNSVoipSandboxChannelResources() map[string]*pinpoint.APNSVoipSandboxChannel { + results := map[string]*pinpoint.APNSVoipSandboxChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSageMakerCodeRepository: + case *pinpoint.APNSVoipSandboxChannel: results[name] = resource } } return results } -// GetAWSSageMakerCodeRepositoryWithName retrieves all AWSSageMakerCodeRepository items from an AWS CloudFormation template +// GetPinpointAPNSVoipSandboxChannelWithName retrieves all pinpoint.APNSVoipSandboxChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSageMakerCodeRepositoryWithName(name string) (*resources.AWSSageMakerCodeRepository, error) { +func (t *Template) GetPinpointAPNSVoipSandboxChannelWithName(name string) (*pinpoint.APNSVoipSandboxChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSageMakerCodeRepository: + case *pinpoint.APNSVoipSandboxChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSageMakerCodeRepository not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.APNSVoipSandboxChannel not found", name) } -// GetAllAWSSageMakerEndpointResources retrieves all AWSSageMakerEndpoint items from an AWS CloudFormation template -func (t *Template) GetAllAWSSageMakerEndpointResources() map[string]*resources.AWSSageMakerEndpoint { - results := map[string]*resources.AWSSageMakerEndpoint{} +// GetAllIoTPolicyResources retrieves all iot.Policy items from an AWS CloudFormation template +func (t *Template) GetAllIoTPolicyResources() map[string]*iot.Policy { + results := map[string]*iot.Policy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSageMakerEndpoint: + case *iot.Policy: results[name] = resource } } return results } -// GetAWSSageMakerEndpointWithName retrieves all AWSSageMakerEndpoint items from an AWS CloudFormation template +// GetIoTPolicyWithName retrieves all iot.Policy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSageMakerEndpointWithName(name string) (*resources.AWSSageMakerEndpoint, error) { +func (t *Template) GetIoTPolicyWithName(name string) (*iot.Policy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSageMakerEndpoint: + case *iot.Policy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSageMakerEndpoint not found", name) + return nil, fmt.Errorf("resource %q of type iot.Policy not found", name) } -// GetAllAWSSageMakerEndpointConfigResources retrieves all AWSSageMakerEndpointConfig items from an AWS CloudFormation template -func (t *Template) GetAllAWSSageMakerEndpointConfigResources() map[string]*resources.AWSSageMakerEndpointConfig { - results := map[string]*resources.AWSSageMakerEndpointConfig{} +// GetAllAppStreamStackFleetAssociationResources retrieves all appstream.StackFleetAssociation items from an AWS CloudFormation template +func (t *Template) GetAllAppStreamStackFleetAssociationResources() map[string]*appstream.StackFleetAssociation { + results := map[string]*appstream.StackFleetAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSageMakerEndpointConfig: + case *appstream.StackFleetAssociation: results[name] = resource } } return results } -// GetAWSSageMakerEndpointConfigWithName retrieves all AWSSageMakerEndpointConfig items from an AWS CloudFormation template +// GetAppStreamStackFleetAssociationWithName retrieves all appstream.StackFleetAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSageMakerEndpointConfigWithName(name string) (*resources.AWSSageMakerEndpointConfig, error) { +func (t *Template) GetAppStreamStackFleetAssociationWithName(name string) (*appstream.StackFleetAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSageMakerEndpointConfig: + case *appstream.StackFleetAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSageMakerEndpointConfig not found", name) + return nil, fmt.Errorf("resource %q of type appstream.StackFleetAssociation not found", name) } -// GetAllAWSSageMakerModelResources retrieves all AWSSageMakerModel items from an AWS CloudFormation template -func (t *Template) GetAllAWSSageMakerModelResources() map[string]*resources.AWSSageMakerModel { - results := map[string]*resources.AWSSageMakerModel{} +// GetAllPinpointVoiceChannelResources retrieves all pinpoint.VoiceChannel items from an AWS CloudFormation template +func (t *Template) GetAllPinpointVoiceChannelResources() map[string]*pinpoint.VoiceChannel { + results := map[string]*pinpoint.VoiceChannel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSageMakerModel: + case *pinpoint.VoiceChannel: results[name] = resource } } return results } -// GetAWSSageMakerModelWithName retrieves all AWSSageMakerModel items from an AWS CloudFormation template +// GetPinpointVoiceChannelWithName retrieves all pinpoint.VoiceChannel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSageMakerModelWithName(name string) (*resources.AWSSageMakerModel, error) { +func (t *Template) GetPinpointVoiceChannelWithName(name string) (*pinpoint.VoiceChannel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSageMakerModel: + case *pinpoint.VoiceChannel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSageMakerModel not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.VoiceChannel not found", name) } -// GetAllAWSSageMakerNotebookInstanceResources retrieves all AWSSageMakerNotebookInstance items from an AWS CloudFormation template -func (t *Template) GetAllAWSSageMakerNotebookInstanceResources() map[string]*resources.AWSSageMakerNotebookInstance { - results := map[string]*resources.AWSSageMakerNotebookInstance{} +// GetAllCodeDeployApplicationResources retrieves all codedeploy.Application items from an AWS CloudFormation template +func (t *Template) GetAllCodeDeployApplicationResources() map[string]*codedeploy.Application { + results := map[string]*codedeploy.Application{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSageMakerNotebookInstance: + case *codedeploy.Application: results[name] = resource } } return results } -// GetAWSSageMakerNotebookInstanceWithName retrieves all AWSSageMakerNotebookInstance items from an AWS CloudFormation template +// GetCodeDeployApplicationWithName retrieves all codedeploy.Application items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSageMakerNotebookInstanceWithName(name string) (*resources.AWSSageMakerNotebookInstance, error) { +func (t *Template) GetCodeDeployApplicationWithName(name string) (*codedeploy.Application, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSageMakerNotebookInstance: + case *codedeploy.Application: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSageMakerNotebookInstance not found", name) + return nil, fmt.Errorf("resource %q of type codedeploy.Application not found", name) } -// GetAllAWSSageMakerNotebookInstanceLifecycleConfigResources retrieves all AWSSageMakerNotebookInstanceLifecycleConfig items from an AWS CloudFormation template -func (t *Template) GetAllAWSSageMakerNotebookInstanceLifecycleConfigResources() map[string]*resources.AWSSageMakerNotebookInstanceLifecycleConfig { - results := map[string]*resources.AWSSageMakerNotebookInstanceLifecycleConfig{} +// GetAllApiGatewayClientCertificateResources retrieves all apigateway.ClientCertificate items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayClientCertificateResources() map[string]*apigateway.ClientCertificate { + results := map[string]*apigateway.ClientCertificate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSageMakerNotebookInstanceLifecycleConfig: + case *apigateway.ClientCertificate: results[name] = resource } } return results } -// GetAWSSageMakerNotebookInstanceLifecycleConfigWithName retrieves all AWSSageMakerNotebookInstanceLifecycleConfig items from an AWS CloudFormation template +// GetApiGatewayClientCertificateWithName retrieves all apigateway.ClientCertificate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSageMakerNotebookInstanceLifecycleConfigWithName(name string) (*resources.AWSSageMakerNotebookInstanceLifecycleConfig, error) { +func (t *Template) GetApiGatewayClientCertificateWithName(name string) (*apigateway.ClientCertificate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSageMakerNotebookInstanceLifecycleConfig: + case *apigateway.ClientCertificate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSageMakerNotebookInstanceLifecycleConfig not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.ClientCertificate not found", name) } -// GetAllAWSSageMakerWorkteamResources retrieves all AWSSageMakerWorkteam items from an AWS CloudFormation template -func (t *Template) GetAllAWSSageMakerWorkteamResources() map[string]*resources.AWSSageMakerWorkteam { - results := map[string]*resources.AWSSageMakerWorkteam{} +// GetAllPinpointEmailIdentityResources retrieves all pinpointemail.Identity items from an AWS CloudFormation template +func (t *Template) GetAllPinpointEmailIdentityResources() map[string]*pinpointemail.Identity { + results := map[string]*pinpointemail.Identity{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSageMakerWorkteam: + case *pinpointemail.Identity: results[name] = resource } } return results } -// GetAWSSageMakerWorkteamWithName retrieves all AWSSageMakerWorkteam items from an AWS CloudFormation template +// GetPinpointEmailIdentityWithName retrieves all pinpointemail.Identity items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSageMakerWorkteamWithName(name string) (*resources.AWSSageMakerWorkteam, error) { +func (t *Template) GetPinpointEmailIdentityWithName(name string) (*pinpointemail.Identity, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSageMakerWorkteam: + case *pinpointemail.Identity: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSageMakerWorkteam not found", name) + return nil, fmt.Errorf("resource %q of type pinpointemail.Identity not found", name) } -// GetAllAWSSecretsManagerResourcePolicyResources retrieves all AWSSecretsManagerResourcePolicy items from an AWS CloudFormation template -func (t *Template) GetAllAWSSecretsManagerResourcePolicyResources() map[string]*resources.AWSSecretsManagerResourcePolicy { - results := map[string]*resources.AWSSecretsManagerResourcePolicy{} +// GetAllPinpointApplicationSettingsResources retrieves all pinpoint.ApplicationSettings items from an AWS CloudFormation template +func (t *Template) GetAllPinpointApplicationSettingsResources() map[string]*pinpoint.ApplicationSettings { + results := map[string]*pinpoint.ApplicationSettings{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSecretsManagerResourcePolicy: + case *pinpoint.ApplicationSettings: results[name] = resource } } return results } -// GetAWSSecretsManagerResourcePolicyWithName retrieves all AWSSecretsManagerResourcePolicy items from an AWS CloudFormation template +// GetPinpointApplicationSettingsWithName retrieves all pinpoint.ApplicationSettings items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSecretsManagerResourcePolicyWithName(name string) (*resources.AWSSecretsManagerResourcePolicy, error) { +func (t *Template) GetPinpointApplicationSettingsWithName(name string) (*pinpoint.ApplicationSettings, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSecretsManagerResourcePolicy: + case *pinpoint.ApplicationSettings: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSecretsManagerResourcePolicy not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.ApplicationSettings not found", name) } -// GetAllAWSSecretsManagerRotationScheduleResources retrieves all AWSSecretsManagerRotationSchedule items from an AWS CloudFormation template -func (t *Template) GetAllAWSSecretsManagerRotationScheduleResources() map[string]*resources.AWSSecretsManagerRotationSchedule { - results := map[string]*resources.AWSSecretsManagerRotationSchedule{} +// GetAllGreengrassDeviceDefinitionVersionResources retrieves all greengrass.DeviceDefinitionVersion items from an AWS CloudFormation template +func (t *Template) GetAllGreengrassDeviceDefinitionVersionResources() map[string]*greengrass.DeviceDefinitionVersion { + results := map[string]*greengrass.DeviceDefinitionVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSecretsManagerRotationSchedule: + case *greengrass.DeviceDefinitionVersion: results[name] = resource } } return results } -// GetAWSSecretsManagerRotationScheduleWithName retrieves all AWSSecretsManagerRotationSchedule items from an AWS CloudFormation template +// GetGreengrassDeviceDefinitionVersionWithName retrieves all greengrass.DeviceDefinitionVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSecretsManagerRotationScheduleWithName(name string) (*resources.AWSSecretsManagerRotationSchedule, error) { +func (t *Template) GetGreengrassDeviceDefinitionVersionWithName(name string) (*greengrass.DeviceDefinitionVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSecretsManagerRotationSchedule: + case *greengrass.DeviceDefinitionVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSecretsManagerRotationSchedule not found", name) + return nil, fmt.Errorf("resource %q of type greengrass.DeviceDefinitionVersion not found", name) } -// GetAllAWSSecretsManagerSecretResources retrieves all AWSSecretsManagerSecret items from an AWS CloudFormation template -func (t *Template) GetAllAWSSecretsManagerSecretResources() map[string]*resources.AWSSecretsManagerSecret { - results := map[string]*resources.AWSSecretsManagerSecret{} +// GetAllElastiCacheCacheClusterResources retrieves all elasticache.CacheCluster items from an AWS CloudFormation template +func (t *Template) GetAllElastiCacheCacheClusterResources() map[string]*elasticache.CacheCluster { + results := map[string]*elasticache.CacheCluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSecretsManagerSecret: + case *elasticache.CacheCluster: results[name] = resource } } return results } -// GetAWSSecretsManagerSecretWithName retrieves all AWSSecretsManagerSecret items from an AWS CloudFormation template +// GetElastiCacheCacheClusterWithName retrieves all elasticache.CacheCluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSecretsManagerSecretWithName(name string) (*resources.AWSSecretsManagerSecret, error) { +func (t *Template) GetElastiCacheCacheClusterWithName(name string) (*elasticache.CacheCluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSecretsManagerSecret: + case *elasticache.CacheCluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSecretsManagerSecret not found", name) + return nil, fmt.Errorf("resource %q of type elasticache.CacheCluster not found", name) } -// GetAllAWSSecretsManagerSecretTargetAttachmentResources retrieves all AWSSecretsManagerSecretTargetAttachment items from an AWS CloudFormation template -func (t *Template) GetAllAWSSecretsManagerSecretTargetAttachmentResources() map[string]*resources.AWSSecretsManagerSecretTargetAttachment { - results := map[string]*resources.AWSSecretsManagerSecretTargetAttachment{} +// GetAllCodeStarGitHubRepositoryResources retrieves all codestar.GitHubRepository items from an AWS CloudFormation template +func (t *Template) GetAllCodeStarGitHubRepositoryResources() map[string]*codestar.GitHubRepository { + results := map[string]*codestar.GitHubRepository{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSecretsManagerSecretTargetAttachment: + case *codestar.GitHubRepository: results[name] = resource } } return results } -// GetAWSSecretsManagerSecretTargetAttachmentWithName retrieves all AWSSecretsManagerSecretTargetAttachment items from an AWS CloudFormation template +// GetCodeStarGitHubRepositoryWithName retrieves all codestar.GitHubRepository items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSecretsManagerSecretTargetAttachmentWithName(name string) (*resources.AWSSecretsManagerSecretTargetAttachment, error) { +func (t *Template) GetCodeStarGitHubRepositoryWithName(name string) (*codestar.GitHubRepository, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSecretsManagerSecretTargetAttachment: + case *codestar.GitHubRepository: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSecretsManagerSecretTargetAttachment not found", name) + return nil, fmt.Errorf("resource %q of type codestar.GitHubRepository not found", name) } -// GetAllAWSSecurityHubHubResources retrieves all AWSSecurityHubHub items from an AWS CloudFormation template -func (t *Template) GetAllAWSSecurityHubHubResources() map[string]*resources.AWSSecurityHubHub { - results := map[string]*resources.AWSSecurityHubHub{} +// GetAllRDSDBClusterResources retrieves all rds.DBCluster items from an AWS CloudFormation template +func (t *Template) GetAllRDSDBClusterResources() map[string]*rds.DBCluster { + results := map[string]*rds.DBCluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSSecurityHubHub: + case *rds.DBCluster: results[name] = resource } } return results } -// GetAWSSecurityHubHubWithName retrieves all AWSSecurityHubHub items from an AWS CloudFormation template +// GetRDSDBClusterWithName retrieves all rds.DBCluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSSecurityHubHubWithName(name string) (*resources.AWSSecurityHubHub, error) { +func (t *Template) GetRDSDBClusterWithName(name string) (*rds.DBCluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSSecurityHubHub: + case *rds.DBCluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSSecurityHubHub not found", name) + return nil, fmt.Errorf("resource %q of type rds.DBCluster not found", name) } -// GetAllAWSServerlessApiResources retrieves all AWSServerlessApi items from an AWS CloudFormation template -func (t *Template) GetAllAWSServerlessApiResources() map[string]*resources.AWSServerlessApi { - results := map[string]*resources.AWSServerlessApi{} +// GetAllEC2ClientVpnEndpointResources retrieves all ec2.ClientVpnEndpoint items from an AWS CloudFormation template +func (t *Template) GetAllEC2ClientVpnEndpointResources() map[string]*ec2.ClientVpnEndpoint { + results := map[string]*ec2.ClientVpnEndpoint{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServerlessApi: + case *ec2.ClientVpnEndpoint: results[name] = resource } } return results } -// GetAWSServerlessApiWithName retrieves all AWSServerlessApi items from an AWS CloudFormation template +// GetEC2ClientVpnEndpointWithName retrieves all ec2.ClientVpnEndpoint items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServerlessApiWithName(name string) (*resources.AWSServerlessApi, error) { +func (t *Template) GetEC2ClientVpnEndpointWithName(name string) (*ec2.ClientVpnEndpoint, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServerlessApi: + case *ec2.ClientVpnEndpoint: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServerlessApi not found", name) + return nil, fmt.Errorf("resource %q of type ec2.ClientVpnEndpoint not found", name) } -// GetAllAWSServerlessApplicationResources retrieves all AWSServerlessApplication items from an AWS CloudFormation template -func (t *Template) GetAllAWSServerlessApplicationResources() map[string]*resources.AWSServerlessApplication { - results := map[string]*resources.AWSServerlessApplication{} +// GetAllElasticsearchDomainResources retrieves all elasticsearch.Domain items from an AWS CloudFormation template +func (t *Template) GetAllElasticsearchDomainResources() map[string]*elasticsearch.Domain { + results := map[string]*elasticsearch.Domain{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServerlessApplication: + case *elasticsearch.Domain: results[name] = resource } } return results } -// GetAWSServerlessApplicationWithName retrieves all AWSServerlessApplication items from an AWS CloudFormation template +// GetElasticsearchDomainWithName retrieves all elasticsearch.Domain items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServerlessApplicationWithName(name string) (*resources.AWSServerlessApplication, error) { +func (t *Template) GetElasticsearchDomainWithName(name string) (*elasticsearch.Domain, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServerlessApplication: + case *elasticsearch.Domain: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServerlessApplication not found", name) + return nil, fmt.Errorf("resource %q of type elasticsearch.Domain not found", name) } -// GetAllAWSServerlessFunctionResources retrieves all AWSServerlessFunction items from an AWS CloudFormation template -func (t *Template) GetAllAWSServerlessFunctionResources() map[string]*resources.AWSServerlessFunction { - results := map[string]*resources.AWSServerlessFunction{} +// GetAllKMSAliasResources retrieves all kms.Alias items from an AWS CloudFormation template +func (t *Template) GetAllKMSAliasResources() map[string]*kms.Alias { + results := map[string]*kms.Alias{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServerlessFunction: + case *kms.Alias: results[name] = resource } } return results } -// GetAWSServerlessFunctionWithName retrieves all AWSServerlessFunction items from an AWS CloudFormation template +// GetKMSAliasWithName retrieves all kms.Alias items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServerlessFunctionWithName(name string) (*resources.AWSServerlessFunction, error) { +func (t *Template) GetKMSAliasWithName(name string) (*kms.Alias, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServerlessFunction: + case *kms.Alias: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServerlessFunction not found", name) + return nil, fmt.Errorf("resource %q of type kms.Alias not found", name) } -// GetAllAWSServerlessLayerVersionResources retrieves all AWSServerlessLayerVersion items from an AWS CloudFormation template -func (t *Template) GetAllAWSServerlessLayerVersionResources() map[string]*resources.AWSServerlessLayerVersion { - results := map[string]*resources.AWSServerlessLayerVersion{} +// GetAllApiGatewayApiKeyResources retrieves all apigateway.ApiKey items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayApiKeyResources() map[string]*apigateway.ApiKey { + results := map[string]*apigateway.ApiKey{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServerlessLayerVersion: + case *apigateway.ApiKey: results[name] = resource } } return results } -// GetAWSServerlessLayerVersionWithName retrieves all AWSServerlessLayerVersion items from an AWS CloudFormation template +// GetApiGatewayApiKeyWithName retrieves all apigateway.ApiKey items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServerlessLayerVersionWithName(name string) (*resources.AWSServerlessLayerVersion, error) { +func (t *Template) GetApiGatewayApiKeyWithName(name string) (*apigateway.ApiKey, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServerlessLayerVersion: + case *apigateway.ApiKey: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServerlessLayerVersion not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.ApiKey not found", name) } -// GetAllAWSServerlessSimpleTableResources retrieves all AWSServerlessSimpleTable items from an AWS CloudFormation template -func (t *Template) GetAllAWSServerlessSimpleTableResources() map[string]*resources.AWSServerlessSimpleTable { - results := map[string]*resources.AWSServerlessSimpleTable{} +// GetAllEC2InstanceResources retrieves all ec2.Instance items from an AWS CloudFormation template +func (t *Template) GetAllEC2InstanceResources() map[string]*ec2.Instance { + results := map[string]*ec2.Instance{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServerlessSimpleTable: + case *ec2.Instance: results[name] = resource } } return results } -// GetAWSServerlessSimpleTableWithName retrieves all AWSServerlessSimpleTable items from an AWS CloudFormation template +// GetEC2InstanceWithName retrieves all ec2.Instance items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServerlessSimpleTableWithName(name string) (*resources.AWSServerlessSimpleTable, error) { +func (t *Template) GetEC2InstanceWithName(name string) (*ec2.Instance, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServerlessSimpleTable: + case *ec2.Instance: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServerlessSimpleTable not found", name) + return nil, fmt.Errorf("resource %q of type ec2.Instance not found", name) } -// GetAllAWSServiceCatalogAcceptedPortfolioShareResources retrieves all AWSServiceCatalogAcceptedPortfolioShare items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogAcceptedPortfolioShareResources() map[string]*resources.AWSServiceCatalogAcceptedPortfolioShare { - results := map[string]*resources.AWSServiceCatalogAcceptedPortfolioShare{} +// GetAllConfigAggregationAuthorizationResources retrieves all config.AggregationAuthorization items from an AWS CloudFormation template +func (t *Template) GetAllConfigAggregationAuthorizationResources() map[string]*config.AggregationAuthorization { + results := map[string]*config.AggregationAuthorization{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogAcceptedPortfolioShare: + case *config.AggregationAuthorization: results[name] = resource } } return results } -// GetAWSServiceCatalogAcceptedPortfolioShareWithName retrieves all AWSServiceCatalogAcceptedPortfolioShare items from an AWS CloudFormation template +// GetConfigAggregationAuthorizationWithName retrieves all config.AggregationAuthorization items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogAcceptedPortfolioShareWithName(name string) (*resources.AWSServiceCatalogAcceptedPortfolioShare, error) { +func (t *Template) GetConfigAggregationAuthorizationWithName(name string) (*config.AggregationAuthorization, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogAcceptedPortfolioShare: + case *config.AggregationAuthorization: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogAcceptedPortfolioShare not found", name) + return nil, fmt.Errorf("resource %q of type config.AggregationAuthorization not found", name) } -// GetAllAWSServiceCatalogCloudFormationProductResources retrieves all AWSServiceCatalogCloudFormationProduct items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogCloudFormationProductResources() map[string]*resources.AWSServiceCatalogCloudFormationProduct { - results := map[string]*resources.AWSServiceCatalogCloudFormationProduct{} +// GetAllSageMakerWorkteamResources retrieves all sagemaker.Workteam items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerWorkteamResources() map[string]*sagemaker.Workteam { + results := map[string]*sagemaker.Workteam{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogCloudFormationProduct: + case *sagemaker.Workteam: results[name] = resource } } return results } -// GetAWSServiceCatalogCloudFormationProductWithName retrieves all AWSServiceCatalogCloudFormationProduct items from an AWS CloudFormation template +// GetSageMakerWorkteamWithName retrieves all sagemaker.Workteam items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogCloudFormationProductWithName(name string) (*resources.AWSServiceCatalogCloudFormationProduct, error) { +func (t *Template) GetSageMakerWorkteamWithName(name string) (*sagemaker.Workteam, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogCloudFormationProduct: + case *sagemaker.Workteam: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogCloudFormationProduct not found", name) + return nil, fmt.Errorf("resource %q of type sagemaker.Workteam not found", name) } -// GetAllAWSServiceCatalogCloudFormationProvisionedProductResources retrieves all AWSServiceCatalogCloudFormationProvisionedProduct items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogCloudFormationProvisionedProductResources() map[string]*resources.AWSServiceCatalogCloudFormationProvisionedProduct { - results := map[string]*resources.AWSServiceCatalogCloudFormationProvisionedProduct{} +// GetAllServiceCatalogCloudFormationProductResources retrieves all servicecatalog.CloudFormationProduct items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogCloudFormationProductResources() map[string]*servicecatalog.CloudFormationProduct { + results := map[string]*servicecatalog.CloudFormationProduct{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogCloudFormationProvisionedProduct: + case *servicecatalog.CloudFormationProduct: results[name] = resource } } return results } -// GetAWSServiceCatalogCloudFormationProvisionedProductWithName retrieves all AWSServiceCatalogCloudFormationProvisionedProduct items from an AWS CloudFormation template +// GetServiceCatalogCloudFormationProductWithName retrieves all servicecatalog.CloudFormationProduct items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogCloudFormationProvisionedProductWithName(name string) (*resources.AWSServiceCatalogCloudFormationProvisionedProduct, error) { +func (t *Template) GetServiceCatalogCloudFormationProductWithName(name string) (*servicecatalog.CloudFormationProduct, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogCloudFormationProvisionedProduct: + case *servicecatalog.CloudFormationProduct: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogCloudFormationProvisionedProduct not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.CloudFormationProduct not found", name) } -// GetAllAWSServiceCatalogLaunchNotificationConstraintResources retrieves all AWSServiceCatalogLaunchNotificationConstraint items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogLaunchNotificationConstraintResources() map[string]*resources.AWSServiceCatalogLaunchNotificationConstraint { - results := map[string]*resources.AWSServiceCatalogLaunchNotificationConstraint{} +// GetAllWAFRegionalXssMatchSetResources retrieves all wafregional.XssMatchSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalXssMatchSetResources() map[string]*wafregional.XssMatchSet { + results := map[string]*wafregional.XssMatchSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogLaunchNotificationConstraint: + case *wafregional.XssMatchSet: results[name] = resource } } return results } -// GetAWSServiceCatalogLaunchNotificationConstraintWithName retrieves all AWSServiceCatalogLaunchNotificationConstraint items from an AWS CloudFormation template +// GetWAFRegionalXssMatchSetWithName retrieves all wafregional.XssMatchSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogLaunchNotificationConstraintWithName(name string) (*resources.AWSServiceCatalogLaunchNotificationConstraint, error) { +func (t *Template) GetWAFRegionalXssMatchSetWithName(name string) (*wafregional.XssMatchSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogLaunchNotificationConstraint: + case *wafregional.XssMatchSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogLaunchNotificationConstraint not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.XssMatchSet not found", name) } -// GetAllAWSServiceCatalogLaunchRoleConstraintResources retrieves all AWSServiceCatalogLaunchRoleConstraint items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogLaunchRoleConstraintResources() map[string]*resources.AWSServiceCatalogLaunchRoleConstraint { - results := map[string]*resources.AWSServiceCatalogLaunchRoleConstraint{} +// GetAllEC2SubnetNetworkAclAssociationResources retrieves all ec2.SubnetNetworkAclAssociation items from an AWS CloudFormation template +func (t *Template) GetAllEC2SubnetNetworkAclAssociationResources() map[string]*ec2.SubnetNetworkAclAssociation { + results := map[string]*ec2.SubnetNetworkAclAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogLaunchRoleConstraint: + case *ec2.SubnetNetworkAclAssociation: results[name] = resource } } return results } -// GetAWSServiceCatalogLaunchRoleConstraintWithName retrieves all AWSServiceCatalogLaunchRoleConstraint items from an AWS CloudFormation template +// GetEC2SubnetNetworkAclAssociationWithName retrieves all ec2.SubnetNetworkAclAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogLaunchRoleConstraintWithName(name string) (*resources.AWSServiceCatalogLaunchRoleConstraint, error) { +func (t *Template) GetEC2SubnetNetworkAclAssociationWithName(name string) (*ec2.SubnetNetworkAclAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogLaunchRoleConstraint: + case *ec2.SubnetNetworkAclAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogLaunchRoleConstraint not found", name) + return nil, fmt.Errorf("resource %q of type ec2.SubnetNetworkAclAssociation not found", name) } -// GetAllAWSServiceCatalogLaunchTemplateConstraintResources retrieves all AWSServiceCatalogLaunchTemplateConstraint items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogLaunchTemplateConstraintResources() map[string]*resources.AWSServiceCatalogLaunchTemplateConstraint { - results := map[string]*resources.AWSServiceCatalogLaunchTemplateConstraint{} +// GetAllCognitoIdentityPoolResources retrieves all cognito.IdentityPool items from an AWS CloudFormation template +func (t *Template) GetAllCognitoIdentityPoolResources() map[string]*cognito.IdentityPool { + results := map[string]*cognito.IdentityPool{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogLaunchTemplateConstraint: + case *cognito.IdentityPool: results[name] = resource } } return results } -// GetAWSServiceCatalogLaunchTemplateConstraintWithName retrieves all AWSServiceCatalogLaunchTemplateConstraint items from an AWS CloudFormation template +// GetCognitoIdentityPoolWithName retrieves all cognito.IdentityPool items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogLaunchTemplateConstraintWithName(name string) (*resources.AWSServiceCatalogLaunchTemplateConstraint, error) { +func (t *Template) GetCognitoIdentityPoolWithName(name string) (*cognito.IdentityPool, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogLaunchTemplateConstraint: + case *cognito.IdentityPool: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogLaunchTemplateConstraint not found", name) + return nil, fmt.Errorf("resource %q of type cognito.IdentityPool not found", name) } -// GetAllAWSServiceCatalogPortfolioResources retrieves all AWSServiceCatalogPortfolio items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogPortfolioResources() map[string]*resources.AWSServiceCatalogPortfolio { - results := map[string]*resources.AWSServiceCatalogPortfolio{} +// GetAllKinesisAnalyticsV2ApplicationResources retrieves all kinesisanalyticsv2.Application items from an AWS CloudFormation template +func (t *Template) GetAllKinesisAnalyticsV2ApplicationResources() map[string]*kinesisanalyticsv2.Application { + results := map[string]*kinesisanalyticsv2.Application{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogPortfolio: + case *kinesisanalyticsv2.Application: results[name] = resource } } return results } -// GetAWSServiceCatalogPortfolioWithName retrieves all AWSServiceCatalogPortfolio items from an AWS CloudFormation template +// GetKinesisAnalyticsV2ApplicationWithName retrieves all kinesisanalyticsv2.Application items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogPortfolioWithName(name string) (*resources.AWSServiceCatalogPortfolio, error) { +func (t *Template) GetKinesisAnalyticsV2ApplicationWithName(name string) (*kinesisanalyticsv2.Application, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogPortfolio: + case *kinesisanalyticsv2.Application: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogPortfolio not found", name) + return nil, fmt.Errorf("resource %q of type kinesisanalyticsv2.Application not found", name) } -// GetAllAWSServiceCatalogPortfolioPrincipalAssociationResources retrieves all AWSServiceCatalogPortfolioPrincipalAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogPortfolioPrincipalAssociationResources() map[string]*resources.AWSServiceCatalogPortfolioPrincipalAssociation { - results := map[string]*resources.AWSServiceCatalogPortfolioPrincipalAssociation{} +// GetAllBackupBackupSelectionResources retrieves all backup.BackupSelection items from an AWS CloudFormation template +func (t *Template) GetAllBackupBackupSelectionResources() map[string]*backup.BackupSelection { + results := map[string]*backup.BackupSelection{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogPortfolioPrincipalAssociation: + case *backup.BackupSelection: results[name] = resource } } return results } -// GetAWSServiceCatalogPortfolioPrincipalAssociationWithName retrieves all AWSServiceCatalogPortfolioPrincipalAssociation items from an AWS CloudFormation template +// GetBackupBackupSelectionWithName retrieves all backup.BackupSelection items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogPortfolioPrincipalAssociationWithName(name string) (*resources.AWSServiceCatalogPortfolioPrincipalAssociation, error) { +func (t *Template) GetBackupBackupSelectionWithName(name string) (*backup.BackupSelection, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogPortfolioPrincipalAssociation: + case *backup.BackupSelection: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogPortfolioPrincipalAssociation not found", name) + return nil, fmt.Errorf("resource %q of type backup.BackupSelection not found", name) } -// GetAllAWSServiceCatalogPortfolioProductAssociationResources retrieves all AWSServiceCatalogPortfolioProductAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogPortfolioProductAssociationResources() map[string]*resources.AWSServiceCatalogPortfolioProductAssociation { - results := map[string]*resources.AWSServiceCatalogPortfolioProductAssociation{} +// GetAllApiGatewayV2AuthorizerResources retrieves all apigatewayv2.Authorizer items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2AuthorizerResources() map[string]*apigatewayv2.Authorizer { + results := map[string]*apigatewayv2.Authorizer{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogPortfolioProductAssociation: + case *apigatewayv2.Authorizer: results[name] = resource } } return results } -// GetAWSServiceCatalogPortfolioProductAssociationWithName retrieves all AWSServiceCatalogPortfolioProductAssociation items from an AWS CloudFormation template +// GetApiGatewayV2AuthorizerWithName retrieves all apigatewayv2.Authorizer items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogPortfolioProductAssociationWithName(name string) (*resources.AWSServiceCatalogPortfolioProductAssociation, error) { +func (t *Template) GetApiGatewayV2AuthorizerWithName(name string) (*apigatewayv2.Authorizer, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogPortfolioProductAssociation: + case *apigatewayv2.Authorizer: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogPortfolioProductAssociation not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.Authorizer not found", name) } -// GetAllAWSServiceCatalogPortfolioShareResources retrieves all AWSServiceCatalogPortfolioShare items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogPortfolioShareResources() map[string]*resources.AWSServiceCatalogPortfolioShare { - results := map[string]*resources.AWSServiceCatalogPortfolioShare{} +// GetAllPinpointAppResources retrieves all pinpoint.App items from an AWS CloudFormation template +func (t *Template) GetAllPinpointAppResources() map[string]*pinpoint.App { + results := map[string]*pinpoint.App{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogPortfolioShare: + case *pinpoint.App: results[name] = resource } } return results } -// GetAWSServiceCatalogPortfolioShareWithName retrieves all AWSServiceCatalogPortfolioShare items from an AWS CloudFormation template +// GetPinpointAppWithName retrieves all pinpoint.App items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogPortfolioShareWithName(name string) (*resources.AWSServiceCatalogPortfolioShare, error) { +func (t *Template) GetPinpointAppWithName(name string) (*pinpoint.App, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogPortfolioShare: + case *pinpoint.App: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogPortfolioShare not found", name) + return nil, fmt.Errorf("resource %q of type pinpoint.App not found", name) } -// GetAllAWSServiceCatalogResourceUpdateConstraintResources retrieves all AWSServiceCatalogResourceUpdateConstraint items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogResourceUpdateConstraintResources() map[string]*resources.AWSServiceCatalogResourceUpdateConstraint { - results := map[string]*resources.AWSServiceCatalogResourceUpdateConstraint{} +// GetAllServiceCatalogPortfolioShareResources retrieves all servicecatalog.PortfolioShare items from an AWS CloudFormation template +func (t *Template) GetAllServiceCatalogPortfolioShareResources() map[string]*servicecatalog.PortfolioShare { + results := map[string]*servicecatalog.PortfolioShare{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogResourceUpdateConstraint: + case *servicecatalog.PortfolioShare: results[name] = resource } } return results } -// GetAWSServiceCatalogResourceUpdateConstraintWithName retrieves all AWSServiceCatalogResourceUpdateConstraint items from an AWS CloudFormation template +// GetServiceCatalogPortfolioShareWithName retrieves all servicecatalog.PortfolioShare items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogResourceUpdateConstraintWithName(name string) (*resources.AWSServiceCatalogResourceUpdateConstraint, error) { +func (t *Template) GetServiceCatalogPortfolioShareWithName(name string) (*servicecatalog.PortfolioShare, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogResourceUpdateConstraint: + case *servicecatalog.PortfolioShare: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogResourceUpdateConstraint not found", name) + return nil, fmt.Errorf("resource %q of type servicecatalog.PortfolioShare not found", name) } -// GetAllAWSServiceCatalogStackSetConstraintResources retrieves all AWSServiceCatalogStackSetConstraint items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogStackSetConstraintResources() map[string]*resources.AWSServiceCatalogStackSetConstraint { - results := map[string]*resources.AWSServiceCatalogStackSetConstraint{} +// GetAllManagedBlockchainMemberResources retrieves all managedblockchain.Member items from an AWS CloudFormation template +func (t *Template) GetAllManagedBlockchainMemberResources() map[string]*managedblockchain.Member { + results := map[string]*managedblockchain.Member{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogStackSetConstraint: + case *managedblockchain.Member: results[name] = resource } } return results } -// GetAWSServiceCatalogStackSetConstraintWithName retrieves all AWSServiceCatalogStackSetConstraint items from an AWS CloudFormation template +// GetManagedBlockchainMemberWithName retrieves all managedblockchain.Member items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogStackSetConstraintWithName(name string) (*resources.AWSServiceCatalogStackSetConstraint, error) { +func (t *Template) GetManagedBlockchainMemberWithName(name string) (*managedblockchain.Member, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogStackSetConstraint: + case *managedblockchain.Member: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogStackSetConstraint not found", name) + return nil, fmt.Errorf("resource %q of type managedblockchain.Member not found", name) } -// GetAllAWSServiceCatalogTagOptionResources retrieves all AWSServiceCatalogTagOption items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogTagOptionResources() map[string]*resources.AWSServiceCatalogTagOption { - results := map[string]*resources.AWSServiceCatalogTagOption{} +// GetAllWAFRegionalIPSetResources retrieves all wafregional.IPSet items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalIPSetResources() map[string]*wafregional.IPSet { + results := map[string]*wafregional.IPSet{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogTagOption: + case *wafregional.IPSet: results[name] = resource } } return results } -// GetAWSServiceCatalogTagOptionWithName retrieves all AWSServiceCatalogTagOption items from an AWS CloudFormation template +// GetWAFRegionalIPSetWithName retrieves all wafregional.IPSet items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogTagOptionWithName(name string) (*resources.AWSServiceCatalogTagOption, error) { +func (t *Template) GetWAFRegionalIPSetWithName(name string) (*wafregional.IPSet, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogTagOption: + case *wafregional.IPSet: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogTagOption not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.IPSet not found", name) } -// GetAllAWSServiceCatalogTagOptionAssociationResources retrieves all AWSServiceCatalogTagOptionAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceCatalogTagOptionAssociationResources() map[string]*resources.AWSServiceCatalogTagOptionAssociation { - results := map[string]*resources.AWSServiceCatalogTagOptionAssociation{} +// GetAllCloudFormationCustomResourceResources retrieves all cloudformation.CustomResource items from an AWS CloudFormation template +func (t *Template) GetAllCloudFormationCustomResourceResources() map[string]*cloudformation.CustomResource { + results := map[string]*cloudformation.CustomResource{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogTagOptionAssociation: + case *cloudformation.CustomResource: results[name] = resource } } return results } -// GetAWSServiceCatalogTagOptionAssociationWithName retrieves all AWSServiceCatalogTagOptionAssociation items from an AWS CloudFormation template +// GetCloudFormationCustomResourceWithName retrieves all cloudformation.CustomResource items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceCatalogTagOptionAssociationWithName(name string) (*resources.AWSServiceCatalogTagOptionAssociation, error) { +func (t *Template) GetCloudFormationCustomResourceWithName(name string) (*cloudformation.CustomResource, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceCatalogTagOptionAssociation: + case *cloudformation.CustomResource: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceCatalogTagOptionAssociation not found", name) + return nil, fmt.Errorf("resource %q of type cloudformation.CustomResource not found", name) } -// GetAllAWSServiceDiscoveryHttpNamespaceResources retrieves all AWSServiceDiscoveryHttpNamespace items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceDiscoveryHttpNamespaceResources() map[string]*resources.AWSServiceDiscoveryHttpNamespace { - results := map[string]*resources.AWSServiceDiscoveryHttpNamespace{} +// GetAllAmazonMQConfigurationAssociationResources retrieves all amazonmq.ConfigurationAssociation items from an AWS CloudFormation template +func (t *Template) GetAllAmazonMQConfigurationAssociationResources() map[string]*amazonmq.ConfigurationAssociation { + results := map[string]*amazonmq.ConfigurationAssociation{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryHttpNamespace: + case *amazonmq.ConfigurationAssociation: results[name] = resource } } return results } -// GetAWSServiceDiscoveryHttpNamespaceWithName retrieves all AWSServiceDiscoveryHttpNamespace items from an AWS CloudFormation template +// GetAmazonMQConfigurationAssociationWithName retrieves all amazonmq.ConfigurationAssociation items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceDiscoveryHttpNamespaceWithName(name string) (*resources.AWSServiceDiscoveryHttpNamespace, error) { +func (t *Template) GetAmazonMQConfigurationAssociationWithName(name string) (*amazonmq.ConfigurationAssociation, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryHttpNamespace: + case *amazonmq.ConfigurationAssociation: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceDiscoveryHttpNamespace not found", name) + return nil, fmt.Errorf("resource %q of type amazonmq.ConfigurationAssociation not found", name) } -// GetAllAWSServiceDiscoveryInstanceResources retrieves all AWSServiceDiscoveryInstance items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceDiscoveryInstanceResources() map[string]*resources.AWSServiceDiscoveryInstance { - results := map[string]*resources.AWSServiceDiscoveryInstance{} +// GetAllRoboMakerRobotApplicationResources retrieves all robomaker.RobotApplication items from an AWS CloudFormation template +func (t *Template) GetAllRoboMakerRobotApplicationResources() map[string]*robomaker.RobotApplication { + results := map[string]*robomaker.RobotApplication{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryInstance: + case *robomaker.RobotApplication: results[name] = resource } } return results } -// GetAWSServiceDiscoveryInstanceWithName retrieves all AWSServiceDiscoveryInstance items from an AWS CloudFormation template +// GetRoboMakerRobotApplicationWithName retrieves all robomaker.RobotApplication items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceDiscoveryInstanceWithName(name string) (*resources.AWSServiceDiscoveryInstance, error) { +func (t *Template) GetRoboMakerRobotApplicationWithName(name string) (*robomaker.RobotApplication, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryInstance: + case *robomaker.RobotApplication: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceDiscoveryInstance not found", name) + return nil, fmt.Errorf("resource %q of type robomaker.RobotApplication not found", name) } -// GetAllAWSServiceDiscoveryPrivateDnsNamespaceResources retrieves all AWSServiceDiscoveryPrivateDnsNamespace items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceDiscoveryPrivateDnsNamespaceResources() map[string]*resources.AWSServiceDiscoveryPrivateDnsNamespace { - results := map[string]*resources.AWSServiceDiscoveryPrivateDnsNamespace{} +// GetAllIAMManagedPolicyResources retrieves all iam.ManagedPolicy items from an AWS CloudFormation template +func (t *Template) GetAllIAMManagedPolicyResources() map[string]*iam.ManagedPolicy { + results := map[string]*iam.ManagedPolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryPrivateDnsNamespace: + case *iam.ManagedPolicy: results[name] = resource } } return results } -// GetAWSServiceDiscoveryPrivateDnsNamespaceWithName retrieves all AWSServiceDiscoveryPrivateDnsNamespace items from an AWS CloudFormation template +// GetIAMManagedPolicyWithName retrieves all iam.ManagedPolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceDiscoveryPrivateDnsNamespaceWithName(name string) (*resources.AWSServiceDiscoveryPrivateDnsNamespace, error) { +func (t *Template) GetIAMManagedPolicyWithName(name string) (*iam.ManagedPolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryPrivateDnsNamespace: + case *iam.ManagedPolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceDiscoveryPrivateDnsNamespace not found", name) + return nil, fmt.Errorf("resource %q of type iam.ManagedPolicy not found", name) } -// GetAllAWSServiceDiscoveryPublicDnsNamespaceResources retrieves all AWSServiceDiscoveryPublicDnsNamespace items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceDiscoveryPublicDnsNamespaceResources() map[string]*resources.AWSServiceDiscoveryPublicDnsNamespace { - results := map[string]*resources.AWSServiceDiscoveryPublicDnsNamespace{} +// GetAllNeptuneDBInstanceResources retrieves all neptune.DBInstance items from an AWS CloudFormation template +func (t *Template) GetAllNeptuneDBInstanceResources() map[string]*neptune.DBInstance { + results := map[string]*neptune.DBInstance{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryPublicDnsNamespace: + case *neptune.DBInstance: results[name] = resource } } return results } -// GetAWSServiceDiscoveryPublicDnsNamespaceWithName retrieves all AWSServiceDiscoveryPublicDnsNamespace items from an AWS CloudFormation template +// GetNeptuneDBInstanceWithName retrieves all neptune.DBInstance items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceDiscoveryPublicDnsNamespaceWithName(name string) (*resources.AWSServiceDiscoveryPublicDnsNamespace, error) { +func (t *Template) GetNeptuneDBInstanceWithName(name string) (*neptune.DBInstance, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryPublicDnsNamespace: + case *neptune.DBInstance: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceDiscoveryPublicDnsNamespace not found", name) + return nil, fmt.Errorf("resource %q of type neptune.DBInstance not found", name) } -// GetAllAWSServiceDiscoveryServiceResources retrieves all AWSServiceDiscoveryService items from an AWS CloudFormation template -func (t *Template) GetAllAWSServiceDiscoveryServiceResources() map[string]*resources.AWSServiceDiscoveryService { - results := map[string]*resources.AWSServiceDiscoveryService{} +// GetAllCognitoUserPoolUserToGroupAttachmentResources retrieves all cognito.UserPoolUserToGroupAttachment items from an AWS CloudFormation template +func (t *Template) GetAllCognitoUserPoolUserToGroupAttachmentResources() map[string]*cognito.UserPoolUserToGroupAttachment { + results := map[string]*cognito.UserPoolUserToGroupAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryService: + case *cognito.UserPoolUserToGroupAttachment: results[name] = resource } } return results } -// GetAWSServiceDiscoveryServiceWithName retrieves all AWSServiceDiscoveryService items from an AWS CloudFormation template +// GetCognitoUserPoolUserToGroupAttachmentWithName retrieves all cognito.UserPoolUserToGroupAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSServiceDiscoveryServiceWithName(name string) (*resources.AWSServiceDiscoveryService, error) { +func (t *Template) GetCognitoUserPoolUserToGroupAttachmentWithName(name string) (*cognito.UserPoolUserToGroupAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSServiceDiscoveryService: + case *cognito.UserPoolUserToGroupAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSServiceDiscoveryService not found", name) + return nil, fmt.Errorf("resource %q of type cognito.UserPoolUserToGroupAttachment not found", name) } -// GetAllAWSStepFunctionsActivityResources retrieves all AWSStepFunctionsActivity items from an AWS CloudFormation template -func (t *Template) GetAllAWSStepFunctionsActivityResources() map[string]*resources.AWSStepFunctionsActivity { - results := map[string]*resources.AWSStepFunctionsActivity{} +// GetAllCognitoIdentityPoolRoleAttachmentResources retrieves all cognito.IdentityPoolRoleAttachment items from an AWS CloudFormation template +func (t *Template) GetAllCognitoIdentityPoolRoleAttachmentResources() map[string]*cognito.IdentityPoolRoleAttachment { + results := map[string]*cognito.IdentityPoolRoleAttachment{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSStepFunctionsActivity: + case *cognito.IdentityPoolRoleAttachment: results[name] = resource } } return results } -// GetAWSStepFunctionsActivityWithName retrieves all AWSStepFunctionsActivity items from an AWS CloudFormation template +// GetCognitoIdentityPoolRoleAttachmentWithName retrieves all cognito.IdentityPoolRoleAttachment items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSStepFunctionsActivityWithName(name string) (*resources.AWSStepFunctionsActivity, error) { +func (t *Template) GetCognitoIdentityPoolRoleAttachmentWithName(name string) (*cognito.IdentityPoolRoleAttachment, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSStepFunctionsActivity: + case *cognito.IdentityPoolRoleAttachment: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSStepFunctionsActivity not found", name) + return nil, fmt.Errorf("resource %q of type cognito.IdentityPoolRoleAttachment not found", name) } -// GetAllAWSStepFunctionsStateMachineResources retrieves all AWSStepFunctionsStateMachine items from an AWS CloudFormation template -func (t *Template) GetAllAWSStepFunctionsStateMachineResources() map[string]*resources.AWSStepFunctionsStateMachine { - results := map[string]*resources.AWSStepFunctionsStateMachine{} +// GetAllSageMakerNotebookInstanceLifecycleConfigResources retrieves all sagemaker.NotebookInstanceLifecycleConfig items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerNotebookInstanceLifecycleConfigResources() map[string]*sagemaker.NotebookInstanceLifecycleConfig { + results := map[string]*sagemaker.NotebookInstanceLifecycleConfig{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSStepFunctionsStateMachine: + case *sagemaker.NotebookInstanceLifecycleConfig: results[name] = resource } } return results } -// GetAWSStepFunctionsStateMachineWithName retrieves all AWSStepFunctionsStateMachine items from an AWS CloudFormation template +// GetSageMakerNotebookInstanceLifecycleConfigWithName retrieves all sagemaker.NotebookInstanceLifecycleConfig items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSStepFunctionsStateMachineWithName(name string) (*resources.AWSStepFunctionsStateMachine, error) { +func (t *Template) GetSageMakerNotebookInstanceLifecycleConfigWithName(name string) (*sagemaker.NotebookInstanceLifecycleConfig, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSStepFunctionsStateMachine: + case *sagemaker.NotebookInstanceLifecycleConfig: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSStepFunctionsStateMachine not found", name) + return nil, fmt.Errorf("resource %q of type sagemaker.NotebookInstanceLifecycleConfig not found", name) } -// GetAllAWSTransferServerResources retrieves all AWSTransferServer items from an AWS CloudFormation template -func (t *Template) GetAllAWSTransferServerResources() map[string]*resources.AWSTransferServer { - results := map[string]*resources.AWSTransferServer{} +// GetAllNeptuneDBClusterResources retrieves all neptune.DBCluster items from an AWS CloudFormation template +func (t *Template) GetAllNeptuneDBClusterResources() map[string]*neptune.DBCluster { + results := map[string]*neptune.DBCluster{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSTransferServer: + case *neptune.DBCluster: results[name] = resource } } return results } -// GetAWSTransferServerWithName retrieves all AWSTransferServer items from an AWS CloudFormation template +// GetNeptuneDBClusterWithName retrieves all neptune.DBCluster items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSTransferServerWithName(name string) (*resources.AWSTransferServer, error) { +func (t *Template) GetNeptuneDBClusterWithName(name string) (*neptune.DBCluster, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSTransferServer: + case *neptune.DBCluster: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSTransferServer not found", name) + return nil, fmt.Errorf("resource %q of type neptune.DBCluster not found", name) } -// GetAllAWSTransferUserResources retrieves all AWSTransferUser items from an AWS CloudFormation template -func (t *Template) GetAllAWSTransferUserResources() map[string]*resources.AWSTransferUser { - results := map[string]*resources.AWSTransferUser{} +// GetAllIoTEventsDetectorModelResources retrieves all iotevents.DetectorModel items from an AWS CloudFormation template +func (t *Template) GetAllIoTEventsDetectorModelResources() map[string]*iotevents.DetectorModel { + results := map[string]*iotevents.DetectorModel{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSTransferUser: + case *iotevents.DetectorModel: results[name] = resource } } return results } -// GetAWSTransferUserWithName retrieves all AWSTransferUser items from an AWS CloudFormation template +// GetIoTEventsDetectorModelWithName retrieves all iotevents.DetectorModel items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSTransferUserWithName(name string) (*resources.AWSTransferUser, error) { +func (t *Template) GetIoTEventsDetectorModelWithName(name string) (*iotevents.DetectorModel, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSTransferUser: + case *iotevents.DetectorModel: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSTransferUser not found", name) + return nil, fmt.Errorf("resource %q of type iotevents.DetectorModel not found", name) } -// GetAllAWSWAFByteMatchSetResources retrieves all AWSWAFByteMatchSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFByteMatchSetResources() map[string]*resources.AWSWAFByteMatchSet { - results := map[string]*resources.AWSWAFByteMatchSet{} +// GetAllDocDBDBSubnetGroupResources retrieves all docdb.DBSubnetGroup items from an AWS CloudFormation template +func (t *Template) GetAllDocDBDBSubnetGroupResources() map[string]*docdb.DBSubnetGroup { + results := map[string]*docdb.DBSubnetGroup{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFByteMatchSet: + case *docdb.DBSubnetGroup: results[name] = resource } } return results } -// GetAWSWAFByteMatchSetWithName retrieves all AWSWAFByteMatchSet items from an AWS CloudFormation template +// GetDocDBDBSubnetGroupWithName retrieves all docdb.DBSubnetGroup items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFByteMatchSetWithName(name string) (*resources.AWSWAFByteMatchSet, error) { +func (t *Template) GetDocDBDBSubnetGroupWithName(name string) (*docdb.DBSubnetGroup, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFByteMatchSet: + case *docdb.DBSubnetGroup: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFByteMatchSet not found", name) + return nil, fmt.Errorf("resource %q of type docdb.DBSubnetGroup not found", name) } -// GetAllAWSWAFIPSetResources retrieves all AWSWAFIPSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFIPSetResources() map[string]*resources.AWSWAFIPSet { - results := map[string]*resources.AWSWAFIPSet{} +// GetAllSQSQueuePolicyResources retrieves all sqs.QueuePolicy items from an AWS CloudFormation template +func (t *Template) GetAllSQSQueuePolicyResources() map[string]*sqs.QueuePolicy { + results := map[string]*sqs.QueuePolicy{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFIPSet: + case *sqs.QueuePolicy: results[name] = resource } } return results } -// GetAWSWAFIPSetWithName retrieves all AWSWAFIPSet items from an AWS CloudFormation template +// GetSQSQueuePolicyWithName retrieves all sqs.QueuePolicy items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFIPSetWithName(name string) (*resources.AWSWAFIPSet, error) { +func (t *Template) GetSQSQueuePolicyWithName(name string) (*sqs.QueuePolicy, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFIPSet: + case *sqs.QueuePolicy: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFIPSet not found", name) + return nil, fmt.Errorf("resource %q of type sqs.QueuePolicy not found", name) } -// GetAllAWSWAFRuleResources retrieves all AWSWAFRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRuleResources() map[string]*resources.AWSWAFRule { - results := map[string]*resources.AWSWAFRule{} +// GetAllECSTaskDefinitionResources retrieves all ecs.TaskDefinition items from an AWS CloudFormation template +func (t *Template) GetAllECSTaskDefinitionResources() map[string]*ecs.TaskDefinition { + results := map[string]*ecs.TaskDefinition{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRule: + case *ecs.TaskDefinition: results[name] = resource } } return results } -// GetAWSWAFRuleWithName retrieves all AWSWAFRule items from an AWS CloudFormation template +// GetECSTaskDefinitionWithName retrieves all ecs.TaskDefinition items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRuleWithName(name string) (*resources.AWSWAFRule, error) { +func (t *Template) GetECSTaskDefinitionWithName(name string) (*ecs.TaskDefinition, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRule: + case *ecs.TaskDefinition: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRule not found", name) + return nil, fmt.Errorf("resource %q of type ecs.TaskDefinition not found", name) } -// GetAllAWSWAFSizeConstraintSetResources retrieves all AWSWAFSizeConstraintSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFSizeConstraintSetResources() map[string]*resources.AWSWAFSizeConstraintSet { - results := map[string]*resources.AWSWAFSizeConstraintSet{} +// GetAllAppStreamStackResources retrieves all appstream.Stack items from an AWS CloudFormation template +func (t *Template) GetAllAppStreamStackResources() map[string]*appstream.Stack { + results := map[string]*appstream.Stack{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFSizeConstraintSet: + case *appstream.Stack: results[name] = resource } } return results } -// GetAWSWAFSizeConstraintSetWithName retrieves all AWSWAFSizeConstraintSet items from an AWS CloudFormation template +// GetAppStreamStackWithName retrieves all appstream.Stack items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFSizeConstraintSetWithName(name string) (*resources.AWSWAFSizeConstraintSet, error) { +func (t *Template) GetAppStreamStackWithName(name string) (*appstream.Stack, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFSizeConstraintSet: + case *appstream.Stack: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFSizeConstraintSet not found", name) + return nil, fmt.Errorf("resource %q of type appstream.Stack not found", name) } -// GetAllAWSWAFSqlInjectionMatchSetResources retrieves all AWSWAFSqlInjectionMatchSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFSqlInjectionMatchSetResources() map[string]*resources.AWSWAFSqlInjectionMatchSet { - results := map[string]*resources.AWSWAFSqlInjectionMatchSet{} +// GetAllCloud9EnvironmentEC2Resources retrieves all cloud9.EnvironmentEC2 items from an AWS CloudFormation template +func (t *Template) GetAllCloud9EnvironmentEC2Resources() map[string]*cloud9.EnvironmentEC2 { + results := map[string]*cloud9.EnvironmentEC2{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFSqlInjectionMatchSet: + case *cloud9.EnvironmentEC2: results[name] = resource } } return results } -// GetAWSWAFSqlInjectionMatchSetWithName retrieves all AWSWAFSqlInjectionMatchSet items from an AWS CloudFormation template +// GetCloud9EnvironmentEC2WithName retrieves all cloud9.EnvironmentEC2 items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFSqlInjectionMatchSetWithName(name string) (*resources.AWSWAFSqlInjectionMatchSet, error) { +func (t *Template) GetCloud9EnvironmentEC2WithName(name string) (*cloud9.EnvironmentEC2, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFSqlInjectionMatchSet: + case *cloud9.EnvironmentEC2: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFSqlInjectionMatchSet not found", name) + return nil, fmt.Errorf("resource %q of type cloud9.EnvironmentEC2 not found", name) } -// GetAllAWSWAFWebACLResources retrieves all AWSWAFWebACL items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFWebACLResources() map[string]*resources.AWSWAFWebACL { - results := map[string]*resources.AWSWAFWebACL{} +// GetAllKinesisAnalyticsV2ApplicationOutputResources retrieves all kinesisanalyticsv2.ApplicationOutput items from an AWS CloudFormation template +func (t *Template) GetAllKinesisAnalyticsV2ApplicationOutputResources() map[string]*kinesisanalyticsv2.ApplicationOutput { + results := map[string]*kinesisanalyticsv2.ApplicationOutput{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFWebACL: + case *kinesisanalyticsv2.ApplicationOutput: results[name] = resource } } return results } -// GetAWSWAFWebACLWithName retrieves all AWSWAFWebACL items from an AWS CloudFormation template +// GetKinesisAnalyticsV2ApplicationOutputWithName retrieves all kinesisanalyticsv2.ApplicationOutput items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFWebACLWithName(name string) (*resources.AWSWAFWebACL, error) { +func (t *Template) GetKinesisAnalyticsV2ApplicationOutputWithName(name string) (*kinesisanalyticsv2.ApplicationOutput, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFWebACL: + case *kinesisanalyticsv2.ApplicationOutput: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFWebACL not found", name) + return nil, fmt.Errorf("resource %q of type kinesisanalyticsv2.ApplicationOutput not found", name) } -// GetAllAWSWAFXssMatchSetResources retrieves all AWSWAFXssMatchSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFXssMatchSetResources() map[string]*resources.AWSWAFXssMatchSet { - results := map[string]*resources.AWSWAFXssMatchSet{} +// GetAllWAFRegionalWebACLResources retrieves all wafregional.WebACL items from an AWS CloudFormation template +func (t *Template) GetAllWAFRegionalWebACLResources() map[string]*wafregional.WebACL { + results := map[string]*wafregional.WebACL{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFXssMatchSet: + case *wafregional.WebACL: results[name] = resource } } return results } -// GetAWSWAFXssMatchSetWithName retrieves all AWSWAFXssMatchSet items from an AWS CloudFormation template +// GetWAFRegionalWebACLWithName retrieves all wafregional.WebACL items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFXssMatchSetWithName(name string) (*resources.AWSWAFXssMatchSet, error) { +func (t *Template) GetWAFRegionalWebACLWithName(name string) (*wafregional.WebACL, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFXssMatchSet: + case *wafregional.WebACL: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFXssMatchSet not found", name) + return nil, fmt.Errorf("resource %q of type wafregional.WebACL not found", name) } -// GetAllAWSWAFRegionalByteMatchSetResources retrieves all AWSWAFRegionalByteMatchSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalByteMatchSetResources() map[string]*resources.AWSWAFRegionalByteMatchSet { - results := map[string]*resources.AWSWAFRegionalByteMatchSet{} +// GetAllEC2NetworkInterfacePermissionResources retrieves all ec2.NetworkInterfacePermission items from an AWS CloudFormation template +func (t *Template) GetAllEC2NetworkInterfacePermissionResources() map[string]*ec2.NetworkInterfacePermission { + results := map[string]*ec2.NetworkInterfacePermission{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalByteMatchSet: + case *ec2.NetworkInterfacePermission: results[name] = resource } } return results } -// GetAWSWAFRegionalByteMatchSetWithName retrieves all AWSWAFRegionalByteMatchSet items from an AWS CloudFormation template +// GetEC2NetworkInterfacePermissionWithName retrieves all ec2.NetworkInterfacePermission items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalByteMatchSetWithName(name string) (*resources.AWSWAFRegionalByteMatchSet, error) { +func (t *Template) GetEC2NetworkInterfacePermissionWithName(name string) (*ec2.NetworkInterfacePermission, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalByteMatchSet: + case *ec2.NetworkInterfacePermission: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalByteMatchSet not found", name) + return nil, fmt.Errorf("resource %q of type ec2.NetworkInterfacePermission not found", name) } -// GetAllAWSWAFRegionalGeoMatchSetResources retrieves all AWSWAFRegionalGeoMatchSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalGeoMatchSetResources() map[string]*resources.AWSWAFRegionalGeoMatchSet { - results := map[string]*resources.AWSWAFRegionalGeoMatchSet{} +// GetAllApiGatewayUsagePlanResources retrieves all apigateway.UsagePlan items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayUsagePlanResources() map[string]*apigateway.UsagePlan { + results := map[string]*apigateway.UsagePlan{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalGeoMatchSet: + case *apigateway.UsagePlan: results[name] = resource } } return results } -// GetAWSWAFRegionalGeoMatchSetWithName retrieves all AWSWAFRegionalGeoMatchSet items from an AWS CloudFormation template +// GetApiGatewayUsagePlanWithName retrieves all apigateway.UsagePlan items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalGeoMatchSetWithName(name string) (*resources.AWSWAFRegionalGeoMatchSet, error) { +func (t *Template) GetApiGatewayUsagePlanWithName(name string) (*apigateway.UsagePlan, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalGeoMatchSet: + case *apigateway.UsagePlan: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalGeoMatchSet not found", name) + return nil, fmt.Errorf("resource %q of type apigateway.UsagePlan not found", name) } -// GetAllAWSWAFRegionalIPSetResources retrieves all AWSWAFRegionalIPSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalIPSetResources() map[string]*resources.AWSWAFRegionalIPSet { - results := map[string]*resources.AWSWAFRegionalIPSet{} +// GetAllKinesisStreamConsumerResources retrieves all kinesis.StreamConsumer items from an AWS CloudFormation template +func (t *Template) GetAllKinesisStreamConsumerResources() map[string]*kinesis.StreamConsumer { + results := map[string]*kinesis.StreamConsumer{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalIPSet: + case *kinesis.StreamConsumer: results[name] = resource } } return results } -// GetAWSWAFRegionalIPSetWithName retrieves all AWSWAFRegionalIPSet items from an AWS CloudFormation template +// GetKinesisStreamConsumerWithName retrieves all kinesis.StreamConsumer items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalIPSetWithName(name string) (*resources.AWSWAFRegionalIPSet, error) { +func (t *Template) GetKinesisStreamConsumerWithName(name string) (*kinesis.StreamConsumer, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalIPSet: + case *kinesis.StreamConsumer: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalIPSet not found", name) + return nil, fmt.Errorf("resource %q of type kinesis.StreamConsumer not found", name) } -// GetAllAWSWAFRegionalRateBasedRuleResources retrieves all AWSWAFRegionalRateBasedRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalRateBasedRuleResources() map[string]*resources.AWSWAFRegionalRateBasedRule { - results := map[string]*resources.AWSWAFRegionalRateBasedRule{} +// GetAllAmplifyDomainResources retrieves all amplify.Domain items from an AWS CloudFormation template +func (t *Template) GetAllAmplifyDomainResources() map[string]*amplify.Domain { + results := map[string]*amplify.Domain{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalRateBasedRule: + case *amplify.Domain: results[name] = resource } } return results } -// GetAWSWAFRegionalRateBasedRuleWithName retrieves all AWSWAFRegionalRateBasedRule items from an AWS CloudFormation template +// GetAmplifyDomainWithName retrieves all amplify.Domain items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalRateBasedRuleWithName(name string) (*resources.AWSWAFRegionalRateBasedRule, error) { +func (t *Template) GetAmplifyDomainWithName(name string) (*amplify.Domain, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalRateBasedRule: + case *amplify.Domain: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalRateBasedRule not found", name) + return nil, fmt.Errorf("resource %q of type amplify.Domain not found", name) } -// GetAllAWSWAFRegionalRegexPatternSetResources retrieves all AWSWAFRegionalRegexPatternSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalRegexPatternSetResources() map[string]*resources.AWSWAFRegionalRegexPatternSet { - results := map[string]*resources.AWSWAFRegionalRegexPatternSet{} +// GetAllIoT1ClickProjectResources retrieves all iot1click.Project items from an AWS CloudFormation template +func (t *Template) GetAllIoT1ClickProjectResources() map[string]*iot1click.Project { + results := map[string]*iot1click.Project{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalRegexPatternSet: + case *iot1click.Project: results[name] = resource } } return results } -// GetAWSWAFRegionalRegexPatternSetWithName retrieves all AWSWAFRegionalRegexPatternSet items from an AWS CloudFormation template +// GetIoT1ClickProjectWithName retrieves all iot1click.Project items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalRegexPatternSetWithName(name string) (*resources.AWSWAFRegionalRegexPatternSet, error) { +func (t *Template) GetIoT1ClickProjectWithName(name string) (*iot1click.Project, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalRegexPatternSet: + case *iot1click.Project: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalRegexPatternSet not found", name) + return nil, fmt.Errorf("resource %q of type iot1click.Project not found", name) } -// GetAllAWSWAFRegionalRuleResources retrieves all AWSWAFRegionalRule items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalRuleResources() map[string]*resources.AWSWAFRegionalRule { - results := map[string]*resources.AWSWAFRegionalRule{} +// GetAllCloudFormationStackResources retrieves all cloudformation.Stack items from an AWS CloudFormation template +func (t *Template) GetAllCloudFormationStackResources() map[string]*cloudformation.Stack { + results := map[string]*cloudformation.Stack{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalRule: + case *cloudformation.Stack: results[name] = resource } } return results } -// GetAWSWAFRegionalRuleWithName retrieves all AWSWAFRegionalRule items from an AWS CloudFormation template +// GetCloudFormationStackWithName retrieves all cloudformation.Stack items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalRuleWithName(name string) (*resources.AWSWAFRegionalRule, error) { +func (t *Template) GetCloudFormationStackWithName(name string) (*cloudformation.Stack, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalRule: + case *cloudformation.Stack: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalRule not found", name) + return nil, fmt.Errorf("resource %q of type cloudformation.Stack not found", name) } -// GetAllAWSWAFRegionalSizeConstraintSetResources retrieves all AWSWAFRegionalSizeConstraintSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalSizeConstraintSetResources() map[string]*resources.AWSWAFRegionalSizeConstraintSet { - results := map[string]*resources.AWSWAFRegionalSizeConstraintSet{} +// GetAllApiGatewayV2ApiResources retrieves all apigatewayv2.Api items from an AWS CloudFormation template +func (t *Template) GetAllApiGatewayV2ApiResources() map[string]*apigatewayv2.Api { + results := map[string]*apigatewayv2.Api{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalSizeConstraintSet: + case *apigatewayv2.Api: results[name] = resource } } return results } -// GetAWSWAFRegionalSizeConstraintSetWithName retrieves all AWSWAFRegionalSizeConstraintSet items from an AWS CloudFormation template +// GetApiGatewayV2ApiWithName retrieves all apigatewayv2.Api items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalSizeConstraintSetWithName(name string) (*resources.AWSWAFRegionalSizeConstraintSet, error) { +func (t *Template) GetApiGatewayV2ApiWithName(name string) (*apigatewayv2.Api, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalSizeConstraintSet: + case *apigatewayv2.Api: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalSizeConstraintSet not found", name) + return nil, fmt.Errorf("resource %q of type apigatewayv2.Api not found", name) } -// GetAllAWSWAFRegionalSqlInjectionMatchSetResources retrieves all AWSWAFRegionalSqlInjectionMatchSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalSqlInjectionMatchSetResources() map[string]*resources.AWSWAFRegionalSqlInjectionMatchSet { - results := map[string]*resources.AWSWAFRegionalSqlInjectionMatchSet{} +// GetAllIoTCertificateResources retrieves all iot.Certificate items from an AWS CloudFormation template +func (t *Template) GetAllIoTCertificateResources() map[string]*iot.Certificate { + results := map[string]*iot.Certificate{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalSqlInjectionMatchSet: + case *iot.Certificate: results[name] = resource } } return results } -// GetAWSWAFRegionalSqlInjectionMatchSetWithName retrieves all AWSWAFRegionalSqlInjectionMatchSet items from an AWS CloudFormation template +// GetIoTCertificateWithName retrieves all iot.Certificate items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalSqlInjectionMatchSetWithName(name string) (*resources.AWSWAFRegionalSqlInjectionMatchSet, error) { +func (t *Template) GetIoTCertificateWithName(name string) (*iot.Certificate, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalSqlInjectionMatchSet: + case *iot.Certificate: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalSqlInjectionMatchSet not found", name) + return nil, fmt.Errorf("resource %q of type iot.Certificate not found", name) } -// GetAllAWSWAFRegionalWebACLResources retrieves all AWSWAFRegionalWebACL items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalWebACLResources() map[string]*resources.AWSWAFRegionalWebACL { - results := map[string]*resources.AWSWAFRegionalWebACL{} +// GetAllServerlessSimpleTableResources retrieves all serverless.SimpleTable items from an AWS CloudFormation template +func (t *Template) GetAllServerlessSimpleTableResources() map[string]*serverless.SimpleTable { + results := map[string]*serverless.SimpleTable{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalWebACL: + case *serverless.SimpleTable: results[name] = resource } } return results } -// GetAWSWAFRegionalWebACLWithName retrieves all AWSWAFRegionalWebACL items from an AWS CloudFormation template +// GetServerlessSimpleTableWithName retrieves all serverless.SimpleTable items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalWebACLWithName(name string) (*resources.AWSWAFRegionalWebACL, error) { +func (t *Template) GetServerlessSimpleTableWithName(name string) (*serverless.SimpleTable, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalWebACL: + case *serverless.SimpleTable: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalWebACL not found", name) + return nil, fmt.Errorf("resource %q of type serverless.SimpleTable not found", name) } -// GetAllAWSWAFRegionalWebACLAssociationResources retrieves all AWSWAFRegionalWebACLAssociation items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalWebACLAssociationResources() map[string]*resources.AWSWAFRegionalWebACLAssociation { - results := map[string]*resources.AWSWAFRegionalWebACLAssociation{} +// GetAllServerlessLayerVersionResources retrieves all serverless.LayerVersion items from an AWS CloudFormation template +func (t *Template) GetAllServerlessLayerVersionResources() map[string]*serverless.LayerVersion { + results := map[string]*serverless.LayerVersion{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalWebACLAssociation: + case *serverless.LayerVersion: results[name] = resource } } return results } -// GetAWSWAFRegionalWebACLAssociationWithName retrieves all AWSWAFRegionalWebACLAssociation items from an AWS CloudFormation template +// GetServerlessLayerVersionWithName retrieves all serverless.LayerVersion items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalWebACLAssociationWithName(name string) (*resources.AWSWAFRegionalWebACLAssociation, error) { +func (t *Template) GetServerlessLayerVersionWithName(name string) (*serverless.LayerVersion, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalWebACLAssociation: + case *serverless.LayerVersion: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalWebACLAssociation not found", name) + return nil, fmt.Errorf("resource %q of type serverless.LayerVersion not found", name) } -// GetAllAWSWAFRegionalXssMatchSetResources retrieves all AWSWAFRegionalXssMatchSet items from an AWS CloudFormation template -func (t *Template) GetAllAWSWAFRegionalXssMatchSetResources() map[string]*resources.AWSWAFRegionalXssMatchSet { - results := map[string]*resources.AWSWAFRegionalXssMatchSet{} +// GetAllServerlessFunctionResources retrieves all serverless.Function items from an AWS CloudFormation template +func (t *Template) GetAllServerlessFunctionResources() map[string]*serverless.Function { + results := map[string]*serverless.Function{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalXssMatchSet: + case *serverless.Function: results[name] = resource } } return results } -// GetAWSWAFRegionalXssMatchSetWithName retrieves all AWSWAFRegionalXssMatchSet items from an AWS CloudFormation template +// GetServerlessFunctionWithName retrieves all serverless.Function items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWAFRegionalXssMatchSetWithName(name string) (*resources.AWSWAFRegionalXssMatchSet, error) { +func (t *Template) GetServerlessFunctionWithName(name string) (*serverless.Function, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWAFRegionalXssMatchSet: + case *serverless.Function: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWAFRegionalXssMatchSet not found", name) + return nil, fmt.Errorf("resource %q of type serverless.Function not found", name) } -// GetAllAWSWorkSpacesWorkspaceResources retrieves all AWSWorkSpacesWorkspace items from an AWS CloudFormation template -func (t *Template) GetAllAWSWorkSpacesWorkspaceResources() map[string]*resources.AWSWorkSpacesWorkspace { - results := map[string]*resources.AWSWorkSpacesWorkspace{} +// GetAllServerlessApiResources retrieves all serverless.Api items from an AWS CloudFormation template +func (t *Template) GetAllServerlessApiResources() map[string]*serverless.Api { + results := map[string]*serverless.Api{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AWSWorkSpacesWorkspace: + case *serverless.Api: results[name] = resource } } return results } -// GetAWSWorkSpacesWorkspaceWithName retrieves all AWSWorkSpacesWorkspace items from an AWS CloudFormation template +// GetServerlessApiWithName retrieves all serverless.Api items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAWSWorkSpacesWorkspaceWithName(name string) (*resources.AWSWorkSpacesWorkspace, error) { +func (t *Template) GetServerlessApiWithName(name string) (*serverless.Api, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AWSWorkSpacesWorkspace: + case *serverless.Api: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AWSWorkSpacesWorkspace not found", name) + return nil, fmt.Errorf("resource %q of type serverless.Api not found", name) } -// GetAllAlexaASKSkillResources retrieves all AlexaASKSkill items from an AWS CloudFormation template -func (t *Template) GetAllAlexaASKSkillResources() map[string]*resources.AlexaASKSkill { - results := map[string]*resources.AlexaASKSkill{} +// GetAllServerlessApplicationResources retrieves all serverless.Application items from an AWS CloudFormation template +func (t *Template) GetAllServerlessApplicationResources() map[string]*serverless.Application { + results := map[string]*serverless.Application{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.AlexaASKSkill: + case *serverless.Application: results[name] = resource } } return results } -// GetAlexaASKSkillWithName retrieves all AlexaASKSkill items from an AWS CloudFormation template +// GetServerlessApplicationWithName retrieves all serverless.Application items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) GetAlexaASKSkillWithName(name string) (*resources.AlexaASKSkill, error) { +func (t *Template) GetServerlessApplicationWithName(name string) (*serverless.Application, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.AlexaASKSkill: + case *serverless.Application: return resource, nil } } - return nil, fmt.Errorf("resource %q of type AlexaASKSkill not found", name) + return nil, fmt.Errorf("resource %q of type serverless.Application not found", name) } diff --git a/cloudformation/resources/aws-amazonmq-broker.go b/cloudformation/amazonmq/aws-amazonmq-broker.go similarity index 83% rename from cloudformation/resources/aws-amazonmq-broker.go rename to cloudformation/amazonmq/aws-amazonmq-broker.go index 604afaabdb..e4e1ae1403 100644 --- a/cloudformation/resources/aws-amazonmq-broker.go +++ b/cloudformation/amazonmq/aws-amazonmq-broker.go @@ -1,15 +1,16 @@ -package resources +package amazonmq import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAmazonMQBroker AWS CloudFormation Resource (AWS::AmazonMQ::Broker) +// Broker AWS CloudFormation Resource (AWS::AmazonMQ::Broker) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html -type AWSAmazonMQBroker struct { +type Broker struct { // AutoMinorVersionUpgrade AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSAmazonMQBroker struct { // Configuration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-configuration - Configuration *AWSAmazonMQBroker_ConfigurationId `json:"Configuration,omitempty"` + Configuration *Broker_ConfigurationId `json:"Configuration,omitempty"` // DeploymentMode AWS CloudFormation Property // Required: true @@ -34,7 +35,7 @@ type AWSAmazonMQBroker struct { // EncryptionOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-encryptionoptions - EncryptionOptions *AWSAmazonMQBroker_EncryptionOptions `json:"EncryptionOptions,omitempty"` + EncryptionOptions *Broker_EncryptionOptions `json:"EncryptionOptions,omitempty"` // EngineType AWS CloudFormation Property // Required: true @@ -54,12 +55,12 @@ type AWSAmazonMQBroker struct { // Logs AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-logs - Logs *AWSAmazonMQBroker_LogList `json:"Logs,omitempty"` + Logs *Broker_LogList `json:"Logs,omitempty"` // MaintenanceWindowStartTime AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-maintenancewindowstarttime - MaintenanceWindowStartTime *AWSAmazonMQBroker_MaintenanceWindow `json:"MaintenanceWindowStartTime,omitempty"` + MaintenanceWindowStartTime *Broker_MaintenanceWindow `json:"MaintenanceWindowStartTime,omitempty"` // PubliclyAccessible AWS CloudFormation Property // Required: true @@ -79,12 +80,12 @@ type AWSAmazonMQBroker struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-tags - Tags []AWSAmazonMQBroker_TagsEntry `json:"Tags,omitempty"` + Tags []Broker_TagsEntry `json:"Tags,omitempty"` // Users AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-users - Users []AWSAmazonMQBroker_User `json:"Users,omitempty"` + Users []Broker_User `json:"Users,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -97,50 +98,50 @@ type AWSAmazonMQBroker struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker) AWSCloudFormationType() string { +func (r *Broker) AWSCloudFormationType() string { return "AWS::AmazonMQ::Broker" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker) DependsOn() []string { +func (r *Broker) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker) SetDependsOn(dependencies []string) { +func (r *Broker) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker) Metadata() map[string]interface{} { +func (r *Broker) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker) SetMetadata(metadata map[string]interface{}) { +func (r *Broker) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker) DeletionPolicy() policies.DeletionPolicy { +func (r *Broker) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Broker) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAmazonMQBroker) MarshalJSON() ([]byte, error) { - type Properties AWSAmazonMQBroker +func (r Broker) MarshalJSON() ([]byte, error) { + type Properties Broker return json.Marshal(&struct { Type string Properties Properties @@ -158,8 +159,8 @@ func (r AWSAmazonMQBroker) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAmazonMQBroker) UnmarshalJSON(b []byte) error { - type Properties AWSAmazonMQBroker +func (r *Broker) UnmarshalJSON(b []byte) error { + type Properties Broker res := &struct { Type string Properties *Properties @@ -178,7 +179,7 @@ func (r *AWSAmazonMQBroker) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAmazonMQBroker(*res.Properties) + *r = Broker(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/amazonmq/aws-amazonmq-broker_configurationid.go b/cloudformation/amazonmq/aws-amazonmq-broker_configurationid.go new file mode 100644 index 0000000000..0d5b1f8e3a --- /dev/null +++ b/cloudformation/amazonmq/aws-amazonmq-broker_configurationid.go @@ -0,0 +1,70 @@ +package amazonmq + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Broker_ConfigurationId AWS CloudFormation Resource (AWS::AmazonMQ::Broker.ConfigurationId) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html +type Broker_ConfigurationId struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html#cfn-amazonmq-broker-configurationid-id + Id string `json:"Id,omitempty"` + + // Revision AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html#cfn-amazonmq-broker-configurationid-revision + Revision int `json:"Revision"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Broker_ConfigurationId) AWSCloudFormationType() string { + return "AWS::AmazonMQ::Broker.ConfigurationId" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Broker_ConfigurationId) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Broker_ConfigurationId) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Broker_ConfigurationId) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Broker_ConfigurationId) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Broker_ConfigurationId) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Broker_ConfigurationId) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/amazonmq/aws-amazonmq-broker_encryptionoptions.go b/cloudformation/amazonmq/aws-amazonmq-broker_encryptionoptions.go new file mode 100644 index 0000000000..2645dc8880 --- /dev/null +++ b/cloudformation/amazonmq/aws-amazonmq-broker_encryptionoptions.go @@ -0,0 +1,70 @@ +package amazonmq + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Broker_EncryptionOptions AWS CloudFormation Resource (AWS::AmazonMQ::Broker.EncryptionOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html +type Broker_EncryptionOptions struct { + + // KmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html#cfn-amazonmq-broker-encryptionoptions-kmskeyid + KmsKeyId string `json:"KmsKeyId,omitempty"` + + // UseAwsOwnedKey AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html#cfn-amazonmq-broker-encryptionoptions-useawsownedkey + UseAwsOwnedKey bool `json:"UseAwsOwnedKey"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Broker_EncryptionOptions) AWSCloudFormationType() string { + return "AWS::AmazonMQ::Broker.EncryptionOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Broker_EncryptionOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Broker_EncryptionOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Broker_EncryptionOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Broker_EncryptionOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Broker_EncryptionOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Broker_EncryptionOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-amazonmq-broker_loglist.go b/cloudformation/amazonmq/aws-amazonmq-broker_loglist.go similarity index 75% rename from cloudformation/resources/aws-amazonmq-broker_loglist.go rename to cloudformation/amazonmq/aws-amazonmq-broker_loglist.go index 30ea9966a9..a5c6ab3b21 100644 --- a/cloudformation/resources/aws-amazonmq-broker_loglist.go +++ b/cloudformation/amazonmq/aws-amazonmq-broker_loglist.go @@ -1,10 +1,12 @@ -package resources +package amazonmq -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAmazonMQBroker_LogList AWS CloudFormation Resource (AWS::AmazonMQ::Broker.LogList) +// Broker_LogList AWS CloudFormation Resource (AWS::AmazonMQ::Broker.LogList) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-loglist.html -type AWSAmazonMQBroker_LogList struct { +type Broker_LogList struct { // Audit AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSAmazonMQBroker_LogList struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker_LogList) AWSCloudFormationType() string { +func (r *Broker_LogList) AWSCloudFormationType() string { return "AWS::AmazonMQ::Broker.LogList" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_LogList) DependsOn() []string { +func (r *Broker_LogList) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_LogList) SetDependsOn(dependencies []string) { +func (r *Broker_LogList) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_LogList) Metadata() map[string]interface{} { +func (r *Broker_LogList) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_LogList) SetMetadata(metadata map[string]interface{}) { +func (r *Broker_LogList) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_LogList) DeletionPolicy() policies.DeletionPolicy { +func (r *Broker_LogList) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_LogList) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Broker_LogList) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-amazonmq-broker_maintenancewindow.go b/cloudformation/amazonmq/aws-amazonmq-broker_maintenancewindow.go similarity index 75% rename from cloudformation/resources/aws-amazonmq-broker_maintenancewindow.go rename to cloudformation/amazonmq/aws-amazonmq-broker_maintenancewindow.go index 7dadef30d4..e93d1c8504 100644 --- a/cloudformation/resources/aws-amazonmq-broker_maintenancewindow.go +++ b/cloudformation/amazonmq/aws-amazonmq-broker_maintenancewindow.go @@ -1,10 +1,12 @@ -package resources +package amazonmq -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAmazonMQBroker_MaintenanceWindow AWS CloudFormation Resource (AWS::AmazonMQ::Broker.MaintenanceWindow) +// Broker_MaintenanceWindow AWS CloudFormation Resource (AWS::AmazonMQ::Broker.MaintenanceWindow) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html -type AWSAmazonMQBroker_MaintenanceWindow struct { +type Broker_MaintenanceWindow struct { // DayOfWeek AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSAmazonMQBroker_MaintenanceWindow struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker_MaintenanceWindow) AWSCloudFormationType() string { +func (r *Broker_MaintenanceWindow) AWSCloudFormationType() string { return "AWS::AmazonMQ::Broker.MaintenanceWindow" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_MaintenanceWindow) DependsOn() []string { +func (r *Broker_MaintenanceWindow) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_MaintenanceWindow) SetDependsOn(dependencies []string) { +func (r *Broker_MaintenanceWindow) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_MaintenanceWindow) Metadata() map[string]interface{} { +func (r *Broker_MaintenanceWindow) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_MaintenanceWindow) SetMetadata(metadata map[string]interface{}) { +func (r *Broker_MaintenanceWindow) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_MaintenanceWindow) DeletionPolicy() policies.DeletionPolicy { +func (r *Broker_MaintenanceWindow) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_MaintenanceWindow) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Broker_MaintenanceWindow) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-amazonmq-broker_tagsentry.go b/cloudformation/amazonmq/aws-amazonmq-broker_tagsentry.go similarity index 75% rename from cloudformation/resources/aws-amazonmq-broker_tagsentry.go rename to cloudformation/amazonmq/aws-amazonmq-broker_tagsentry.go index 0da4b92da5..5e7baa82ca 100644 --- a/cloudformation/resources/aws-amazonmq-broker_tagsentry.go +++ b/cloudformation/amazonmq/aws-amazonmq-broker_tagsentry.go @@ -1,10 +1,12 @@ -package resources +package amazonmq -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAmazonMQBroker_TagsEntry AWS CloudFormation Resource (AWS::AmazonMQ::Broker.TagsEntry) +// Broker_TagsEntry AWS CloudFormation Resource (AWS::AmazonMQ::Broker.TagsEntry) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-tagsentry.html -type AWSAmazonMQBroker_TagsEntry struct { +type Broker_TagsEntry struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAmazonMQBroker_TagsEntry struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker_TagsEntry) AWSCloudFormationType() string { +func (r *Broker_TagsEntry) AWSCloudFormationType() string { return "AWS::AmazonMQ::Broker.TagsEntry" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_TagsEntry) DependsOn() []string { +func (r *Broker_TagsEntry) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_TagsEntry) SetDependsOn(dependencies []string) { +func (r *Broker_TagsEntry) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_TagsEntry) Metadata() map[string]interface{} { +func (r *Broker_TagsEntry) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_TagsEntry) SetMetadata(metadata map[string]interface{}) { +func (r *Broker_TagsEntry) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_TagsEntry) DeletionPolicy() policies.DeletionPolicy { +func (r *Broker_TagsEntry) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Broker_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-amazonmq-broker_user.go b/cloudformation/amazonmq/aws-amazonmq-broker_user.go similarity index 79% rename from cloudformation/resources/aws-amazonmq-broker_user.go rename to cloudformation/amazonmq/aws-amazonmq-broker_user.go index cb7736c757..892eb9fddd 100644 --- a/cloudformation/resources/aws-amazonmq-broker_user.go +++ b/cloudformation/amazonmq/aws-amazonmq-broker_user.go @@ -1,10 +1,12 @@ -package resources +package amazonmq -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAmazonMQBroker_User AWS CloudFormation Resource (AWS::AmazonMQ::Broker.User) +// Broker_User AWS CloudFormation Resource (AWS::AmazonMQ::Broker.User) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html -type AWSAmazonMQBroker_User struct { +type Broker_User struct { // ConsoleAccess AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSAmazonMQBroker_User struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker_User) AWSCloudFormationType() string { +func (r *Broker_User) AWSCloudFormationType() string { return "AWS::AmazonMQ::Broker.User" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_User) DependsOn() []string { +func (r *Broker_User) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_User) SetDependsOn(dependencies []string) { +func (r *Broker_User) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_User) Metadata() map[string]interface{} { +func (r *Broker_User) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_User) SetMetadata(metadata map[string]interface{}) { +func (r *Broker_User) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_User) DeletionPolicy() policies.DeletionPolicy { +func (r *Broker_User) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_User) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Broker_User) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-amazonmq-configuration.go b/cloudformation/amazonmq/aws-amazonmq-configuration.go similarity index 82% rename from cloudformation/resources/aws-amazonmq-configuration.go rename to cloudformation/amazonmq/aws-amazonmq-configuration.go index 54bc365280..1c72768609 100644 --- a/cloudformation/resources/aws-amazonmq-configuration.go +++ b/cloudformation/amazonmq/aws-amazonmq-configuration.go @@ -1,15 +1,16 @@ -package resources +package amazonmq import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAmazonMQConfiguration AWS CloudFormation Resource (AWS::AmazonMQ::Configuration) +// Configuration AWS CloudFormation Resource (AWS::AmazonMQ::Configuration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html -type AWSAmazonMQConfiguration struct { +type Configuration struct { // Data AWS CloudFormation Property // Required: true @@ -39,7 +40,7 @@ type AWSAmazonMQConfiguration struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-tags - Tags []AWSAmazonMQConfiguration_TagsEntry `json:"Tags,omitempty"` + Tags []Configuration_TagsEntry `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +53,50 @@ type AWSAmazonMQConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQConfiguration) AWSCloudFormationType() string { +func (r *Configuration) AWSCloudFormationType() string { return "AWS::AmazonMQ::Configuration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQConfiguration) DependsOn() []string { +func (r *Configuration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQConfiguration) SetDependsOn(dependencies []string) { +func (r *Configuration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQConfiguration) Metadata() map[string]interface{} { +func (r *Configuration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Configuration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Configuration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAmazonMQConfiguration) MarshalJSON() ([]byte, error) { - type Properties AWSAmazonMQConfiguration +func (r Configuration) MarshalJSON() ([]byte, error) { + type Properties Configuration return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSAmazonMQConfiguration) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAmazonMQConfiguration) UnmarshalJSON(b []byte) error { - type Properties AWSAmazonMQConfiguration +func (r *Configuration) UnmarshalJSON(b []byte) error { + type Properties Configuration res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSAmazonMQConfiguration) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAmazonMQConfiguration(*res.Properties) + *r = Configuration(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/amazonmq/aws-amazonmq-configuration_tagsentry.go b/cloudformation/amazonmq/aws-amazonmq-configuration_tagsentry.go new file mode 100644 index 0000000000..ccecdfa7f0 --- /dev/null +++ b/cloudformation/amazonmq/aws-amazonmq-configuration_tagsentry.go @@ -0,0 +1,70 @@ +package amazonmq + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Configuration_TagsEntry AWS CloudFormation Resource (AWS::AmazonMQ::Configuration.TagsEntry) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html +type Configuration_TagsEntry struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html#cfn-amazonmq-configuration-tagsentry-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html#cfn-amazonmq-configuration-tagsentry-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Configuration_TagsEntry) AWSCloudFormationType() string { + return "AWS::AmazonMQ::Configuration.TagsEntry" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Configuration_TagsEntry) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Configuration_TagsEntry) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Configuration_TagsEntry) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Configuration_TagsEntry) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Configuration_TagsEntry) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Configuration_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-amazonmq-configurationassociation.go b/cloudformation/amazonmq/aws-amazonmq-configurationassociation.go similarity index 75% rename from cloudformation/resources/aws-amazonmq-configurationassociation.go rename to cloudformation/amazonmq/aws-amazonmq-configurationassociation.go index a13b0cacd4..e3c444112d 100644 --- a/cloudformation/resources/aws-amazonmq-configurationassociation.go +++ b/cloudformation/amazonmq/aws-amazonmq-configurationassociation.go @@ -1,15 +1,16 @@ -package resources +package amazonmq import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAmazonMQConfigurationAssociation AWS CloudFormation Resource (AWS::AmazonMQ::ConfigurationAssociation) +// ConfigurationAssociation AWS CloudFormation Resource (AWS::AmazonMQ::ConfigurationAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html -type AWSAmazonMQConfigurationAssociation struct { +type ConfigurationAssociation struct { // Broker AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSAmazonMQConfigurationAssociation struct { // Configuration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html#cfn-amazonmq-configurationassociation-configuration - Configuration *AWSAmazonMQConfigurationAssociation_ConfigurationId `json:"Configuration,omitempty"` + Configuration *ConfigurationAssociation_ConfigurationId `json:"Configuration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSAmazonMQConfigurationAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQConfigurationAssociation) AWSCloudFormationType() string { +func (r *ConfigurationAssociation) AWSCloudFormationType() string { return "AWS::AmazonMQ::ConfigurationAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQConfigurationAssociation) DependsOn() []string { +func (r *ConfigurationAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQConfigurationAssociation) SetDependsOn(dependencies []string) { +func (r *ConfigurationAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQConfigurationAssociation) Metadata() map[string]interface{} { +func (r *ConfigurationAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQConfigurationAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigurationAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQConfigurationAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigurationAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQConfigurationAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAmazonMQConfigurationAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSAmazonMQConfigurationAssociation +func (r ConfigurationAssociation) MarshalJSON() ([]byte, error) { + type Properties ConfigurationAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSAmazonMQConfigurationAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAmazonMQConfigurationAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSAmazonMQConfigurationAssociation +func (r *ConfigurationAssociation) UnmarshalJSON(b []byte) error { + type Properties ConfigurationAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSAmazonMQConfigurationAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAmazonMQConfigurationAssociation(*res.Properties) + *r = ConfigurationAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/amazonmq/aws-amazonmq-configurationassociation_configurationid.go b/cloudformation/amazonmq/aws-amazonmq-configurationassociation_configurationid.go new file mode 100644 index 0000000000..6fcf7417ba --- /dev/null +++ b/cloudformation/amazonmq/aws-amazonmq-configurationassociation_configurationid.go @@ -0,0 +1,70 @@ +package amazonmq + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationAssociation_ConfigurationId AWS CloudFormation Resource (AWS::AmazonMQ::ConfigurationAssociation.ConfigurationId) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html +type ConfigurationAssociation_ConfigurationId struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html#cfn-amazonmq-configurationassociation-configurationid-id + Id string `json:"Id,omitempty"` + + // Revision AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html#cfn-amazonmq-configurationassociation-configurationid-revision + Revision int `json:"Revision"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationAssociation_ConfigurationId) AWSCloudFormationType() string { + return "AWS::AmazonMQ::ConfigurationAssociation.ConfigurationId" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationAssociation_ConfigurationId) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationAssociation_ConfigurationId) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationAssociation_ConfigurationId) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationAssociation_ConfigurationId) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationAssociation_ConfigurationId) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationAssociation_ConfigurationId) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-amplify-app.go b/cloudformation/amplify/aws-amplify-app.go similarity index 83% rename from cloudformation/resources/aws-amplify-app.go rename to cloudformation/amplify/aws-amplify-app.go index 8ef40a3c0b..b18509cd28 100644 --- a/cloudformation/resources/aws-amplify-app.go +++ b/cloudformation/amplify/aws-amplify-app.go @@ -1,15 +1,17 @@ -package resources +package amplify import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAmplifyApp AWS CloudFormation Resource (AWS::Amplify::App) +// App AWS CloudFormation Resource (AWS::Amplify::App) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html -type AWSAmplifyApp struct { +type App struct { // AccessToken AWS CloudFormation Property // Required: false @@ -19,12 +21,12 @@ type AWSAmplifyApp struct { // AutoBranchCreationConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-autobranchcreationconfig - AutoBranchCreationConfig *AWSAmplifyApp_AutoBranchCreationConfig `json:"AutoBranchCreationConfig,omitempty"` + AutoBranchCreationConfig *App_AutoBranchCreationConfig `json:"AutoBranchCreationConfig,omitempty"` // BasicAuthConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-basicauthconfig - BasicAuthConfig *AWSAmplifyApp_BasicAuthConfig `json:"BasicAuthConfig,omitempty"` + BasicAuthConfig *App_BasicAuthConfig `json:"BasicAuthConfig,omitempty"` // BuildSpec AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSAmplifyApp struct { // CustomRules AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-customrules - CustomRules []AWSAmplifyApp_CustomRule `json:"CustomRules,omitempty"` + CustomRules []App_CustomRule `json:"CustomRules,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSAmplifyApp struct { // EnvironmentVariables AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-environmentvariables - EnvironmentVariables []AWSAmplifyApp_EnvironmentVariable `json:"EnvironmentVariables,omitempty"` + EnvironmentVariables []App_EnvironmentVariable `json:"EnvironmentVariables,omitempty"` // IAMServiceRole AWS CloudFormation Property // Required: false @@ -69,7 +71,7 @@ type AWSAmplifyApp struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -82,50 +84,50 @@ type AWSAmplifyApp struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyApp) AWSCloudFormationType() string { +func (r *App) AWSCloudFormationType() string { return "AWS::Amplify::App" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp) DependsOn() []string { +func (r *App) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp) SetDependsOn(dependencies []string) { +func (r *App) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp) Metadata() map[string]interface{} { +func (r *App) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp) SetMetadata(metadata map[string]interface{}) { +func (r *App) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp) DeletionPolicy() policies.DeletionPolicy { +func (r *App) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAmplifyApp) MarshalJSON() ([]byte, error) { - type Properties AWSAmplifyApp +func (r App) MarshalJSON() ([]byte, error) { + type Properties App return json.Marshal(&struct { Type string Properties Properties @@ -143,8 +145,8 @@ func (r AWSAmplifyApp) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAmplifyApp) UnmarshalJSON(b []byte) error { - type Properties AWSAmplifyApp +func (r *App) UnmarshalJSON(b []byte) error { + type Properties App res := &struct { Type string Properties *Properties @@ -163,7 +165,7 @@ func (r *AWSAmplifyApp) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAmplifyApp(*res.Properties) + *r = App(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-amplify-app_autobranchcreationconfig.go b/cloudformation/amplify/aws-amplify-app_autobranchcreationconfig.go similarity index 78% rename from cloudformation/resources/aws-amplify-app_autobranchcreationconfig.go rename to cloudformation/amplify/aws-amplify-app_autobranchcreationconfig.go index 32f60a203a..4c5e1c7c1b 100644 --- a/cloudformation/resources/aws-amplify-app_autobranchcreationconfig.go +++ b/cloudformation/amplify/aws-amplify-app_autobranchcreationconfig.go @@ -1,10 +1,12 @@ -package resources +package amplify -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAmplifyApp_AutoBranchCreationConfig AWS CloudFormation Resource (AWS::Amplify::App.AutoBranchCreationConfig) +// App_AutoBranchCreationConfig AWS CloudFormation Resource (AWS::Amplify::App.AutoBranchCreationConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html -type AWSAmplifyApp_AutoBranchCreationConfig struct { +type App_AutoBranchCreationConfig struct { // AutoBranchCreationPatterns AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSAmplifyApp_AutoBranchCreationConfig struct { // BasicAuthConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-basicauthconfig - BasicAuthConfig *AWSAmplifyApp_BasicAuthConfig `json:"BasicAuthConfig,omitempty"` + BasicAuthConfig *App_BasicAuthConfig `json:"BasicAuthConfig,omitempty"` // BuildSpec AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSAmplifyApp_AutoBranchCreationConfig struct { // EnvironmentVariables AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-environmentvariables - EnvironmentVariables []AWSAmplifyApp_EnvironmentVariable `json:"EnvironmentVariables,omitempty"` + EnvironmentVariables []App_EnvironmentVariable `json:"EnvironmentVariables,omitempty"` // Stage AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSAmplifyApp_AutoBranchCreationConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyApp_AutoBranchCreationConfig) AWSCloudFormationType() string { +func (r *App_AutoBranchCreationConfig) AWSCloudFormationType() string { return "AWS::Amplify::App.AutoBranchCreationConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp_AutoBranchCreationConfig) DependsOn() []string { +func (r *App_AutoBranchCreationConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp_AutoBranchCreationConfig) SetDependsOn(dependencies []string) { +func (r *App_AutoBranchCreationConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp_AutoBranchCreationConfig) Metadata() map[string]interface{} { +func (r *App_AutoBranchCreationConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp_AutoBranchCreationConfig) SetMetadata(metadata map[string]interface{}) { +func (r *App_AutoBranchCreationConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp_AutoBranchCreationConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *App_AutoBranchCreationConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp_AutoBranchCreationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App_AutoBranchCreationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-amplify-app_basicauthconfig.go b/cloudformation/amplify/aws-amplify-app_basicauthconfig.go similarity index 77% rename from cloudformation/resources/aws-amplify-app_basicauthconfig.go rename to cloudformation/amplify/aws-amplify-app_basicauthconfig.go index 55cb707d55..98d7db23aa 100644 --- a/cloudformation/resources/aws-amplify-app_basicauthconfig.go +++ b/cloudformation/amplify/aws-amplify-app_basicauthconfig.go @@ -1,10 +1,12 @@ -package resources +package amplify -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAmplifyApp_BasicAuthConfig AWS CloudFormation Resource (AWS::Amplify::App.BasicAuthConfig) +// App_BasicAuthConfig AWS CloudFormation Resource (AWS::Amplify::App.BasicAuthConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html -type AWSAmplifyApp_BasicAuthConfig struct { +type App_BasicAuthConfig struct { // EnableBasicAuth AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSAmplifyApp_BasicAuthConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyApp_BasicAuthConfig) AWSCloudFormationType() string { +func (r *App_BasicAuthConfig) AWSCloudFormationType() string { return "AWS::Amplify::App.BasicAuthConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp_BasicAuthConfig) DependsOn() []string { +func (r *App_BasicAuthConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp_BasicAuthConfig) SetDependsOn(dependencies []string) { +func (r *App_BasicAuthConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp_BasicAuthConfig) Metadata() map[string]interface{} { +func (r *App_BasicAuthConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp_BasicAuthConfig) SetMetadata(metadata map[string]interface{}) { +func (r *App_BasicAuthConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp_BasicAuthConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *App_BasicAuthConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp_BasicAuthConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App_BasicAuthConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-amplify-app_customrule.go b/cloudformation/amplify/aws-amplify-app_customrule.go similarity index 79% rename from cloudformation/resources/aws-amplify-app_customrule.go rename to cloudformation/amplify/aws-amplify-app_customrule.go index 0c79038504..9b807534e1 100644 --- a/cloudformation/resources/aws-amplify-app_customrule.go +++ b/cloudformation/amplify/aws-amplify-app_customrule.go @@ -1,10 +1,12 @@ -package resources +package amplify -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAmplifyApp_CustomRule AWS CloudFormation Resource (AWS::Amplify::App.CustomRule) +// App_CustomRule AWS CloudFormation Resource (AWS::Amplify::App.CustomRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html -type AWSAmplifyApp_CustomRule struct { +type App_CustomRule struct { // Condition AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSAmplifyApp_CustomRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyApp_CustomRule) AWSCloudFormationType() string { +func (r *App_CustomRule) AWSCloudFormationType() string { return "AWS::Amplify::App.CustomRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp_CustomRule) DependsOn() []string { +func (r *App_CustomRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp_CustomRule) SetDependsOn(dependencies []string) { +func (r *App_CustomRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp_CustomRule) Metadata() map[string]interface{} { +func (r *App_CustomRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp_CustomRule) SetMetadata(metadata map[string]interface{}) { +func (r *App_CustomRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp_CustomRule) DeletionPolicy() policies.DeletionPolicy { +func (r *App_CustomRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp_CustomRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App_CustomRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/amplify/aws-amplify-app_environmentvariable.go b/cloudformation/amplify/aws-amplify-app_environmentvariable.go new file mode 100644 index 0000000000..c378d3a562 --- /dev/null +++ b/cloudformation/amplify/aws-amplify-app_environmentvariable.go @@ -0,0 +1,70 @@ +package amplify + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// App_EnvironmentVariable AWS CloudFormation Resource (AWS::Amplify::App.EnvironmentVariable) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html +type App_EnvironmentVariable struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html#cfn-amplify-app-environmentvariable-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html#cfn-amplify-app-environmentvariable-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *App_EnvironmentVariable) AWSCloudFormationType() string { + return "AWS::Amplify::App.EnvironmentVariable" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *App_EnvironmentVariable) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *App_EnvironmentVariable) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *App_EnvironmentVariable) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *App_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *App_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *App_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-amplify-branch.go b/cloudformation/amplify/aws-amplify-branch.go similarity index 83% rename from cloudformation/resources/aws-amplify-branch.go rename to cloudformation/amplify/aws-amplify-branch.go index aee8a3303d..6210998138 100644 --- a/cloudformation/resources/aws-amplify-branch.go +++ b/cloudformation/amplify/aws-amplify-branch.go @@ -1,15 +1,17 @@ -package resources +package amplify import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAmplifyBranch AWS CloudFormation Resource (AWS::Amplify::Branch) +// Branch AWS CloudFormation Resource (AWS::Amplify::Branch) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html -type AWSAmplifyBranch struct { +type Branch struct { // AppId AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSAmplifyBranch struct { // BasicAuthConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-basicauthconfig - BasicAuthConfig *AWSAmplifyBranch_BasicAuthConfig `json:"BasicAuthConfig,omitempty"` + BasicAuthConfig *Branch_BasicAuthConfig `json:"BasicAuthConfig,omitempty"` // BranchName AWS CloudFormation Property // Required: true @@ -44,7 +46,7 @@ type AWSAmplifyBranch struct { // EnvironmentVariables AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-environmentvariables - EnvironmentVariables []AWSAmplifyBranch_EnvironmentVariable `json:"EnvironmentVariables,omitempty"` + EnvironmentVariables []Branch_EnvironmentVariable `json:"EnvironmentVariables,omitempty"` // Stage AWS CloudFormation Property // Required: false @@ -54,7 +56,7 @@ type AWSAmplifyBranch struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -67,50 +69,50 @@ type AWSAmplifyBranch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyBranch) AWSCloudFormationType() string { +func (r *Branch) AWSCloudFormationType() string { return "AWS::Amplify::Branch" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyBranch) DependsOn() []string { +func (r *Branch) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyBranch) SetDependsOn(dependencies []string) { +func (r *Branch) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyBranch) Metadata() map[string]interface{} { +func (r *Branch) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyBranch) SetMetadata(metadata map[string]interface{}) { +func (r *Branch) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyBranch) DeletionPolicy() policies.DeletionPolicy { +func (r *Branch) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyBranch) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Branch) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAmplifyBranch) MarshalJSON() ([]byte, error) { - type Properties AWSAmplifyBranch +func (r Branch) MarshalJSON() ([]byte, error) { + type Properties Branch return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +130,8 @@ func (r AWSAmplifyBranch) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAmplifyBranch) UnmarshalJSON(b []byte) error { - type Properties AWSAmplifyBranch +func (r *Branch) UnmarshalJSON(b []byte) error { + type Properties Branch res := &struct { Type string Properties *Properties @@ -148,7 +150,7 @@ func (r *AWSAmplifyBranch) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAmplifyBranch(*res.Properties) + *r = Branch(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-amplify-branch_basicauthconfig.go b/cloudformation/amplify/aws-amplify-branch_basicauthconfig.go similarity index 76% rename from cloudformation/resources/aws-amplify-branch_basicauthconfig.go rename to cloudformation/amplify/aws-amplify-branch_basicauthconfig.go index d85fadaca9..d47c157240 100644 --- a/cloudformation/resources/aws-amplify-branch_basicauthconfig.go +++ b/cloudformation/amplify/aws-amplify-branch_basicauthconfig.go @@ -1,10 +1,12 @@ -package resources +package amplify -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAmplifyBranch_BasicAuthConfig AWS CloudFormation Resource (AWS::Amplify::Branch.BasicAuthConfig) +// Branch_BasicAuthConfig AWS CloudFormation Resource (AWS::Amplify::Branch.BasicAuthConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html -type AWSAmplifyBranch_BasicAuthConfig struct { +type Branch_BasicAuthConfig struct { // EnableBasicAuth AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSAmplifyBranch_BasicAuthConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyBranch_BasicAuthConfig) AWSCloudFormationType() string { +func (r *Branch_BasicAuthConfig) AWSCloudFormationType() string { return "AWS::Amplify::Branch.BasicAuthConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyBranch_BasicAuthConfig) DependsOn() []string { +func (r *Branch_BasicAuthConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyBranch_BasicAuthConfig) SetDependsOn(dependencies []string) { +func (r *Branch_BasicAuthConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyBranch_BasicAuthConfig) Metadata() map[string]interface{} { +func (r *Branch_BasicAuthConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyBranch_BasicAuthConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Branch_BasicAuthConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyBranch_BasicAuthConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Branch_BasicAuthConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyBranch_BasicAuthConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Branch_BasicAuthConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/amplify/aws-amplify-branch_environmentvariable.go b/cloudformation/amplify/aws-amplify-branch_environmentvariable.go new file mode 100644 index 0000000000..d23974655b --- /dev/null +++ b/cloudformation/amplify/aws-amplify-branch_environmentvariable.go @@ -0,0 +1,70 @@ +package amplify + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Branch_EnvironmentVariable AWS CloudFormation Resource (AWS::Amplify::Branch.EnvironmentVariable) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html +type Branch_EnvironmentVariable struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html#cfn-amplify-branch-environmentvariable-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html#cfn-amplify-branch-environmentvariable-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Branch_EnvironmentVariable) AWSCloudFormationType() string { + return "AWS::Amplify::Branch.EnvironmentVariable" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Branch_EnvironmentVariable) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Branch_EnvironmentVariable) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Branch_EnvironmentVariable) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Branch_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Branch_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Branch_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-amplify-domain.go b/cloudformation/amplify/aws-amplify-domain.go similarity index 80% rename from cloudformation/resources/aws-amplify-domain.go rename to cloudformation/amplify/aws-amplify-domain.go index a97f4f2a94..23792afa42 100644 --- a/cloudformation/resources/aws-amplify-domain.go +++ b/cloudformation/amplify/aws-amplify-domain.go @@ -1,15 +1,16 @@ -package resources +package amplify import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAmplifyDomain AWS CloudFormation Resource (AWS::Amplify::Domain) +// Domain AWS CloudFormation Resource (AWS::Amplify::Domain) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html -type AWSAmplifyDomain struct { +type Domain struct { // AppId AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSAmplifyDomain struct { // SubDomainSettings AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-subdomainsettings - SubDomainSettings []AWSAmplifyDomain_SubDomainSetting `json:"SubDomainSettings,omitempty"` + SubDomainSettings []Domain_SubDomainSetting `json:"SubDomainSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSAmplifyDomain struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyDomain) AWSCloudFormationType() string { +func (r *Domain) AWSCloudFormationType() string { return "AWS::Amplify::Domain" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyDomain) DependsOn() []string { +func (r *Domain) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyDomain) SetDependsOn(dependencies []string) { +func (r *Domain) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyDomain) Metadata() map[string]interface{} { +func (r *Domain) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyDomain) SetMetadata(metadata map[string]interface{}) { +func (r *Domain) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyDomain) DeletionPolicy() policies.DeletionPolicy { +func (r *Domain) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyDomain) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAmplifyDomain) MarshalJSON() ([]byte, error) { - type Properties AWSAmplifyDomain +func (r Domain) MarshalJSON() ([]byte, error) { + type Properties Domain return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSAmplifyDomain) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAmplifyDomain) UnmarshalJSON(b []byte) error { - type Properties AWSAmplifyDomain +func (r *Domain) UnmarshalJSON(b []byte) error { + type Properties Domain res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSAmplifyDomain) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAmplifyDomain(*res.Properties) + *r = Domain(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/amplify/aws-amplify-domain_subdomainsetting.go b/cloudformation/amplify/aws-amplify-domain_subdomainsetting.go new file mode 100644 index 0000000000..cb0e8a70c4 --- /dev/null +++ b/cloudformation/amplify/aws-amplify-domain_subdomainsetting.go @@ -0,0 +1,70 @@ +package amplify + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Domain_SubDomainSetting AWS CloudFormation Resource (AWS::Amplify::Domain.SubDomainSetting) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html +type Domain_SubDomainSetting struct { + + // BranchName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html#cfn-amplify-domain-subdomainsetting-branchname + BranchName string `json:"BranchName,omitempty"` + + // Prefix AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html#cfn-amplify-domain-subdomainsetting-prefix + Prefix string `json:"Prefix,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Domain_SubDomainSetting) AWSCloudFormationType() string { + return "AWS::Amplify::Domain.SubDomainSetting" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_SubDomainSetting) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_SubDomainSetting) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_SubDomainSetting) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_SubDomainSetting) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_SubDomainSetting) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_SubDomainSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigateway-account.go b/cloudformation/apigateway/aws-apigateway-account.go similarity index 79% rename from cloudformation/resources/aws-apigateway-account.go rename to cloudformation/apigateway/aws-apigateway-account.go index fbf88936b2..1c66963ec3 100644 --- a/cloudformation/resources/aws-apigateway-account.go +++ b/cloudformation/apigateway/aws-apigateway-account.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayAccount AWS CloudFormation Resource (AWS::ApiGateway::Account) +// Account AWS CloudFormation Resource (AWS::ApiGateway::Account) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html -type AWSApiGatewayAccount struct { +type Account struct { // CloudWatchRoleArn AWS CloudFormation Property // Required: false @@ -27,50 +28,50 @@ type AWSApiGatewayAccount struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayAccount) AWSCloudFormationType() string { +func (r *Account) AWSCloudFormationType() string { return "AWS::ApiGateway::Account" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayAccount) DependsOn() []string { +func (r *Account) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayAccount) SetDependsOn(dependencies []string) { +func (r *Account) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayAccount) Metadata() map[string]interface{} { +func (r *Account) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayAccount) SetMetadata(metadata map[string]interface{}) { +func (r *Account) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayAccount) DeletionPolicy() policies.DeletionPolicy { +func (r *Account) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayAccount) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Account) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayAccount) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayAccount +func (r Account) MarshalJSON() ([]byte, error) { + type Properties Account return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSApiGatewayAccount) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayAccount) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayAccount +func (r *Account) UnmarshalJSON(b []byte) error { + type Properties Account res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSApiGatewayAccount) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayAccount(*res.Properties) + *r = Account(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-apikey.go b/cloudformation/apigateway/aws-apigateway-apikey.go similarity index 83% rename from cloudformation/resources/aws-apigateway-apikey.go rename to cloudformation/apigateway/aws-apigateway-apikey.go index fbde47e35b..d506c35ecc 100644 --- a/cloudformation/resources/aws-apigateway-apikey.go +++ b/cloudformation/apigateway/aws-apigateway-apikey.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayApiKey AWS CloudFormation Resource (AWS::ApiGateway::ApiKey) +// ApiKey AWS CloudFormation Resource (AWS::ApiGateway::ApiKey) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html -type AWSApiGatewayApiKey struct { +type ApiKey struct { // CustomerId AWS CloudFormation Property // Required: false @@ -39,7 +40,7 @@ type AWSApiGatewayApiKey struct { // StageKeys AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-stagekeys - StageKeys []AWSApiGatewayApiKey_StageKey `json:"StageKeys,omitempty"` + StageKeys []ApiKey_StageKey `json:"StageKeys,omitempty"` // Value AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSApiGatewayApiKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayApiKey) AWSCloudFormationType() string { +func (r *ApiKey) AWSCloudFormationType() string { return "AWS::ApiGateway::ApiKey" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayApiKey) DependsOn() []string { +func (r *ApiKey) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayApiKey) SetDependsOn(dependencies []string) { +func (r *ApiKey) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayApiKey) Metadata() map[string]interface{} { +func (r *ApiKey) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayApiKey) SetMetadata(metadata map[string]interface{}) { +func (r *ApiKey) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayApiKey) DeletionPolicy() policies.DeletionPolicy { +func (r *ApiKey) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayApiKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApiKey) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayApiKey) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayApiKey +func (r ApiKey) MarshalJSON() ([]byte, error) { + type Properties ApiKey return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSApiGatewayApiKey) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayApiKey) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayApiKey +func (r *ApiKey) UnmarshalJSON(b []byte) error { + type Properties ApiKey res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSApiGatewayApiKey) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayApiKey(*res.Properties) + *r = ApiKey(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-apikey_stagekey.go b/cloudformation/apigateway/aws-apigateway-apikey_stagekey.go similarity index 75% rename from cloudformation/resources/aws-apigateway-apikey_stagekey.go rename to cloudformation/apigateway/aws-apigateway-apikey_stagekey.go index ea88aa4f4c..3f43c92df8 100644 --- a/cloudformation/resources/aws-apigateway-apikey_stagekey.go +++ b/cloudformation/apigateway/aws-apigateway-apikey_stagekey.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayApiKey_StageKey AWS CloudFormation Resource (AWS::ApiGateway::ApiKey.StageKey) +// ApiKey_StageKey AWS CloudFormation Resource (AWS::ApiGateway::ApiKey.StageKey) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-apikey-stagekey.html -type AWSApiGatewayApiKey_StageKey struct { +type ApiKey_StageKey struct { // RestApiId AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSApiGatewayApiKey_StageKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayApiKey_StageKey) AWSCloudFormationType() string { +func (r *ApiKey_StageKey) AWSCloudFormationType() string { return "AWS::ApiGateway::ApiKey.StageKey" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayApiKey_StageKey) DependsOn() []string { +func (r *ApiKey_StageKey) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayApiKey_StageKey) SetDependsOn(dependencies []string) { +func (r *ApiKey_StageKey) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayApiKey_StageKey) Metadata() map[string]interface{} { +func (r *ApiKey_StageKey) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayApiKey_StageKey) SetMetadata(metadata map[string]interface{}) { +func (r *ApiKey_StageKey) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayApiKey_StageKey) DeletionPolicy() policies.DeletionPolicy { +func (r *ApiKey_StageKey) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayApiKey_StageKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApiKey_StageKey) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-authorizer.go b/cloudformation/apigateway/aws-apigateway-authorizer.go similarity index 86% rename from cloudformation/resources/aws-apigateway-authorizer.go rename to cloudformation/apigateway/aws-apigateway-authorizer.go index 235e18face..dd0079c5b5 100644 --- a/cloudformation/resources/aws-apigateway-authorizer.go +++ b/cloudformation/apigateway/aws-apigateway-authorizer.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayAuthorizer AWS CloudFormation Resource (AWS::ApiGateway::Authorizer) +// Authorizer AWS CloudFormation Resource (AWS::ApiGateway::Authorizer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html -type AWSApiGatewayAuthorizer struct { +type Authorizer struct { // AuthType AWS CloudFormation Property // Required: false @@ -72,50 +73,50 @@ type AWSApiGatewayAuthorizer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayAuthorizer) AWSCloudFormationType() string { +func (r *Authorizer) AWSCloudFormationType() string { return "AWS::ApiGateway::Authorizer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayAuthorizer) DependsOn() []string { +func (r *Authorizer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayAuthorizer) SetDependsOn(dependencies []string) { +func (r *Authorizer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayAuthorizer) Metadata() map[string]interface{} { +func (r *Authorizer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayAuthorizer) SetMetadata(metadata map[string]interface{}) { +func (r *Authorizer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayAuthorizer) DeletionPolicy() policies.DeletionPolicy { +func (r *Authorizer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayAuthorizer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Authorizer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayAuthorizer) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayAuthorizer +func (r Authorizer) MarshalJSON() ([]byte, error) { + type Properties Authorizer return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSApiGatewayAuthorizer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayAuthorizer) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayAuthorizer +func (r *Authorizer) UnmarshalJSON(b []byte) error { + type Properties Authorizer res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSApiGatewayAuthorizer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayAuthorizer(*res.Properties) + *r = Authorizer(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-basepathmapping.go b/cloudformation/apigateway/aws-apigateway-basepathmapping.go similarity index 80% rename from cloudformation/resources/aws-apigateway-basepathmapping.go rename to cloudformation/apigateway/aws-apigateway-basepathmapping.go index 7251d724c2..c818b83b86 100644 --- a/cloudformation/resources/aws-apigateway-basepathmapping.go +++ b/cloudformation/apigateway/aws-apigateway-basepathmapping.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayBasePathMapping AWS CloudFormation Resource (AWS::ApiGateway::BasePathMapping) +// BasePathMapping AWS CloudFormation Resource (AWS::ApiGateway::BasePathMapping) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html -type AWSApiGatewayBasePathMapping struct { +type BasePathMapping struct { // BasePath AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSApiGatewayBasePathMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayBasePathMapping) AWSCloudFormationType() string { +func (r *BasePathMapping) AWSCloudFormationType() string { return "AWS::ApiGateway::BasePathMapping" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayBasePathMapping) DependsOn() []string { +func (r *BasePathMapping) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayBasePathMapping) SetDependsOn(dependencies []string) { +func (r *BasePathMapping) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayBasePathMapping) Metadata() map[string]interface{} { +func (r *BasePathMapping) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayBasePathMapping) SetMetadata(metadata map[string]interface{}) { +func (r *BasePathMapping) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayBasePathMapping) DeletionPolicy() policies.DeletionPolicy { +func (r *BasePathMapping) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayBasePathMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *BasePathMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayBasePathMapping) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayBasePathMapping +func (r BasePathMapping) MarshalJSON() ([]byte, error) { + type Properties BasePathMapping return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSApiGatewayBasePathMapping) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayBasePathMapping) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayBasePathMapping +func (r *BasePathMapping) UnmarshalJSON(b []byte) error { + type Properties BasePathMapping res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSApiGatewayBasePathMapping) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayBasePathMapping(*res.Properties) + *r = BasePathMapping(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-clientcertificate.go b/cloudformation/apigateway/aws-apigateway-clientcertificate.go similarity index 76% rename from cloudformation/resources/aws-apigateway-clientcertificate.go rename to cloudformation/apigateway/aws-apigateway-clientcertificate.go index dac3656d46..acd0699c1e 100644 --- a/cloudformation/resources/aws-apigateway-clientcertificate.go +++ b/cloudformation/apigateway/aws-apigateway-clientcertificate.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayClientCertificate AWS CloudFormation Resource (AWS::ApiGateway::ClientCertificate) +// ClientCertificate AWS CloudFormation Resource (AWS::ApiGateway::ClientCertificate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html -type AWSApiGatewayClientCertificate struct { +type ClientCertificate struct { // Description AWS CloudFormation Property // Required: false @@ -27,50 +28,50 @@ type AWSApiGatewayClientCertificate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayClientCertificate) AWSCloudFormationType() string { +func (r *ClientCertificate) AWSCloudFormationType() string { return "AWS::ApiGateway::ClientCertificate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayClientCertificate) DependsOn() []string { +func (r *ClientCertificate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayClientCertificate) SetDependsOn(dependencies []string) { +func (r *ClientCertificate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayClientCertificate) Metadata() map[string]interface{} { +func (r *ClientCertificate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayClientCertificate) SetMetadata(metadata map[string]interface{}) { +func (r *ClientCertificate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayClientCertificate) DeletionPolicy() policies.DeletionPolicy { +func (r *ClientCertificate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayClientCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayClientCertificate) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayClientCertificate +func (r ClientCertificate) MarshalJSON() ([]byte, error) { + type Properties ClientCertificate return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSApiGatewayClientCertificate) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayClientCertificate) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayClientCertificate +func (r *ClientCertificate) UnmarshalJSON(b []byte) error { + type Properties ClientCertificate res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSApiGatewayClientCertificate) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayClientCertificate(*res.Properties) + *r = ClientCertificate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-deployment.go b/cloudformation/apigateway/aws-apigateway-deployment.go similarity index 79% rename from cloudformation/resources/aws-apigateway-deployment.go rename to cloudformation/apigateway/aws-apigateway-deployment.go index f1e8363130..0a9b87b9e5 100644 --- a/cloudformation/resources/aws-apigateway-deployment.go +++ b/cloudformation/apigateway/aws-apigateway-deployment.go @@ -1,20 +1,21 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayDeployment AWS CloudFormation Resource (AWS::ApiGateway::Deployment) +// Deployment AWS CloudFormation Resource (AWS::ApiGateway::Deployment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html -type AWSApiGatewayDeployment struct { +type Deployment struct { // DeploymentCanarySettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-deploymentcanarysettings - DeploymentCanarySettings *AWSApiGatewayDeployment_DeploymentCanarySettings `json:"DeploymentCanarySettings,omitempty"` + DeploymentCanarySettings *Deployment_DeploymentCanarySettings `json:"DeploymentCanarySettings,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSApiGatewayDeployment struct { // StageDescription AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagedescription - StageDescription *AWSApiGatewayDeployment_StageDescription `json:"StageDescription,omitempty"` + StageDescription *Deployment_StageDescription `json:"StageDescription,omitempty"` // StageName AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSApiGatewayDeployment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDeployment) AWSCloudFormationType() string { +func (r *Deployment) AWSCloudFormationType() string { return "AWS::ApiGateway::Deployment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment) DependsOn() []string { +func (r *Deployment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment) SetDependsOn(dependencies []string) { +func (r *Deployment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment) Metadata() map[string]interface{} { +func (r *Deployment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment) SetMetadata(metadata map[string]interface{}) { +func (r *Deployment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment) DeletionPolicy() policies.DeletionPolicy { +func (r *Deployment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Deployment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayDeployment) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayDeployment +func (r Deployment) MarshalJSON() ([]byte, error) { + type Properties Deployment return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSApiGatewayDeployment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayDeployment) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayDeployment +func (r *Deployment) UnmarshalJSON(b []byte) error { + type Properties Deployment res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSApiGatewayDeployment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayDeployment(*res.Properties) + *r = Deployment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigateway/aws-apigateway-deployment_accesslogsetting.go b/cloudformation/apigateway/aws-apigateway-deployment_accesslogsetting.go new file mode 100644 index 0000000000..5026a05205 --- /dev/null +++ b/cloudformation/apigateway/aws-apigateway-deployment_accesslogsetting.go @@ -0,0 +1,70 @@ +package apigateway + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Deployment_AccessLogSetting AWS CloudFormation Resource (AWS::ApiGateway::Deployment.AccessLogSetting) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html +type Deployment_AccessLogSetting struct { + + // DestinationArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html#cfn-apigateway-deployment-accesslogsetting-destinationarn + DestinationArn string `json:"DestinationArn,omitempty"` + + // Format AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html#cfn-apigateway-deployment-accesslogsetting-format + Format string `json:"Format,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Deployment_AccessLogSetting) AWSCloudFormationType() string { + return "AWS::ApiGateway::Deployment.AccessLogSetting" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Deployment_AccessLogSetting) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Deployment_AccessLogSetting) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Deployment_AccessLogSetting) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Deployment_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Deployment_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Deployment_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigateway-deployment_canarysetting.go b/cloudformation/apigateway/aws-apigateway-deployment_canarysetting.go similarity index 76% rename from cloudformation/resources/aws-apigateway-deployment_canarysetting.go rename to cloudformation/apigateway/aws-apigateway-deployment_canarysetting.go index 3b3c3e7a90..cef12bce2d 100644 --- a/cloudformation/resources/aws-apigateway-deployment_canarysetting.go +++ b/cloudformation/apigateway/aws-apigateway-deployment_canarysetting.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayDeployment_CanarySetting AWS CloudFormation Resource (AWS::ApiGateway::Deployment.CanarySetting) +// Deployment_CanarySetting AWS CloudFormation Resource (AWS::ApiGateway::Deployment.CanarySetting) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html -type AWSApiGatewayDeployment_CanarySetting struct { +type Deployment_CanarySetting struct { // PercentTraffic AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSApiGatewayDeployment_CanarySetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDeployment_CanarySetting) AWSCloudFormationType() string { +func (r *Deployment_CanarySetting) AWSCloudFormationType() string { return "AWS::ApiGateway::Deployment.CanarySetting" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_CanarySetting) DependsOn() []string { +func (r *Deployment_CanarySetting) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_CanarySetting) SetDependsOn(dependencies []string) { +func (r *Deployment_CanarySetting) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_CanarySetting) Metadata() map[string]interface{} { +func (r *Deployment_CanarySetting) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_CanarySetting) SetMetadata(metadata map[string]interface{}) { +func (r *Deployment_CanarySetting) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_CanarySetting) DeletionPolicy() policies.DeletionPolicy { +func (r *Deployment_CanarySetting) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_CanarySetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Deployment_CanarySetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/apigateway/aws-apigateway-deployment_deploymentcanarysettings.go b/cloudformation/apigateway/aws-apigateway-deployment_deploymentcanarysettings.go new file mode 100644 index 0000000000..8a5f301cc2 --- /dev/null +++ b/cloudformation/apigateway/aws-apigateway-deployment_deploymentcanarysettings.go @@ -0,0 +1,75 @@ +package apigateway + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Deployment_DeploymentCanarySettings AWS CloudFormation Resource (AWS::ApiGateway::Deployment.DeploymentCanarySettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html +type Deployment_DeploymentCanarySettings struct { + + // PercentTraffic AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-percenttraffic + PercentTraffic float64 `json:"PercentTraffic,omitempty"` + + // StageVariableOverrides AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-stagevariableoverrides + StageVariableOverrides map[string]string `json:"StageVariableOverrides,omitempty"` + + // UseStageCache AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-usestagecache + UseStageCache bool `json:"UseStageCache,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Deployment_DeploymentCanarySettings) AWSCloudFormationType() string { + return "AWS::ApiGateway::Deployment.DeploymentCanarySettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Deployment_DeploymentCanarySettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Deployment_DeploymentCanarySettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Deployment_DeploymentCanarySettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Deployment_DeploymentCanarySettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Deployment_DeploymentCanarySettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Deployment_DeploymentCanarySettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigateway-deployment_methodsetting.go b/cloudformation/apigateway/aws-apigateway-deployment_methodsetting.go similarity index 85% rename from cloudformation/resources/aws-apigateway-deployment_methodsetting.go rename to cloudformation/apigateway/aws-apigateway-deployment_methodsetting.go index 98529e34e1..c018a54fba 100644 --- a/cloudformation/resources/aws-apigateway-deployment_methodsetting.go +++ b/cloudformation/apigateway/aws-apigateway-deployment_methodsetting.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayDeployment_MethodSetting AWS CloudFormation Resource (AWS::ApiGateway::Deployment.MethodSetting) +// Deployment_MethodSetting AWS CloudFormation Resource (AWS::ApiGateway::Deployment.MethodSetting) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html -type AWSApiGatewayDeployment_MethodSetting struct { +type Deployment_MethodSetting struct { // CacheDataEncrypted AWS CloudFormation Property // Required: false @@ -67,42 +69,42 @@ type AWSApiGatewayDeployment_MethodSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDeployment_MethodSetting) AWSCloudFormationType() string { +func (r *Deployment_MethodSetting) AWSCloudFormationType() string { return "AWS::ApiGateway::Deployment.MethodSetting" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_MethodSetting) DependsOn() []string { +func (r *Deployment_MethodSetting) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_MethodSetting) SetDependsOn(dependencies []string) { +func (r *Deployment_MethodSetting) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_MethodSetting) Metadata() map[string]interface{} { +func (r *Deployment_MethodSetting) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_MethodSetting) SetMetadata(metadata map[string]interface{}) { +func (r *Deployment_MethodSetting) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_MethodSetting) DeletionPolicy() policies.DeletionPolicy { +func (r *Deployment_MethodSetting) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_MethodSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Deployment_MethodSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-deployment_stagedescription.go b/cloudformation/apigateway/aws-apigateway-deployment_stagedescription.go similarity index 86% rename from cloudformation/resources/aws-apigateway-deployment_stagedescription.go rename to cloudformation/apigateway/aws-apigateway-deployment_stagedescription.go index 8347487785..1b24d9d7eb 100644 --- a/cloudformation/resources/aws-apigateway-deployment_stagedescription.go +++ b/cloudformation/apigateway/aws-apigateway-deployment_stagedescription.go @@ -1,15 +1,18 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) -// AWSApiGatewayDeployment_StageDescription AWS CloudFormation Resource (AWS::ApiGateway::Deployment.StageDescription) +// Deployment_StageDescription AWS CloudFormation Resource (AWS::ApiGateway::Deployment.StageDescription) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html -type AWSApiGatewayDeployment_StageDescription struct { +type Deployment_StageDescription struct { // AccessLogSetting AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-accesslogsetting - AccessLogSetting *AWSApiGatewayDeployment_AccessLogSetting `json:"AccessLogSetting,omitempty"` + AccessLogSetting *Deployment_AccessLogSetting `json:"AccessLogSetting,omitempty"` // CacheClusterEnabled AWS CloudFormation Property // Required: false @@ -39,7 +42,7 @@ type AWSApiGatewayDeployment_StageDescription struct { // CanarySetting AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-canarysetting - CanarySetting *AWSApiGatewayDeployment_CanarySetting `json:"CanarySetting,omitempty"` + CanarySetting *Deployment_CanarySetting `json:"CanarySetting,omitempty"` // ClientCertificateId AWS CloudFormation Property // Required: false @@ -69,7 +72,7 @@ type AWSApiGatewayDeployment_StageDescription struct { // MethodSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-methodsettings - MethodSettings []AWSApiGatewayDeployment_MethodSetting `json:"MethodSettings,omitempty"` + MethodSettings []Deployment_MethodSetting `json:"MethodSettings,omitempty"` // MetricsEnabled AWS CloudFormation Property // Required: false @@ -79,7 +82,7 @@ type AWSApiGatewayDeployment_StageDescription struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // ThrottlingBurstLimit AWS CloudFormation Property // Required: false @@ -112,42 +115,42 @@ type AWSApiGatewayDeployment_StageDescription struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDeployment_StageDescription) AWSCloudFormationType() string { +func (r *Deployment_StageDescription) AWSCloudFormationType() string { return "AWS::ApiGateway::Deployment.StageDescription" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_StageDescription) DependsOn() []string { +func (r *Deployment_StageDescription) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_StageDescription) SetDependsOn(dependencies []string) { +func (r *Deployment_StageDescription) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_StageDescription) Metadata() map[string]interface{} { +func (r *Deployment_StageDescription) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_StageDescription) SetMetadata(metadata map[string]interface{}) { +func (r *Deployment_StageDescription) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_StageDescription) DeletionPolicy() policies.DeletionPolicy { +func (r *Deployment_StageDescription) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_StageDescription) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Deployment_StageDescription) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-documentationpart.go b/cloudformation/apigateway/aws-apigateway-documentationpart.go similarity index 77% rename from cloudformation/resources/aws-apigateway-documentationpart.go rename to cloudformation/apigateway/aws-apigateway-documentationpart.go index 1ca0c18b92..c6d361c8ea 100644 --- a/cloudformation/resources/aws-apigateway-documentationpart.go +++ b/cloudformation/apigateway/aws-apigateway-documentationpart.go @@ -1,20 +1,21 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayDocumentationPart AWS CloudFormation Resource (AWS::ApiGateway::DocumentationPart) +// DocumentationPart AWS CloudFormation Resource (AWS::ApiGateway::DocumentationPart) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html -type AWSApiGatewayDocumentationPart struct { +type DocumentationPart struct { // Location AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-location - Location *AWSApiGatewayDocumentationPart_Location `json:"Location,omitempty"` + Location *DocumentationPart_Location `json:"Location,omitempty"` // Properties AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSApiGatewayDocumentationPart struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDocumentationPart) AWSCloudFormationType() string { +func (r *DocumentationPart) AWSCloudFormationType() string { return "AWS::ApiGateway::DocumentationPart" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDocumentationPart) DependsOn() []string { +func (r *DocumentationPart) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDocumentationPart) SetDependsOn(dependencies []string) { +func (r *DocumentationPart) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDocumentationPart) Metadata() map[string]interface{} { +func (r *DocumentationPart) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDocumentationPart) SetMetadata(metadata map[string]interface{}) { +func (r *DocumentationPart) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDocumentationPart) DeletionPolicy() policies.DeletionPolicy { +func (r *DocumentationPart) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDocumentationPart) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DocumentationPart) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayDocumentationPart) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayDocumentationPart +func (r DocumentationPart) MarshalJSON() ([]byte, error) { + type Properties DocumentationPart return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSApiGatewayDocumentationPart) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayDocumentationPart) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayDocumentationPart +func (r *DocumentationPart) UnmarshalJSON(b []byte) error { + type Properties DocumentationPart res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSApiGatewayDocumentationPart) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayDocumentationPart(*res.Properties) + *r = DocumentationPart(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-documentationpart_location.go b/cloudformation/apigateway/aws-apigateway-documentationpart_location.go similarity index 78% rename from cloudformation/resources/aws-apigateway-documentationpart_location.go rename to cloudformation/apigateway/aws-apigateway-documentationpart_location.go index 5faed779f5..276302ebc9 100644 --- a/cloudformation/resources/aws-apigateway-documentationpart_location.go +++ b/cloudformation/apigateway/aws-apigateway-documentationpart_location.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayDocumentationPart_Location AWS CloudFormation Resource (AWS::ApiGateway::DocumentationPart.Location) +// DocumentationPart_Location AWS CloudFormation Resource (AWS::ApiGateway::DocumentationPart.Location) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html -type AWSApiGatewayDocumentationPart_Location struct { +type DocumentationPart_Location struct { // Method AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSApiGatewayDocumentationPart_Location struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDocumentationPart_Location) AWSCloudFormationType() string { +func (r *DocumentationPart_Location) AWSCloudFormationType() string { return "AWS::ApiGateway::DocumentationPart.Location" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDocumentationPart_Location) DependsOn() []string { +func (r *DocumentationPart_Location) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDocumentationPart_Location) SetDependsOn(dependencies []string) { +func (r *DocumentationPart_Location) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDocumentationPart_Location) Metadata() map[string]interface{} { +func (r *DocumentationPart_Location) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDocumentationPart_Location) SetMetadata(metadata map[string]interface{}) { +func (r *DocumentationPart_Location) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDocumentationPart_Location) DeletionPolicy() policies.DeletionPolicy { +func (r *DocumentationPart_Location) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDocumentationPart_Location) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DocumentationPart_Location) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-documentationversion.go b/cloudformation/apigateway/aws-apigateway-documentationversion.go similarity index 79% rename from cloudformation/resources/aws-apigateway-documentationversion.go rename to cloudformation/apigateway/aws-apigateway-documentationversion.go index 236efecd27..2e034c5dd9 100644 --- a/cloudformation/resources/aws-apigateway-documentationversion.go +++ b/cloudformation/apigateway/aws-apigateway-documentationversion.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayDocumentationVersion AWS CloudFormation Resource (AWS::ApiGateway::DocumentationVersion) +// DocumentationVersion AWS CloudFormation Resource (AWS::ApiGateway::DocumentationVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html -type AWSApiGatewayDocumentationVersion struct { +type DocumentationVersion struct { // Description AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSApiGatewayDocumentationVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDocumentationVersion) AWSCloudFormationType() string { +func (r *DocumentationVersion) AWSCloudFormationType() string { return "AWS::ApiGateway::DocumentationVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDocumentationVersion) DependsOn() []string { +func (r *DocumentationVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDocumentationVersion) SetDependsOn(dependencies []string) { +func (r *DocumentationVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDocumentationVersion) Metadata() map[string]interface{} { +func (r *DocumentationVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDocumentationVersion) SetMetadata(metadata map[string]interface{}) { +func (r *DocumentationVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDocumentationVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *DocumentationVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDocumentationVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DocumentationVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayDocumentationVersion) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayDocumentationVersion +func (r DocumentationVersion) MarshalJSON() ([]byte, error) { + type Properties DocumentationVersion return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSApiGatewayDocumentationVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayDocumentationVersion) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayDocumentationVersion +func (r *DocumentationVersion) UnmarshalJSON(b []byte) error { + type Properties DocumentationVersion res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSApiGatewayDocumentationVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayDocumentationVersion(*res.Properties) + *r = DocumentationVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-domainname.go b/cloudformation/apigateway/aws-apigateway-domainname.go similarity index 80% rename from cloudformation/resources/aws-apigateway-domainname.go rename to cloudformation/apigateway/aws-apigateway-domainname.go index 71b65d9283..70c98a2b18 100644 --- a/cloudformation/resources/aws-apigateway-domainname.go +++ b/cloudformation/apigateway/aws-apigateway-domainname.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayDomainName AWS CloudFormation Resource (AWS::ApiGateway::DomainName) +// DomainName AWS CloudFormation Resource (AWS::ApiGateway::DomainName) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html -type AWSApiGatewayDomainName struct { +type DomainName struct { // CertificateArn AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSApiGatewayDomainName struct { // EndpointConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-endpointconfiguration - EndpointConfiguration *AWSApiGatewayDomainName_EndpointConfiguration `json:"EndpointConfiguration,omitempty"` + EndpointConfiguration *DomainName_EndpointConfiguration `json:"EndpointConfiguration,omitempty"` // RegionalCertificateArn AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSApiGatewayDomainName struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDomainName) AWSCloudFormationType() string { +func (r *DomainName) AWSCloudFormationType() string { return "AWS::ApiGateway::DomainName" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDomainName) DependsOn() []string { +func (r *DomainName) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDomainName) SetDependsOn(dependencies []string) { +func (r *DomainName) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDomainName) Metadata() map[string]interface{} { +func (r *DomainName) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDomainName) SetMetadata(metadata map[string]interface{}) { +func (r *DomainName) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDomainName) DeletionPolicy() policies.DeletionPolicy { +func (r *DomainName) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDomainName) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DomainName) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayDomainName) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayDomainName +func (r DomainName) MarshalJSON() ([]byte, error) { + type Properties DomainName return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSApiGatewayDomainName) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayDomainName) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayDomainName +func (r *DomainName) UnmarshalJSON(b []byte) error { + type Properties DomainName res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSApiGatewayDomainName) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayDomainName(*res.Properties) + *r = DomainName(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigateway/aws-apigateway-domainname_endpointconfiguration.go b/cloudformation/apigateway/aws-apigateway-domainname_endpointconfiguration.go new file mode 100644 index 0000000000..3dffc399cc --- /dev/null +++ b/cloudformation/apigateway/aws-apigateway-domainname_endpointconfiguration.go @@ -0,0 +1,65 @@ +package apigateway + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DomainName_EndpointConfiguration AWS CloudFormation Resource (AWS::ApiGateway::DomainName.EndpointConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-endpointconfiguration.html +type DomainName_EndpointConfiguration struct { + + // Types AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-endpointconfiguration.html#cfn-apigateway-domainname-endpointconfiguration-types + Types []string `json:"Types,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DomainName_EndpointConfiguration) AWSCloudFormationType() string { + return "AWS::ApiGateway::DomainName.EndpointConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DomainName_EndpointConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DomainName_EndpointConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DomainName_EndpointConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DomainName_EndpointConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DomainName_EndpointConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DomainName_EndpointConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigateway-gatewayresponse.go b/cloudformation/apigateway/aws-apigateway-gatewayresponse.go similarity index 81% rename from cloudformation/resources/aws-apigateway-gatewayresponse.go rename to cloudformation/apigateway/aws-apigateway-gatewayresponse.go index 10c68d6c0c..ce4f32380c 100644 --- a/cloudformation/resources/aws-apigateway-gatewayresponse.go +++ b/cloudformation/apigateway/aws-apigateway-gatewayresponse.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayGatewayResponse AWS CloudFormation Resource (AWS::ApiGateway::GatewayResponse) +// GatewayResponse AWS CloudFormation Resource (AWS::ApiGateway::GatewayResponse) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html -type AWSApiGatewayGatewayResponse struct { +type GatewayResponse struct { // ResponseParameters AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSApiGatewayGatewayResponse struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayGatewayResponse) AWSCloudFormationType() string { +func (r *GatewayResponse) AWSCloudFormationType() string { return "AWS::ApiGateway::GatewayResponse" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayGatewayResponse) DependsOn() []string { +func (r *GatewayResponse) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayGatewayResponse) SetDependsOn(dependencies []string) { +func (r *GatewayResponse) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayGatewayResponse) Metadata() map[string]interface{} { +func (r *GatewayResponse) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayGatewayResponse) SetMetadata(metadata map[string]interface{}) { +func (r *GatewayResponse) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayGatewayResponse) DeletionPolicy() policies.DeletionPolicy { +func (r *GatewayResponse) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayGatewayResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GatewayResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayGatewayResponse) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayGatewayResponse +func (r GatewayResponse) MarshalJSON() ([]byte, error) { + type Properties GatewayResponse return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSApiGatewayGatewayResponse) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayGatewayResponse) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayGatewayResponse +func (r *GatewayResponse) UnmarshalJSON(b []byte) error { + type Properties GatewayResponse res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSApiGatewayGatewayResponse) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayGatewayResponse(*res.Properties) + *r = GatewayResponse(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-method.go b/cloudformation/apigateway/aws-apigateway-method.go similarity index 86% rename from cloudformation/resources/aws-apigateway-method.go rename to cloudformation/apigateway/aws-apigateway-method.go index 93c02cd0db..03b7ae7290 100644 --- a/cloudformation/resources/aws-apigateway-method.go +++ b/cloudformation/apigateway/aws-apigateway-method.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayMethod AWS CloudFormation Resource (AWS::ApiGateway::Method) +// Method AWS CloudFormation Resource (AWS::ApiGateway::Method) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html -type AWSApiGatewayMethod struct { +type Method struct { // ApiKeyRequired AWS CloudFormation Property // Required: false @@ -39,12 +40,12 @@ type AWSApiGatewayMethod struct { // Integration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-integration - Integration *AWSApiGatewayMethod_Integration `json:"Integration,omitempty"` + Integration *Method_Integration `json:"Integration,omitempty"` // MethodResponses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-methodresponses - MethodResponses []AWSApiGatewayMethod_MethodResponse `json:"MethodResponses,omitempty"` + MethodResponses []Method_MethodResponse `json:"MethodResponses,omitempty"` // OperationName AWS CloudFormation Property // Required: false @@ -87,50 +88,50 @@ type AWSApiGatewayMethod struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayMethod) AWSCloudFormationType() string { +func (r *Method) AWSCloudFormationType() string { return "AWS::ApiGateway::Method" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayMethod) DependsOn() []string { +func (r *Method) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayMethod) SetDependsOn(dependencies []string) { +func (r *Method) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayMethod) Metadata() map[string]interface{} { +func (r *Method) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayMethod) SetMetadata(metadata map[string]interface{}) { +func (r *Method) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayMethod) DeletionPolicy() policies.DeletionPolicy { +func (r *Method) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayMethod) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Method) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayMethod) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayMethod +func (r Method) MarshalJSON() ([]byte, error) { + type Properties Method return json.Marshal(&struct { Type string Properties Properties @@ -148,8 +149,8 @@ func (r AWSApiGatewayMethod) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayMethod) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayMethod +func (r *Method) UnmarshalJSON(b []byte) error { + type Properties Method res := &struct { Type string Properties *Properties @@ -168,7 +169,7 @@ func (r *AWSApiGatewayMethod) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayMethod(*res.Properties) + *r = Method(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-method_integration.go b/cloudformation/apigateway/aws-apigateway-method_integration.go similarity index 86% rename from cloudformation/resources/aws-apigateway-method_integration.go rename to cloudformation/apigateway/aws-apigateway-method_integration.go index 3a387d6eb6..fb07b9b542 100644 --- a/cloudformation/resources/aws-apigateway-method_integration.go +++ b/cloudformation/apigateway/aws-apigateway-method_integration.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayMethod_Integration AWS CloudFormation Resource (AWS::ApiGateway::Method.Integration) +// Method_Integration AWS CloudFormation Resource (AWS::ApiGateway::Method.Integration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html -type AWSApiGatewayMethod_Integration struct { +type Method_Integration struct { // CacheKeyParameters AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSApiGatewayMethod_Integration struct { // IntegrationResponses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-integrationresponses - IntegrationResponses []AWSApiGatewayMethod_IntegrationResponse `json:"IntegrationResponses,omitempty"` + IntegrationResponses []Method_IntegrationResponse `json:"IntegrationResponses,omitempty"` // PassthroughBehavior AWS CloudFormation Property // Required: false @@ -87,42 +89,42 @@ type AWSApiGatewayMethod_Integration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayMethod_Integration) AWSCloudFormationType() string { +func (r *Method_Integration) AWSCloudFormationType() string { return "AWS::ApiGateway::Method.Integration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayMethod_Integration) DependsOn() []string { +func (r *Method_Integration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayMethod_Integration) SetDependsOn(dependencies []string) { +func (r *Method_Integration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayMethod_Integration) Metadata() map[string]interface{} { +func (r *Method_Integration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayMethod_Integration) SetMetadata(metadata map[string]interface{}) { +func (r *Method_Integration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayMethod_Integration) DeletionPolicy() policies.DeletionPolicy { +func (r *Method_Integration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayMethod_Integration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Method_Integration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-method_integrationresponse.go b/cloudformation/apigateway/aws-apigateway-method_integrationresponse.go similarity index 80% rename from cloudformation/resources/aws-apigateway-method_integrationresponse.go rename to cloudformation/apigateway/aws-apigateway-method_integrationresponse.go index 0c7dd0209b..7fc9ad7e18 100644 --- a/cloudformation/resources/aws-apigateway-method_integrationresponse.go +++ b/cloudformation/apigateway/aws-apigateway-method_integrationresponse.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayMethod_IntegrationResponse AWS CloudFormation Resource (AWS::ApiGateway::Method.IntegrationResponse) +// Method_IntegrationResponse AWS CloudFormation Resource (AWS::ApiGateway::Method.IntegrationResponse) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html -type AWSApiGatewayMethod_IntegrationResponse struct { +type Method_IntegrationResponse struct { // ContentHandling AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSApiGatewayMethod_IntegrationResponse struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayMethod_IntegrationResponse) AWSCloudFormationType() string { +func (r *Method_IntegrationResponse) AWSCloudFormationType() string { return "AWS::ApiGateway::Method.IntegrationResponse" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayMethod_IntegrationResponse) DependsOn() []string { +func (r *Method_IntegrationResponse) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayMethod_IntegrationResponse) SetDependsOn(dependencies []string) { +func (r *Method_IntegrationResponse) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayMethod_IntegrationResponse) Metadata() map[string]interface{} { +func (r *Method_IntegrationResponse) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayMethod_IntegrationResponse) SetMetadata(metadata map[string]interface{}) { +func (r *Method_IntegrationResponse) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayMethod_IntegrationResponse) DeletionPolicy() policies.DeletionPolicy { +func (r *Method_IntegrationResponse) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayMethod_IntegrationResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Method_IntegrationResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-method_methodresponse.go b/cloudformation/apigateway/aws-apigateway-method_methodresponse.go similarity index 76% rename from cloudformation/resources/aws-apigateway-method_methodresponse.go rename to cloudformation/apigateway/aws-apigateway-method_methodresponse.go index 9b7ba4c6c0..4c05a19c68 100644 --- a/cloudformation/resources/aws-apigateway-method_methodresponse.go +++ b/cloudformation/apigateway/aws-apigateway-method_methodresponse.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayMethod_MethodResponse AWS CloudFormation Resource (AWS::ApiGateway::Method.MethodResponse) +// Method_MethodResponse AWS CloudFormation Resource (AWS::ApiGateway::Method.MethodResponse) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html -type AWSApiGatewayMethod_MethodResponse struct { +type Method_MethodResponse struct { // ResponseModels AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSApiGatewayMethod_MethodResponse struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayMethod_MethodResponse) AWSCloudFormationType() string { +func (r *Method_MethodResponse) AWSCloudFormationType() string { return "AWS::ApiGateway::Method.MethodResponse" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayMethod_MethodResponse) DependsOn() []string { +func (r *Method_MethodResponse) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayMethod_MethodResponse) SetDependsOn(dependencies []string) { +func (r *Method_MethodResponse) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayMethod_MethodResponse) Metadata() map[string]interface{} { +func (r *Method_MethodResponse) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayMethod_MethodResponse) SetMetadata(metadata map[string]interface{}) { +func (r *Method_MethodResponse) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayMethod_MethodResponse) DeletionPolicy() policies.DeletionPolicy { +func (r *Method_MethodResponse) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayMethod_MethodResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Method_MethodResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-model.go b/cloudformation/apigateway/aws-apigateway-model.go similarity index 83% rename from cloudformation/resources/aws-apigateway-model.go rename to cloudformation/apigateway/aws-apigateway-model.go index 14a3f276cb..e16e17c532 100644 --- a/cloudformation/resources/aws-apigateway-model.go +++ b/cloudformation/apigateway/aws-apigateway-model.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayModel AWS CloudFormation Resource (AWS::ApiGateway::Model) +// Model AWS CloudFormation Resource (AWS::ApiGateway::Model) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html -type AWSApiGatewayModel struct { +type Model struct { // ContentType AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSApiGatewayModel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayModel) AWSCloudFormationType() string { +func (r *Model) AWSCloudFormationType() string { return "AWS::ApiGateway::Model" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayModel) DependsOn() []string { +func (r *Model) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayModel) SetDependsOn(dependencies []string) { +func (r *Model) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayModel) Metadata() map[string]interface{} { +func (r *Model) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayModel) SetMetadata(metadata map[string]interface{}) { +func (r *Model) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayModel) DeletionPolicy() policies.DeletionPolicy { +func (r *Model) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayModel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Model) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayModel) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayModel +func (r Model) MarshalJSON() ([]byte, error) { + type Properties Model return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSApiGatewayModel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayModel) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayModel +func (r *Model) UnmarshalJSON(b []byte) error { + type Properties Model res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSApiGatewayModel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayModel(*res.Properties) + *r = Model(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-requestvalidator.go b/cloudformation/apigateway/aws-apigateway-requestvalidator.go similarity index 80% rename from cloudformation/resources/aws-apigateway-requestvalidator.go rename to cloudformation/apigateway/aws-apigateway-requestvalidator.go index 7077f43cd6..0a3f1ba94c 100644 --- a/cloudformation/resources/aws-apigateway-requestvalidator.go +++ b/cloudformation/apigateway/aws-apigateway-requestvalidator.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayRequestValidator AWS CloudFormation Resource (AWS::ApiGateway::RequestValidator) +// RequestValidator AWS CloudFormation Resource (AWS::ApiGateway::RequestValidator) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html -type AWSApiGatewayRequestValidator struct { +type RequestValidator struct { // Name AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSApiGatewayRequestValidator struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayRequestValidator) AWSCloudFormationType() string { +func (r *RequestValidator) AWSCloudFormationType() string { return "AWS::ApiGateway::RequestValidator" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayRequestValidator) DependsOn() []string { +func (r *RequestValidator) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayRequestValidator) SetDependsOn(dependencies []string) { +func (r *RequestValidator) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayRequestValidator) Metadata() map[string]interface{} { +func (r *RequestValidator) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayRequestValidator) SetMetadata(metadata map[string]interface{}) { +func (r *RequestValidator) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayRequestValidator) DeletionPolicy() policies.DeletionPolicy { +func (r *RequestValidator) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayRequestValidator) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RequestValidator) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayRequestValidator) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayRequestValidator +func (r RequestValidator) MarshalJSON() ([]byte, error) { + type Properties RequestValidator return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSApiGatewayRequestValidator) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayRequestValidator) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayRequestValidator +func (r *RequestValidator) UnmarshalJSON(b []byte) error { + type Properties RequestValidator res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSApiGatewayRequestValidator) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayRequestValidator(*res.Properties) + *r = RequestValidator(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-resource.go b/cloudformation/apigateway/aws-apigateway-resource.go similarity index 81% rename from cloudformation/resources/aws-apigateway-resource.go rename to cloudformation/apigateway/aws-apigateway-resource.go index 0a436fc788..4bb35f97f4 100644 --- a/cloudformation/resources/aws-apigateway-resource.go +++ b/cloudformation/apigateway/aws-apigateway-resource.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayResource AWS CloudFormation Resource (AWS::ApiGateway::Resource) +// Resource AWS CloudFormation Resource (AWS::ApiGateway::Resource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html -type AWSApiGatewayResource struct { +type Resource struct { // ParentId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSApiGatewayResource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayResource) AWSCloudFormationType() string { +func (r *Resource) AWSCloudFormationType() string { return "AWS::ApiGateway::Resource" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayResource) DependsOn() []string { +func (r *Resource) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayResource) SetDependsOn(dependencies []string) { +func (r *Resource) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayResource) Metadata() map[string]interface{} { +func (r *Resource) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayResource) SetMetadata(metadata map[string]interface{}) { +func (r *Resource) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayResource) DeletionPolicy() policies.DeletionPolicy { +func (r *Resource) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayResource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Resource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayResource) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayResource +func (r Resource) MarshalJSON() ([]byte, error) { + type Properties Resource return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSApiGatewayResource) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayResource) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayResource +func (r *Resource) UnmarshalJSON(b []byte) error { + type Properties Resource res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSApiGatewayResource) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayResource(*res.Properties) + *r = Resource(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-restapi.go b/cloudformation/apigateway/aws-apigateway-restapi.go similarity index 85% rename from cloudformation/resources/aws-apigateway-restapi.go rename to cloudformation/apigateway/aws-apigateway-restapi.go index e8cd2d06a9..4ebd034949 100644 --- a/cloudformation/resources/aws-apigateway-restapi.go +++ b/cloudformation/apigateway/aws-apigateway-restapi.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayRestApi AWS CloudFormation Resource (AWS::ApiGateway::RestApi) +// RestApi AWS CloudFormation Resource (AWS::ApiGateway::RestApi) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html -type AWSApiGatewayRestApi struct { +type RestApi struct { // ApiKeySourceType AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSApiGatewayRestApi struct { // BodyS3Location AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location - BodyS3Location *AWSApiGatewayRestApi_S3Location `json:"BodyS3Location,omitempty"` + BodyS3Location *RestApi_S3Location `json:"BodyS3Location,omitempty"` // CloneFrom AWS CloudFormation Property // Required: false @@ -44,7 +45,7 @@ type AWSApiGatewayRestApi struct { // EndpointConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration - EndpointConfiguration *AWSApiGatewayRestApi_EndpointConfiguration `json:"EndpointConfiguration,omitempty"` + EndpointConfiguration *RestApi_EndpointConfiguration `json:"EndpointConfiguration,omitempty"` // FailOnWarnings AWS CloudFormation Property // Required: false @@ -82,50 +83,50 @@ type AWSApiGatewayRestApi struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayRestApi) AWSCloudFormationType() string { +func (r *RestApi) AWSCloudFormationType() string { return "AWS::ApiGateway::RestApi" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayRestApi) DependsOn() []string { +func (r *RestApi) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayRestApi) SetDependsOn(dependencies []string) { +func (r *RestApi) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayRestApi) Metadata() map[string]interface{} { +func (r *RestApi) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayRestApi) SetMetadata(metadata map[string]interface{}) { +func (r *RestApi) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayRestApi) DeletionPolicy() policies.DeletionPolicy { +func (r *RestApi) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayRestApi) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RestApi) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayRestApi) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayRestApi +func (r RestApi) MarshalJSON() ([]byte, error) { + type Properties RestApi return json.Marshal(&struct { Type string Properties Properties @@ -143,8 +144,8 @@ func (r AWSApiGatewayRestApi) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayRestApi) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayRestApi +func (r *RestApi) UnmarshalJSON(b []byte) error { + type Properties RestApi res := &struct { Type string Properties *Properties @@ -163,7 +164,7 @@ func (r *AWSApiGatewayRestApi) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayRestApi(*res.Properties) + *r = RestApi(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigateway/aws-apigateway-restapi_endpointconfiguration.go b/cloudformation/apigateway/aws-apigateway-restapi_endpointconfiguration.go new file mode 100644 index 0000000000..fdcbbd82a5 --- /dev/null +++ b/cloudformation/apigateway/aws-apigateway-restapi_endpointconfiguration.go @@ -0,0 +1,65 @@ +package apigateway + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RestApi_EndpointConfiguration AWS CloudFormation Resource (AWS::ApiGateway::RestApi.EndpointConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html +type RestApi_EndpointConfiguration struct { + + // Types AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-types + Types []string `json:"Types,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RestApi_EndpointConfiguration) AWSCloudFormationType() string { + return "AWS::ApiGateway::RestApi.EndpointConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RestApi_EndpointConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RestApi_EndpointConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RestApi_EndpointConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RestApi_EndpointConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RestApi_EndpointConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RestApi_EndpointConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigateway-restapi_s3location.go b/cloudformation/apigateway/aws-apigateway-restapi_s3location.go similarity index 78% rename from cloudformation/resources/aws-apigateway-restapi_s3location.go rename to cloudformation/apigateway/aws-apigateway-restapi_s3location.go index a39e4764c7..1aee0bf16a 100644 --- a/cloudformation/resources/aws-apigateway-restapi_s3location.go +++ b/cloudformation/apigateway/aws-apigateway-restapi_s3location.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayRestApi_S3Location AWS CloudFormation Resource (AWS::ApiGateway::RestApi.S3Location) +// RestApi_S3Location AWS CloudFormation Resource (AWS::ApiGateway::RestApi.S3Location) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html -type AWSApiGatewayRestApi_S3Location struct { +type RestApi_S3Location struct { // Bucket AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSApiGatewayRestApi_S3Location struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayRestApi_S3Location) AWSCloudFormationType() string { +func (r *RestApi_S3Location) AWSCloudFormationType() string { return "AWS::ApiGateway::RestApi.S3Location" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayRestApi_S3Location) DependsOn() []string { +func (r *RestApi_S3Location) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayRestApi_S3Location) SetDependsOn(dependencies []string) { +func (r *RestApi_S3Location) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayRestApi_S3Location) Metadata() map[string]interface{} { +func (r *RestApi_S3Location) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayRestApi_S3Location) SetMetadata(metadata map[string]interface{}) { +func (r *RestApi_S3Location) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayRestApi_S3Location) DeletionPolicy() policies.DeletionPolicy { +func (r *RestApi_S3Location) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayRestApi_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RestApi_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-stage.go b/cloudformation/apigateway/aws-apigateway-stage.go similarity index 85% rename from cloudformation/resources/aws-apigateway-stage.go rename to cloudformation/apigateway/aws-apigateway-stage.go index 5f35b6b4c7..81400f805e 100644 --- a/cloudformation/resources/aws-apigateway-stage.go +++ b/cloudformation/apigateway/aws-apigateway-stage.go @@ -1,20 +1,22 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSApiGatewayStage AWS CloudFormation Resource (AWS::ApiGateway::Stage) +// Stage AWS CloudFormation Resource (AWS::ApiGateway::Stage) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html -type AWSApiGatewayStage struct { +type Stage struct { // AccessLogSetting AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting - AccessLogSetting *AWSApiGatewayStage_AccessLogSetting `json:"AccessLogSetting,omitempty"` + AccessLogSetting *Stage_AccessLogSetting `json:"AccessLogSetting,omitempty"` // CacheClusterEnabled AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSApiGatewayStage struct { // CanarySetting AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting - CanarySetting *AWSApiGatewayStage_CanarySetting `json:"CanarySetting,omitempty"` + CanarySetting *Stage_CanarySetting `json:"CanarySetting,omitempty"` // ClientCertificateId AWS CloudFormation Property // Required: false @@ -54,7 +56,7 @@ type AWSApiGatewayStage struct { // MethodSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings - MethodSettings []AWSApiGatewayStage_MethodSetting `json:"MethodSettings,omitempty"` + MethodSettings []Stage_MethodSetting `json:"MethodSettings,omitempty"` // RestApiId AWS CloudFormation Property // Required: true @@ -69,7 +71,7 @@ type AWSApiGatewayStage struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TracingEnabled AWS CloudFormation Property // Required: false @@ -92,50 +94,50 @@ type AWSApiGatewayStage struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayStage) AWSCloudFormationType() string { +func (r *Stage) AWSCloudFormationType() string { return "AWS::ApiGateway::Stage" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayStage) DependsOn() []string { +func (r *Stage) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayStage) SetDependsOn(dependencies []string) { +func (r *Stage) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayStage) Metadata() map[string]interface{} { +func (r *Stage) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayStage) SetMetadata(metadata map[string]interface{}) { +func (r *Stage) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayStage) DeletionPolicy() policies.DeletionPolicy { +func (r *Stage) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayStage) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stage) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayStage) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayStage +func (r Stage) MarshalJSON() ([]byte, error) { + type Properties Stage return json.Marshal(&struct { Type string Properties Properties @@ -153,8 +155,8 @@ func (r AWSApiGatewayStage) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayStage) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayStage +func (r *Stage) UnmarshalJSON(b []byte) error { + type Properties Stage res := &struct { Type string Properties *Properties @@ -173,7 +175,7 @@ func (r *AWSApiGatewayStage) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayStage(*res.Properties) + *r = Stage(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigateway/aws-apigateway-stage_accesslogsetting.go b/cloudformation/apigateway/aws-apigateway-stage_accesslogsetting.go new file mode 100644 index 0000000000..92ceef82e2 --- /dev/null +++ b/cloudformation/apigateway/aws-apigateway-stage_accesslogsetting.go @@ -0,0 +1,70 @@ +package apigateway + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Stage_AccessLogSetting AWS CloudFormation Resource (AWS::ApiGateway::Stage.AccessLogSetting) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html +type Stage_AccessLogSetting struct { + + // DestinationArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-destinationarn + DestinationArn string `json:"DestinationArn,omitempty"` + + // Format AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-format + Format string `json:"Format,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Stage_AccessLogSetting) AWSCloudFormationType() string { + return "AWS::ApiGateway::Stage.AccessLogSetting" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stage_AccessLogSetting) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stage_AccessLogSetting) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stage_AccessLogSetting) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stage_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stage_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stage_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigateway-stage_canarysetting.go b/cloudformation/apigateway/aws-apigateway-stage_canarysetting.go similarity index 78% rename from cloudformation/resources/aws-apigateway-stage_canarysetting.go rename to cloudformation/apigateway/aws-apigateway-stage_canarysetting.go index cce6290d93..7e90cec215 100644 --- a/cloudformation/resources/aws-apigateway-stage_canarysetting.go +++ b/cloudformation/apigateway/aws-apigateway-stage_canarysetting.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayStage_CanarySetting AWS CloudFormation Resource (AWS::ApiGateway::Stage.CanarySetting) +// Stage_CanarySetting AWS CloudFormation Resource (AWS::ApiGateway::Stage.CanarySetting) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html -type AWSApiGatewayStage_CanarySetting struct { +type Stage_CanarySetting struct { // DeploymentId AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSApiGatewayStage_CanarySetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayStage_CanarySetting) AWSCloudFormationType() string { +func (r *Stage_CanarySetting) AWSCloudFormationType() string { return "AWS::ApiGateway::Stage.CanarySetting" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayStage_CanarySetting) DependsOn() []string { +func (r *Stage_CanarySetting) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayStage_CanarySetting) SetDependsOn(dependencies []string) { +func (r *Stage_CanarySetting) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayStage_CanarySetting) Metadata() map[string]interface{} { +func (r *Stage_CanarySetting) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayStage_CanarySetting) SetMetadata(metadata map[string]interface{}) { +func (r *Stage_CanarySetting) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayStage_CanarySetting) DeletionPolicy() policies.DeletionPolicy { +func (r *Stage_CanarySetting) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayStage_CanarySetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stage_CanarySetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-stage_methodsetting.go b/cloudformation/apigateway/aws-apigateway-stage_methodsetting.go similarity index 85% rename from cloudformation/resources/aws-apigateway-stage_methodsetting.go rename to cloudformation/apigateway/aws-apigateway-stage_methodsetting.go index 5181da205f..a7b08b0943 100644 --- a/cloudformation/resources/aws-apigateway-stage_methodsetting.go +++ b/cloudformation/apigateway/aws-apigateway-stage_methodsetting.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayStage_MethodSetting AWS CloudFormation Resource (AWS::ApiGateway::Stage.MethodSetting) +// Stage_MethodSetting AWS CloudFormation Resource (AWS::ApiGateway::Stage.MethodSetting) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html -type AWSApiGatewayStage_MethodSetting struct { +type Stage_MethodSetting struct { // CacheDataEncrypted AWS CloudFormation Property // Required: false @@ -67,42 +69,42 @@ type AWSApiGatewayStage_MethodSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayStage_MethodSetting) AWSCloudFormationType() string { +func (r *Stage_MethodSetting) AWSCloudFormationType() string { return "AWS::ApiGateway::Stage.MethodSetting" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayStage_MethodSetting) DependsOn() []string { +func (r *Stage_MethodSetting) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayStage_MethodSetting) SetDependsOn(dependencies []string) { +func (r *Stage_MethodSetting) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayStage_MethodSetting) Metadata() map[string]interface{} { +func (r *Stage_MethodSetting) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayStage_MethodSetting) SetMetadata(metadata map[string]interface{}) { +func (r *Stage_MethodSetting) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayStage_MethodSetting) DeletionPolicy() policies.DeletionPolicy { +func (r *Stage_MethodSetting) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayStage_MethodSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stage_MethodSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-apigateway-usageplan.go b/cloudformation/apigateway/aws-apigateway-usageplan.go similarity index 79% rename from cloudformation/resources/aws-apigateway-usageplan.go rename to cloudformation/apigateway/aws-apigateway-usageplan.go index c1d23f9f7a..226480795e 100644 --- a/cloudformation/resources/aws-apigateway-usageplan.go +++ b/cloudformation/apigateway/aws-apigateway-usageplan.go @@ -1,20 +1,21 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayUsagePlan AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan) +// UsagePlan AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html -type AWSApiGatewayUsagePlan struct { +type UsagePlan struct { // ApiStages AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-apistages - ApiStages []AWSApiGatewayUsagePlan_ApiStage `json:"ApiStages,omitempty"` + ApiStages []UsagePlan_ApiStage `json:"ApiStages,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -24,12 +25,12 @@ type AWSApiGatewayUsagePlan struct { // Quota AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota - Quota *AWSApiGatewayUsagePlan_QuotaSettings `json:"Quota,omitempty"` + Quota *UsagePlan_QuotaSettings `json:"Quota,omitempty"` // Throttle AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle - Throttle *AWSApiGatewayUsagePlan_ThrottleSettings `json:"Throttle,omitempty"` + Throttle *UsagePlan_ThrottleSettings `json:"Throttle,omitempty"` // UsagePlanName AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSApiGatewayUsagePlan struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayUsagePlan) AWSCloudFormationType() string { +func (r *UsagePlan) AWSCloudFormationType() string { return "AWS::ApiGateway::UsagePlan" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlan) DependsOn() []string { +func (r *UsagePlan) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlan) SetDependsOn(dependencies []string) { +func (r *UsagePlan) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlan) Metadata() map[string]interface{} { +func (r *UsagePlan) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlan) SetMetadata(metadata map[string]interface{}) { +func (r *UsagePlan) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlan) DeletionPolicy() policies.DeletionPolicy { +func (r *UsagePlan) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlan) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UsagePlan) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayUsagePlan) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayUsagePlan +func (r UsagePlan) MarshalJSON() ([]byte, error) { + type Properties UsagePlan return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSApiGatewayUsagePlan) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayUsagePlan) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayUsagePlan +func (r *UsagePlan) UnmarshalJSON(b []byte) error { + type Properties UsagePlan res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSApiGatewayUsagePlan) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayUsagePlan(*res.Properties) + *r = UsagePlan(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigateway/aws-apigateway-usageplan_apistage.go b/cloudformation/apigateway/aws-apigateway-usageplan_apistage.go new file mode 100644 index 0000000000..21c369a479 --- /dev/null +++ b/cloudformation/apigateway/aws-apigateway-usageplan_apistage.go @@ -0,0 +1,75 @@ +package apigateway + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UsagePlan_ApiStage AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan.ApiStage) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html +type UsagePlan_ApiStage struct { + + // ApiId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-apiid + ApiId string `json:"ApiId,omitempty"` + + // Stage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-stage + Stage string `json:"Stage,omitempty"` + + // Throttle AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-throttle + Throttle map[string]UsagePlan_ThrottleSettings `json:"Throttle,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UsagePlan_ApiStage) AWSCloudFormationType() string { + return "AWS::ApiGateway::UsagePlan.ApiStage" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UsagePlan_ApiStage) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UsagePlan_ApiStage) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UsagePlan_ApiStage) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UsagePlan_ApiStage) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UsagePlan_ApiStage) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UsagePlan_ApiStage) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigateway-usageplan_quotasettings.go b/cloudformation/apigateway/aws-apigateway-usageplan_quotasettings.go similarity index 75% rename from cloudformation/resources/aws-apigateway-usageplan_quotasettings.go rename to cloudformation/apigateway/aws-apigateway-usageplan_quotasettings.go index adc917811c..a30a27bf1b 100644 --- a/cloudformation/resources/aws-apigateway-usageplan_quotasettings.go +++ b/cloudformation/apigateway/aws-apigateway-usageplan_quotasettings.go @@ -1,10 +1,12 @@ -package resources +package apigateway -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayUsagePlan_QuotaSettings AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan.QuotaSettings) +// UsagePlan_QuotaSettings AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan.QuotaSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html -type AWSApiGatewayUsagePlan_QuotaSettings struct { +type UsagePlan_QuotaSettings struct { // Limit AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSApiGatewayUsagePlan_QuotaSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayUsagePlan_QuotaSettings) AWSCloudFormationType() string { +func (r *UsagePlan_QuotaSettings) AWSCloudFormationType() string { return "AWS::ApiGateway::UsagePlan.QuotaSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlan_QuotaSettings) DependsOn() []string { +func (r *UsagePlan_QuotaSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlan_QuotaSettings) SetDependsOn(dependencies []string) { +func (r *UsagePlan_QuotaSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlan_QuotaSettings) Metadata() map[string]interface{} { +func (r *UsagePlan_QuotaSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlan_QuotaSettings) SetMetadata(metadata map[string]interface{}) { +func (r *UsagePlan_QuotaSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlan_QuotaSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *UsagePlan_QuotaSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlan_QuotaSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UsagePlan_QuotaSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/apigateway/aws-apigateway-usageplan_throttlesettings.go b/cloudformation/apigateway/aws-apigateway-usageplan_throttlesettings.go new file mode 100644 index 0000000000..09dbcca3ad --- /dev/null +++ b/cloudformation/apigateway/aws-apigateway-usageplan_throttlesettings.go @@ -0,0 +1,70 @@ +package apigateway + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UsagePlan_ThrottleSettings AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan.ThrottleSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html +type UsagePlan_ThrottleSettings struct { + + // BurstLimit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-burstlimit + BurstLimit int `json:"BurstLimit,omitempty"` + + // RateLimit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-ratelimit + RateLimit float64 `json:"RateLimit,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UsagePlan_ThrottleSettings) AWSCloudFormationType() string { + return "AWS::ApiGateway::UsagePlan.ThrottleSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UsagePlan_ThrottleSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UsagePlan_ThrottleSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UsagePlan_ThrottleSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UsagePlan_ThrottleSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UsagePlan_ThrottleSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UsagePlan_ThrottleSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigateway-usageplankey.go b/cloudformation/apigateway/aws-apigateway-usageplankey.go similarity index 80% rename from cloudformation/resources/aws-apigateway-usageplankey.go rename to cloudformation/apigateway/aws-apigateway-usageplankey.go index 6273be3af6..87bfd27f8c 100644 --- a/cloudformation/resources/aws-apigateway-usageplankey.go +++ b/cloudformation/apigateway/aws-apigateway-usageplankey.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayUsagePlanKey AWS CloudFormation Resource (AWS::ApiGateway::UsagePlanKey) +// UsagePlanKey AWS CloudFormation Resource (AWS::ApiGateway::UsagePlanKey) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html -type AWSApiGatewayUsagePlanKey struct { +type UsagePlanKey struct { // KeyId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSApiGatewayUsagePlanKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayUsagePlanKey) AWSCloudFormationType() string { +func (r *UsagePlanKey) AWSCloudFormationType() string { return "AWS::ApiGateway::UsagePlanKey" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlanKey) DependsOn() []string { +func (r *UsagePlanKey) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlanKey) SetDependsOn(dependencies []string) { +func (r *UsagePlanKey) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlanKey) Metadata() map[string]interface{} { +func (r *UsagePlanKey) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlanKey) SetMetadata(metadata map[string]interface{}) { +func (r *UsagePlanKey) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlanKey) DeletionPolicy() policies.DeletionPolicy { +func (r *UsagePlanKey) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlanKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UsagePlanKey) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayUsagePlanKey) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayUsagePlanKey +func (r UsagePlanKey) MarshalJSON() ([]byte, error) { + type Properties UsagePlanKey return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSApiGatewayUsagePlanKey) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayUsagePlanKey) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayUsagePlanKey +func (r *UsagePlanKey) UnmarshalJSON(b []byte) error { + type Properties UsagePlanKey res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSApiGatewayUsagePlanKey) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayUsagePlanKey(*res.Properties) + *r = UsagePlanKey(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigateway-vpclink.go b/cloudformation/apigateway/aws-apigateway-vpclink.go similarity index 81% rename from cloudformation/resources/aws-apigateway-vpclink.go rename to cloudformation/apigateway/aws-apigateway-vpclink.go index 3f0842d0f1..6962b809d3 100644 --- a/cloudformation/resources/aws-apigateway-vpclink.go +++ b/cloudformation/apigateway/aws-apigateway-vpclink.go @@ -1,15 +1,16 @@ -package resources +package apigateway import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayVpcLink AWS CloudFormation Resource (AWS::ApiGateway::VpcLink) +// VpcLink AWS CloudFormation Resource (AWS::ApiGateway::VpcLink) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html -type AWSApiGatewayVpcLink struct { +type VpcLink struct { // Description AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSApiGatewayVpcLink struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayVpcLink) AWSCloudFormationType() string { +func (r *VpcLink) AWSCloudFormationType() string { return "AWS::ApiGateway::VpcLink" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayVpcLink) DependsOn() []string { +func (r *VpcLink) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayVpcLink) SetDependsOn(dependencies []string) { +func (r *VpcLink) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayVpcLink) Metadata() map[string]interface{} { +func (r *VpcLink) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayVpcLink) SetMetadata(metadata map[string]interface{}) { +func (r *VpcLink) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayVpcLink) DeletionPolicy() policies.DeletionPolicy { +func (r *VpcLink) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayVpcLink) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VpcLink) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayVpcLink) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayVpcLink +func (r VpcLink) MarshalJSON() ([]byte, error) { + type Properties VpcLink return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSApiGatewayVpcLink) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayVpcLink) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayVpcLink +func (r *VpcLink) UnmarshalJSON(b []byte) error { + type Properties VpcLink res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSApiGatewayVpcLink) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayVpcLink(*res.Properties) + *r = VpcLink(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigatewayv2-api.go b/cloudformation/apigatewayv2/aws-apigatewayv2-api.go similarity index 85% rename from cloudformation/resources/aws-apigatewayv2-api.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-api.go index c1adbdccfd..6d1e269d31 100644 --- a/cloudformation/resources/aws-apigatewayv2-api.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-api.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2Api AWS CloudFormation Resource (AWS::ApiGatewayV2::Api) +// Api AWS CloudFormation Resource (AWS::ApiGatewayV2::Api) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html -type AWSApiGatewayV2Api struct { +type Api struct { // ApiKeySelectionExpression AWS CloudFormation Property // Required: false @@ -62,50 +63,50 @@ type AWSApiGatewayV2Api struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Api) AWSCloudFormationType() string { +func (r *Api) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::Api" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Api) DependsOn() []string { +func (r *Api) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Api) SetDependsOn(dependencies []string) { +func (r *Api) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Api) Metadata() map[string]interface{} { +func (r *Api) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Api) SetMetadata(metadata map[string]interface{}) { +func (r *Api) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Api) DeletionPolicy() policies.DeletionPolicy { +func (r *Api) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Api) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Api) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2Api) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2Api +func (r Api) MarshalJSON() ([]byte, error) { + type Properties Api return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSApiGatewayV2Api) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2Api) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2Api +func (r *Api) UnmarshalJSON(b []byte) error { + type Properties Api res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSApiGatewayV2Api) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2Api(*res.Properties) + *r = Api(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigatewayv2-apimapping.go b/cloudformation/apigatewayv2/aws-apigatewayv2-apimapping.go similarity index 81% rename from cloudformation/resources/aws-apigatewayv2-apimapping.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-apimapping.go index 06cd23dc98..86d198d1e9 100644 --- a/cloudformation/resources/aws-apigatewayv2-apimapping.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-apimapping.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2ApiMapping AWS CloudFormation Resource (AWS::ApiGatewayV2::ApiMapping) +// ApiMapping AWS CloudFormation Resource (AWS::ApiGatewayV2::ApiMapping) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html -type AWSApiGatewayV2ApiMapping struct { +type ApiMapping struct { // ApiId AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSApiGatewayV2ApiMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2ApiMapping) AWSCloudFormationType() string { +func (r *ApiMapping) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::ApiMapping" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2ApiMapping) DependsOn() []string { +func (r *ApiMapping) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2ApiMapping) SetDependsOn(dependencies []string) { +func (r *ApiMapping) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2ApiMapping) Metadata() map[string]interface{} { +func (r *ApiMapping) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2ApiMapping) SetMetadata(metadata map[string]interface{}) { +func (r *ApiMapping) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2ApiMapping) DeletionPolicy() policies.DeletionPolicy { +func (r *ApiMapping) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2ApiMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApiMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2ApiMapping) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2ApiMapping +func (r ApiMapping) MarshalJSON() ([]byte, error) { + type Properties ApiMapping return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSApiGatewayV2ApiMapping) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2ApiMapping) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2ApiMapping +func (r *ApiMapping) UnmarshalJSON(b []byte) error { + type Properties ApiMapping res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSApiGatewayV2ApiMapping) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2ApiMapping(*res.Properties) + *r = ApiMapping(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigatewayv2-authorizer.go b/cloudformation/apigatewayv2/aws-apigatewayv2-authorizer.go similarity index 84% rename from cloudformation/resources/aws-apigatewayv2-authorizer.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-authorizer.go index 21f73cd9d5..a859a5b2e2 100644 --- a/cloudformation/resources/aws-apigatewayv2-authorizer.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-authorizer.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2Authorizer AWS CloudFormation Resource (AWS::ApiGatewayV2::Authorizer) +// Authorizer AWS CloudFormation Resource (AWS::ApiGatewayV2::Authorizer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html -type AWSApiGatewayV2Authorizer struct { +type Authorizer struct { // ApiId AWS CloudFormation Property // Required: true @@ -62,50 +63,50 @@ type AWSApiGatewayV2Authorizer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Authorizer) AWSCloudFormationType() string { +func (r *Authorizer) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::Authorizer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Authorizer) DependsOn() []string { +func (r *Authorizer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Authorizer) SetDependsOn(dependencies []string) { +func (r *Authorizer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Authorizer) Metadata() map[string]interface{} { +func (r *Authorizer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Authorizer) SetMetadata(metadata map[string]interface{}) { +func (r *Authorizer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Authorizer) DeletionPolicy() policies.DeletionPolicy { +func (r *Authorizer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Authorizer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Authorizer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2Authorizer) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2Authorizer +func (r Authorizer) MarshalJSON() ([]byte, error) { + type Properties Authorizer return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSApiGatewayV2Authorizer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2Authorizer) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2Authorizer +func (r *Authorizer) UnmarshalJSON(b []byte) error { + type Properties Authorizer res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSApiGatewayV2Authorizer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2Authorizer(*res.Properties) + *r = Authorizer(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigatewayv2-deployment.go b/cloudformation/apigatewayv2/aws-apigatewayv2-deployment.go similarity index 80% rename from cloudformation/resources/aws-apigatewayv2-deployment.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-deployment.go index 3e290af988..bbc81660ad 100644 --- a/cloudformation/resources/aws-apigatewayv2-deployment.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-deployment.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2Deployment AWS CloudFormation Resource (AWS::ApiGatewayV2::Deployment) +// Deployment AWS CloudFormation Resource (AWS::ApiGatewayV2::Deployment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html -type AWSApiGatewayV2Deployment struct { +type Deployment struct { // ApiId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSApiGatewayV2Deployment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Deployment) AWSCloudFormationType() string { +func (r *Deployment) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::Deployment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Deployment) DependsOn() []string { +func (r *Deployment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Deployment) SetDependsOn(dependencies []string) { +func (r *Deployment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Deployment) Metadata() map[string]interface{} { +func (r *Deployment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Deployment) SetMetadata(metadata map[string]interface{}) { +func (r *Deployment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Deployment) DeletionPolicy() policies.DeletionPolicy { +func (r *Deployment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Deployment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Deployment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2Deployment) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2Deployment +func (r Deployment) MarshalJSON() ([]byte, error) { + type Properties Deployment return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSApiGatewayV2Deployment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2Deployment) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2Deployment +func (r *Deployment) UnmarshalJSON(b []byte) error { + type Properties Deployment res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSApiGatewayV2Deployment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2Deployment(*res.Properties) + *r = Deployment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigatewayv2-domainname.go b/cloudformation/apigatewayv2/aws-apigatewayv2-domainname.go similarity index 78% rename from cloudformation/resources/aws-apigatewayv2-domainname.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-domainname.go index 8aa73dc6bb..f6cb262e08 100644 --- a/cloudformation/resources/aws-apigatewayv2-domainname.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-domainname.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2DomainName AWS CloudFormation Resource (AWS::ApiGatewayV2::DomainName) +// DomainName AWS CloudFormation Resource (AWS::ApiGatewayV2::DomainName) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html -type AWSApiGatewayV2DomainName struct { +type DomainName struct { // DomainName AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSApiGatewayV2DomainName struct { // DomainNameConfigurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-domainnameconfigurations - DomainNameConfigurations []AWSApiGatewayV2DomainName_DomainNameConfiguration `json:"DomainNameConfigurations,omitempty"` + DomainNameConfigurations []DomainName_DomainNameConfiguration `json:"DomainNameConfigurations,omitempty"` // Tags AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSApiGatewayV2DomainName struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2DomainName) AWSCloudFormationType() string { +func (r *DomainName) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::DomainName" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2DomainName) DependsOn() []string { +func (r *DomainName) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2DomainName) SetDependsOn(dependencies []string) { +func (r *DomainName) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2DomainName) Metadata() map[string]interface{} { +func (r *DomainName) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2DomainName) SetMetadata(metadata map[string]interface{}) { +func (r *DomainName) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2DomainName) DeletionPolicy() policies.DeletionPolicy { +func (r *DomainName) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2DomainName) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DomainName) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2DomainName) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2DomainName +func (r DomainName) MarshalJSON() ([]byte, error) { + type Properties DomainName return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSApiGatewayV2DomainName) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2DomainName) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2DomainName +func (r *DomainName) UnmarshalJSON(b []byte) error { + type Properties DomainName res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSApiGatewayV2DomainName) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2DomainName(*res.Properties) + *r = DomainName(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigatewayv2/aws-apigatewayv2-domainname_domainnameconfiguration.go b/cloudformation/apigatewayv2/aws-apigatewayv2-domainname_domainnameconfiguration.go new file mode 100644 index 0000000000..9b7f07a24c --- /dev/null +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-domainname_domainnameconfiguration.go @@ -0,0 +1,75 @@ +package apigatewayv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DomainName_DomainNameConfiguration AWS CloudFormation Resource (AWS::ApiGatewayV2::DomainName.DomainNameConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html +type DomainName_DomainNameConfiguration struct { + + // CertificateArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatearn + CertificateArn string `json:"CertificateArn,omitempty"` + + // CertificateName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatename + CertificateName string `json:"CertificateName,omitempty"` + + // EndpointType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-endpointtype + EndpointType string `json:"EndpointType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DomainName_DomainNameConfiguration) AWSCloudFormationType() string { + return "AWS::ApiGatewayV2::DomainName.DomainNameConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DomainName_DomainNameConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DomainName_DomainNameConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DomainName_DomainNameConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DomainName_DomainNameConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DomainName_DomainNameConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DomainName_DomainNameConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigatewayv2-integration.go b/cloudformation/apigatewayv2/aws-apigatewayv2-integration.go similarity index 87% rename from cloudformation/resources/aws-apigatewayv2-integration.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-integration.go index ec45f542d3..2082b5ef4a 100644 --- a/cloudformation/resources/aws-apigatewayv2-integration.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-integration.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2Integration AWS CloudFormation Resource (AWS::ApiGatewayV2::Integration) +// Integration AWS CloudFormation Resource (AWS::ApiGatewayV2::Integration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html -type AWSApiGatewayV2Integration struct { +type Integration struct { // ApiId AWS CloudFormation Property // Required: true @@ -87,50 +88,50 @@ type AWSApiGatewayV2Integration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Integration) AWSCloudFormationType() string { +func (r *Integration) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::Integration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Integration) DependsOn() []string { +func (r *Integration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Integration) SetDependsOn(dependencies []string) { +func (r *Integration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Integration) Metadata() map[string]interface{} { +func (r *Integration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Integration) SetMetadata(metadata map[string]interface{}) { +func (r *Integration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Integration) DeletionPolicy() policies.DeletionPolicy { +func (r *Integration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Integration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Integration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2Integration) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2Integration +func (r Integration) MarshalJSON() ([]byte, error) { + type Properties Integration return json.Marshal(&struct { Type string Properties Properties @@ -148,8 +149,8 @@ func (r AWSApiGatewayV2Integration) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2Integration) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2Integration +func (r *Integration) UnmarshalJSON(b []byte) error { + type Properties Integration res := &struct { Type string Properties *Properties @@ -168,7 +169,7 @@ func (r *AWSApiGatewayV2Integration) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2Integration(*res.Properties) + *r = Integration(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigatewayv2-integrationresponse.go b/cloudformation/apigatewayv2/aws-apigatewayv2-integrationresponse.go similarity index 82% rename from cloudformation/resources/aws-apigatewayv2-integrationresponse.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-integrationresponse.go index 1e7597021c..b6c2773a5f 100644 --- a/cloudformation/resources/aws-apigatewayv2-integrationresponse.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-integrationresponse.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2IntegrationResponse AWS CloudFormation Resource (AWS::ApiGatewayV2::IntegrationResponse) +// IntegrationResponse AWS CloudFormation Resource (AWS::ApiGatewayV2::IntegrationResponse) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html -type AWSApiGatewayV2IntegrationResponse struct { +type IntegrationResponse struct { // ApiId AWS CloudFormation Property // Required: true @@ -57,50 +58,50 @@ type AWSApiGatewayV2IntegrationResponse struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2IntegrationResponse) AWSCloudFormationType() string { +func (r *IntegrationResponse) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::IntegrationResponse" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2IntegrationResponse) DependsOn() []string { +func (r *IntegrationResponse) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2IntegrationResponse) SetDependsOn(dependencies []string) { +func (r *IntegrationResponse) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2IntegrationResponse) Metadata() map[string]interface{} { +func (r *IntegrationResponse) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2IntegrationResponse) SetMetadata(metadata map[string]interface{}) { +func (r *IntegrationResponse) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2IntegrationResponse) DeletionPolicy() policies.DeletionPolicy { +func (r *IntegrationResponse) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2IntegrationResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IntegrationResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2IntegrationResponse) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2IntegrationResponse +func (r IntegrationResponse) MarshalJSON() ([]byte, error) { + type Properties IntegrationResponse return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSApiGatewayV2IntegrationResponse) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2IntegrationResponse) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2IntegrationResponse +func (r *IntegrationResponse) UnmarshalJSON(b []byte) error { + type Properties IntegrationResponse res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSApiGatewayV2IntegrationResponse) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2IntegrationResponse(*res.Properties) + *r = IntegrationResponse(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigatewayv2-model.go b/cloudformation/apigatewayv2/aws-apigatewayv2-model.go similarity index 83% rename from cloudformation/resources/aws-apigatewayv2-model.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-model.go index 11506f2f6c..50b8a3c9ee 100644 --- a/cloudformation/resources/aws-apigatewayv2-model.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-model.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2Model AWS CloudFormation Resource (AWS::ApiGatewayV2::Model) +// Model AWS CloudFormation Resource (AWS::ApiGatewayV2::Model) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html -type AWSApiGatewayV2Model struct { +type Model struct { // ApiId AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSApiGatewayV2Model struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Model) AWSCloudFormationType() string { +func (r *Model) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::Model" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Model) DependsOn() []string { +func (r *Model) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Model) SetDependsOn(dependencies []string) { +func (r *Model) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Model) Metadata() map[string]interface{} { +func (r *Model) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Model) SetMetadata(metadata map[string]interface{}) { +func (r *Model) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Model) DeletionPolicy() policies.DeletionPolicy { +func (r *Model) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Model) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Model) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2Model) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2Model +func (r Model) MarshalJSON() ([]byte, error) { + type Properties Model return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSApiGatewayV2Model) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2Model) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2Model +func (r *Model) UnmarshalJSON(b []byte) error { + type Properties Model res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSApiGatewayV2Model) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2Model(*res.Properties) + *r = Model(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-apigatewayv2-route.go b/cloudformation/apigatewayv2/aws-apigatewayv2-route.go similarity index 87% rename from cloudformation/resources/aws-apigatewayv2-route.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-route.go index 1c35d0aada..953a36f1e0 100644 --- a/cloudformation/resources/aws-apigatewayv2-route.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-route.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2Route AWS CloudFormation Resource (AWS::ApiGatewayV2::Route) +// Route AWS CloudFormation Resource (AWS::ApiGatewayV2::Route) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html -type AWSApiGatewayV2Route struct { +type Route struct { // ApiId AWS CloudFormation Property // Required: true @@ -82,50 +83,50 @@ type AWSApiGatewayV2Route struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Route) AWSCloudFormationType() string { +func (r *Route) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::Route" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Route) DependsOn() []string { +func (r *Route) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Route) SetDependsOn(dependencies []string) { +func (r *Route) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Route) Metadata() map[string]interface{} { +func (r *Route) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Route) SetMetadata(metadata map[string]interface{}) { +func (r *Route) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Route) DeletionPolicy() policies.DeletionPolicy { +func (r *Route) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Route) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2Route) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2Route +func (r Route) MarshalJSON() ([]byte, error) { + type Properties Route return json.Marshal(&struct { Type string Properties Properties @@ -143,8 +144,8 @@ func (r AWSApiGatewayV2Route) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2Route) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2Route +func (r *Route) UnmarshalJSON(b []byte) error { + type Properties Route res := &struct { Type string Properties *Properties @@ -163,7 +164,7 @@ func (r *AWSApiGatewayV2Route) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2Route(*res.Properties) + *r = Route(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigatewayv2/aws-apigatewayv2-route_parameterconstraints.go b/cloudformation/apigatewayv2/aws-apigatewayv2-route_parameterconstraints.go new file mode 100644 index 0000000000..ad1a7e15b3 --- /dev/null +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-route_parameterconstraints.go @@ -0,0 +1,65 @@ +package apigatewayv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_ParameterConstraints AWS CloudFormation Resource (AWS::ApiGatewayV2::Route.ParameterConstraints) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-route-parameterconstraints.html +type Route_ParameterConstraints struct { + + // Required AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-route-parameterconstraints.html#cfn-apigatewayv2-route-parameterconstraints-required + Required bool `json:"Required"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_ParameterConstraints) AWSCloudFormationType() string { + return "AWS::ApiGatewayV2::Route.ParameterConstraints" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_ParameterConstraints) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_ParameterConstraints) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_ParameterConstraints) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_ParameterConstraints) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_ParameterConstraints) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_ParameterConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigatewayv2-routeresponse.go b/cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse.go similarity index 82% rename from cloudformation/resources/aws-apigatewayv2-routeresponse.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse.go index aa18a482c3..dbaf200b92 100644 --- a/cloudformation/resources/aws-apigatewayv2-routeresponse.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse.go @@ -1,15 +1,16 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2RouteResponse AWS CloudFormation Resource (AWS::ApiGatewayV2::RouteResponse) +// RouteResponse AWS CloudFormation Resource (AWS::ApiGatewayV2::RouteResponse) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html -type AWSApiGatewayV2RouteResponse struct { +type RouteResponse struct { // ApiId AWS CloudFormation Property // Required: true @@ -52,50 +53,50 @@ type AWSApiGatewayV2RouteResponse struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2RouteResponse) AWSCloudFormationType() string { +func (r *RouteResponse) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::RouteResponse" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2RouteResponse) DependsOn() []string { +func (r *RouteResponse) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2RouteResponse) SetDependsOn(dependencies []string) { +func (r *RouteResponse) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2RouteResponse) Metadata() map[string]interface{} { +func (r *RouteResponse) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2RouteResponse) SetMetadata(metadata map[string]interface{}) { +func (r *RouteResponse) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2RouteResponse) DeletionPolicy() policies.DeletionPolicy { +func (r *RouteResponse) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2RouteResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RouteResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2RouteResponse) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2RouteResponse +func (r RouteResponse) MarshalJSON() ([]byte, error) { + type Properties RouteResponse return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSApiGatewayV2RouteResponse) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2RouteResponse) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2RouteResponse +func (r *RouteResponse) UnmarshalJSON(b []byte) error { + type Properties RouteResponse res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSApiGatewayV2RouteResponse) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2RouteResponse(*res.Properties) + *r = RouteResponse(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse_parameterconstraints.go b/cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse_parameterconstraints.go new file mode 100644 index 0000000000..71dcf11f27 --- /dev/null +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse_parameterconstraints.go @@ -0,0 +1,65 @@ +package apigatewayv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RouteResponse_ParameterConstraints AWS CloudFormation Resource (AWS::ApiGatewayV2::RouteResponse.ParameterConstraints) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-routeresponse-parameterconstraints.html +type RouteResponse_ParameterConstraints struct { + + // Required AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-routeresponse-parameterconstraints.html#cfn-apigatewayv2-routeresponse-parameterconstraints-required + Required bool `json:"Required"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RouteResponse_ParameterConstraints) AWSCloudFormationType() string { + return "AWS::ApiGatewayV2::RouteResponse.ParameterConstraints" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RouteResponse_ParameterConstraints) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RouteResponse_ParameterConstraints) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RouteResponse_ParameterConstraints) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RouteResponse_ParameterConstraints) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RouteResponse_ParameterConstraints) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RouteResponse_ParameterConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigatewayv2-stage.go b/cloudformation/apigatewayv2/aws-apigatewayv2-stage.go similarity index 83% rename from cloudformation/resources/aws-apigatewayv2-stage.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-stage.go index 6f44bfbf2c..9a2c88ac01 100644 --- a/cloudformation/resources/aws-apigatewayv2-stage.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-stage.go @@ -1,20 +1,21 @@ -package resources +package apigatewayv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApiGatewayV2Stage AWS CloudFormation Resource (AWS::ApiGatewayV2::Stage) +// Stage AWS CloudFormation Resource (AWS::ApiGatewayV2::Stage) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html -type AWSApiGatewayV2Stage struct { +type Stage struct { // AccessLogSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings - AccessLogSettings *AWSApiGatewayV2Stage_AccessLogSettings `json:"AccessLogSettings,omitempty"` + AccessLogSettings *Stage_AccessLogSettings `json:"AccessLogSettings,omitempty"` // ApiId AWS CloudFormation Property // Required: true @@ -29,7 +30,7 @@ type AWSApiGatewayV2Stage struct { // DefaultRouteSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-defaultroutesettings - DefaultRouteSettings *AWSApiGatewayV2Stage_RouteSettings `json:"DefaultRouteSettings,omitempty"` + DefaultRouteSettings *Stage_RouteSettings `json:"DefaultRouteSettings,omitempty"` // DeploymentId AWS CloudFormation Property // Required: true @@ -72,50 +73,50 @@ type AWSApiGatewayV2Stage struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Stage) AWSCloudFormationType() string { +func (r *Stage) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::Stage" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Stage) DependsOn() []string { +func (r *Stage) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Stage) SetDependsOn(dependencies []string) { +func (r *Stage) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Stage) Metadata() map[string]interface{} { +func (r *Stage) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Stage) SetMetadata(metadata map[string]interface{}) { +func (r *Stage) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Stage) DeletionPolicy() policies.DeletionPolicy { +func (r *Stage) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Stage) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stage) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApiGatewayV2Stage) MarshalJSON() ([]byte, error) { - type Properties AWSApiGatewayV2Stage +func (r Stage) MarshalJSON() ([]byte, error) { + type Properties Stage return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSApiGatewayV2Stage) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApiGatewayV2Stage) UnmarshalJSON(b []byte) error { - type Properties AWSApiGatewayV2Stage +func (r *Stage) UnmarshalJSON(b []byte) error { + type Properties Stage res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSApiGatewayV2Stage) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApiGatewayV2Stage(*res.Properties) + *r = Stage(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/apigatewayv2/aws-apigatewayv2-stage_accesslogsettings.go b/cloudformation/apigatewayv2/aws-apigatewayv2-stage_accesslogsettings.go new file mode 100644 index 0000000000..4d31313df9 --- /dev/null +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-stage_accesslogsettings.go @@ -0,0 +1,70 @@ +package apigatewayv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Stage_AccessLogSettings AWS CloudFormation Resource (AWS::ApiGatewayV2::Stage.AccessLogSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html +type Stage_AccessLogSettings struct { + + // DestinationArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html#cfn-apigatewayv2-stage-accesslogsettings-destinationarn + DestinationArn string `json:"DestinationArn,omitempty"` + + // Format AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html#cfn-apigatewayv2-stage-accesslogsettings-format + Format string `json:"Format,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Stage_AccessLogSettings) AWSCloudFormationType() string { + return "AWS::ApiGatewayV2::Stage.AccessLogSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stage_AccessLogSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stage_AccessLogSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stage_AccessLogSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stage_AccessLogSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stage_AccessLogSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stage_AccessLogSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-apigatewayv2-stage_routesettings.go b/cloudformation/apigatewayv2/aws-apigatewayv2-stage_routesettings.go similarity index 80% rename from cloudformation/resources/aws-apigatewayv2-stage_routesettings.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-stage_routesettings.go index cfe7de1502..cad052d0ef 100644 --- a/cloudformation/resources/aws-apigatewayv2-stage_routesettings.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-stage_routesettings.go @@ -1,10 +1,12 @@ -package resources +package apigatewayv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApiGatewayV2Stage_RouteSettings AWS CloudFormation Resource (AWS::ApiGatewayV2::Stage.RouteSettings) +// Stage_RouteSettings AWS CloudFormation Resource (AWS::ApiGatewayV2::Stage.RouteSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html -type AWSApiGatewayV2Stage_RouteSettings struct { +type Stage_RouteSettings struct { // DataTraceEnabled AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSApiGatewayV2Stage_RouteSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Stage_RouteSettings) AWSCloudFormationType() string { +func (r *Stage_RouteSettings) AWSCloudFormationType() string { return "AWS::ApiGatewayV2::Stage.RouteSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Stage_RouteSettings) DependsOn() []string { +func (r *Stage_RouteSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Stage_RouteSettings) SetDependsOn(dependencies []string) { +func (r *Stage_RouteSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Stage_RouteSettings) Metadata() map[string]interface{} { +func (r *Stage_RouteSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Stage_RouteSettings) SetMetadata(metadata map[string]interface{}) { +func (r *Stage_RouteSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Stage_RouteSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *Stage_RouteSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Stage_RouteSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stage_RouteSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-applicationautoscaling-scalabletarget.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget.go similarity index 79% rename from cloudformation/resources/aws-applicationautoscaling-scalabletarget.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget.go index 70771c0261..07ff40f852 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalabletarget.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget.go @@ -1,15 +1,16 @@ -package resources +package applicationautoscaling import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApplicationAutoScalingScalableTarget AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget) +// ScalableTarget AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html -type AWSApplicationAutoScalingScalableTarget struct { +type ScalableTarget struct { // MaxCapacity AWS CloudFormation Property // Required: true @@ -39,7 +40,7 @@ type AWSApplicationAutoScalingScalableTarget struct { // ScheduledActions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-scheduledactions - ScheduledActions []AWSApplicationAutoScalingScalableTarget_ScheduledAction `json:"ScheduledActions,omitempty"` + ScheduledActions []ScalableTarget_ScheduledAction `json:"ScheduledActions,omitempty"` // ServiceNamespace AWS CloudFormation Property // Required: true @@ -49,7 +50,7 @@ type AWSApplicationAutoScalingScalableTarget struct { // SuspendedState AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-suspendedstate - SuspendedState *AWSApplicationAutoScalingScalableTarget_SuspendedState `json:"SuspendedState,omitempty"` + SuspendedState *ScalableTarget_SuspendedState `json:"SuspendedState,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -62,50 +63,50 @@ type AWSApplicationAutoScalingScalableTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalableTarget) AWSCloudFormationType() string { +func (r *ScalableTarget) AWSCloudFormationType() string { return "AWS::ApplicationAutoScaling::ScalableTarget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalableTarget) DependsOn() []string { +func (r *ScalableTarget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalableTarget) SetDependsOn(dependencies []string) { +func (r *ScalableTarget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalableTarget) Metadata() map[string]interface{} { +func (r *ScalableTarget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalableTarget) SetMetadata(metadata map[string]interface{}) { +func (r *ScalableTarget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalableTarget) DeletionPolicy() policies.DeletionPolicy { +func (r *ScalableTarget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalableTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalableTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApplicationAutoScalingScalableTarget) MarshalJSON() ([]byte, error) { - type Properties AWSApplicationAutoScalingScalableTarget +func (r ScalableTarget) MarshalJSON() ([]byte, error) { + type Properties ScalableTarget return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSApplicationAutoScalingScalableTarget) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApplicationAutoScalingScalableTarget) UnmarshalJSON(b []byte) error { - type Properties AWSApplicationAutoScalingScalableTarget +func (r *ScalableTarget) UnmarshalJSON(b []byte) error { + type Properties ScalableTarget res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSApplicationAutoScalingScalableTarget) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApplicationAutoScalingScalableTarget(*res.Properties) + *r = ScalableTarget(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go new file mode 100644 index 0000000000..2d175a7461 --- /dev/null +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go @@ -0,0 +1,70 @@ +package applicationautoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalableTarget_ScalableTargetAction AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.ScalableTargetAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html +type ScalableTarget_ScalableTargetAction struct { + + // MaxCapacity AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html#cfn-applicationautoscaling-scalabletarget-scalabletargetaction-maxcapacity + MaxCapacity int `json:"MaxCapacity,omitempty"` + + // MinCapacity AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html#cfn-applicationautoscaling-scalabletarget-scalabletargetaction-mincapacity + MinCapacity int `json:"MinCapacity,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalableTarget_ScalableTargetAction) AWSCloudFormationType() string { + return "AWS::ApplicationAutoScaling::ScalableTarget.ScalableTargetAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalableTarget_ScalableTargetAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalableTarget_ScalableTargetAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalableTarget_ScalableTargetAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalableTarget_ScalableTargetAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalableTarget_ScalableTargetAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalableTarget_ScalableTargetAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scheduledaction.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scheduledaction.go new file mode 100644 index 0000000000..0302e21025 --- /dev/null +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scheduledaction.go @@ -0,0 +1,85 @@ +package applicationautoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalableTarget_ScheduledAction AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.ScheduledAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html +type ScalableTarget_ScheduledAction struct { + + // EndTime AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-endtime + EndTime string `json:"EndTime,omitempty"` + + // ScalableTargetAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-scalabletargetaction + ScalableTargetAction *ScalableTarget_ScalableTargetAction `json:"ScalableTargetAction,omitempty"` + + // Schedule AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-schedule + Schedule string `json:"Schedule,omitempty"` + + // ScheduledActionName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-scheduledactionname + ScheduledActionName string `json:"ScheduledActionName,omitempty"` + + // StartTime AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-starttime + StartTime string `json:"StartTime,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalableTarget_ScheduledAction) AWSCloudFormationType() string { + return "AWS::ApplicationAutoScaling::ScalableTarget.ScheduledAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalableTarget_ScheduledAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalableTarget_ScheduledAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalableTarget_ScheduledAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalableTarget_ScheduledAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalableTarget_ScheduledAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalableTarget_ScheduledAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_suspendedstate.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_suspendedstate.go new file mode 100644 index 0000000000..4ae48257a7 --- /dev/null +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_suspendedstate.go @@ -0,0 +1,75 @@ +package applicationautoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalableTarget_SuspendedState AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.SuspendedState) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html +type ScalableTarget_SuspendedState struct { + + // DynamicScalingInSuspended AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-dynamicscalinginsuspended + DynamicScalingInSuspended bool `json:"DynamicScalingInSuspended,omitempty"` + + // DynamicScalingOutSuspended AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-dynamicscalingoutsuspended + DynamicScalingOutSuspended bool `json:"DynamicScalingOutSuspended,omitempty"` + + // ScheduledScalingSuspended AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-scheduledscalingsuspended + ScheduledScalingSuspended bool `json:"ScheduledScalingSuspended,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalableTarget_SuspendedState) AWSCloudFormationType() string { + return "AWS::ApplicationAutoScaling::ScalableTarget.SuspendedState" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalableTarget_SuspendedState) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalableTarget_SuspendedState) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalableTarget_SuspendedState) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalableTarget_SuspendedState) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalableTarget_SuspendedState) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalableTarget_SuspendedState) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy.go similarity index 78% rename from cloudformation/resources/aws-applicationautoscaling-scalingpolicy.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy.go index 65f5601868..ab561a6fa3 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy.go @@ -1,15 +1,16 @@ -package resources +package applicationautoscaling import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSApplicationAutoScalingScalingPolicy AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy) +// ScalingPolicy AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html -type AWSApplicationAutoScalingScalingPolicy struct { +type ScalingPolicy struct { // PolicyName AWS CloudFormation Property // Required: true @@ -44,12 +45,12 @@ type AWSApplicationAutoScalingScalingPolicy struct { // StepScalingPolicyConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration - StepScalingPolicyConfiguration *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration `json:"StepScalingPolicyConfiguration,omitempty"` + StepScalingPolicyConfiguration *ScalingPolicy_StepScalingPolicyConfiguration `json:"StepScalingPolicyConfiguration,omitempty"` // TargetTrackingScalingPolicyConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration - TargetTrackingScalingPolicyConfiguration *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration `json:"TargetTrackingScalingPolicyConfiguration,omitempty"` + TargetTrackingScalingPolicyConfiguration *ScalingPolicy_TargetTrackingScalingPolicyConfiguration `json:"TargetTrackingScalingPolicyConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -62,50 +63,50 @@ type AWSApplicationAutoScalingScalingPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy) AWSCloudFormationType() string { +func (r *ScalingPolicy) AWSCloudFormationType() string { return "AWS::ApplicationAutoScaling::ScalingPolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy) DependsOn() []string { +func (r *ScalingPolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy) SetDependsOn(dependencies []string) { +func (r *ScalingPolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy) Metadata() map[string]interface{} { +func (r *ScalingPolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *ScalingPolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *ScalingPolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSApplicationAutoScalingScalingPolicy) MarshalJSON() ([]byte, error) { - type Properties AWSApplicationAutoScalingScalingPolicy +func (r ScalingPolicy) MarshalJSON() ([]byte, error) { + type Properties ScalingPolicy return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSApplicationAutoScalingScalingPolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSApplicationAutoScalingScalingPolicy) UnmarshalJSON(b []byte) error { - type Properties AWSApplicationAutoScalingScalingPolicy +func (r *ScalingPolicy) UnmarshalJSON(b []byte) error { + type Properties ScalingPolicy res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSApplicationAutoScalingScalingPolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSApplicationAutoScalingScalingPolicy(*res.Properties) + *r = ScalingPolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go new file mode 100644 index 0000000000..0951298721 --- /dev/null +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go @@ -0,0 +1,85 @@ +package applicationautoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_CustomizedMetricSpecification AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.CustomizedMetricSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html +type ScalingPolicy_CustomizedMetricSpecification struct { + + // Dimensions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-dimensions + Dimensions []ScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` + + // MetricName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-metricname + MetricName string `json:"MetricName,omitempty"` + + // Namespace AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-namespace + Namespace string `json:"Namespace,omitempty"` + + // Statistic AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-statistic + Statistic string `json:"Statistic,omitempty"` + + // Unit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-unit + Unit string `json:"Unit,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_CustomizedMetricSpecification) AWSCloudFormationType() string { + return "AWS::ApplicationAutoScaling::ScalingPolicy.CustomizedMetricSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_CustomizedMetricSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_CustomizedMetricSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_CustomizedMetricSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_CustomizedMetricSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_CustomizedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_CustomizedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_metricdimension.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_metricdimension.go new file mode 100644 index 0000000000..5550818f2c --- /dev/null +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_metricdimension.go @@ -0,0 +1,70 @@ +package applicationautoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_MetricDimension AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.MetricDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html +type ScalingPolicy_MetricDimension struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_MetricDimension) AWSCloudFormationType() string { + return "AWS::ApplicationAutoScaling::ScalingPolicy.MetricDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_MetricDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_MetricDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_MetricDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_MetricDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_MetricDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go new file mode 100644 index 0000000000..f3e0a5d4c4 --- /dev/null +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go @@ -0,0 +1,70 @@ +package applicationautoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_PredefinedMetricSpecification AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html +type ScalingPolicy_PredefinedMetricSpecification struct { + + // PredefinedMetricType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype + PredefinedMetricType string `json:"PredefinedMetricType,omitempty"` + + // ResourceLabel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel + ResourceLabel string `json:"ResourceLabel,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_PredefinedMetricSpecification) AWSCloudFormationType() string { + return "AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_PredefinedMetricSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_PredefinedMetricSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_PredefinedMetricSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_PredefinedMetricSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_PredefinedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_PredefinedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_stepadjustment.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepadjustment.go similarity index 75% rename from cloudformation/resources/aws-applicationautoscaling-scalingpolicy_stepadjustment.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepadjustment.go index 972f1f6083..02bba50938 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_stepadjustment.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepadjustment.go @@ -1,10 +1,12 @@ -package resources +package applicationautoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApplicationAutoScalingScalingPolicy_StepAdjustment AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.StepAdjustment) +// ScalingPolicy_StepAdjustment AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.StepAdjustment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html -type AWSApplicationAutoScalingScalingPolicy_StepAdjustment struct { +type ScalingPolicy_StepAdjustment struct { // MetricIntervalLowerBound AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSApplicationAutoScalingScalingPolicy_StepAdjustment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_StepAdjustment) AWSCloudFormationType() string { +func (r *ScalingPolicy_StepAdjustment) AWSCloudFormationType() string { return "AWS::ApplicationAutoScaling::ScalingPolicy.StepAdjustment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepAdjustment) DependsOn() []string { +func (r *ScalingPolicy_StepAdjustment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepAdjustment) SetDependsOn(dependencies []string) { +func (r *ScalingPolicy_StepAdjustment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepAdjustment) Metadata() map[string]interface{} { +func (r *ScalingPolicy_StepAdjustment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepAdjustment) SetMetadata(metadata map[string]interface{}) { +func (r *ScalingPolicy_StepAdjustment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepAdjustment) DeletionPolicy() policies.DeletionPolicy { +func (r *ScalingPolicy_StepAdjustment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepAdjustment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy_StepAdjustment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go new file mode 100644 index 0000000000..80ac8aa8d2 --- /dev/null +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go @@ -0,0 +1,85 @@ +package applicationautoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_StepScalingPolicyConfiguration AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.StepScalingPolicyConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html +type ScalingPolicy_StepScalingPolicyConfiguration struct { + + // AdjustmentType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-adjustmenttype + AdjustmentType string `json:"AdjustmentType,omitempty"` + + // Cooldown AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-cooldown + Cooldown int `json:"Cooldown,omitempty"` + + // MetricAggregationType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-metricaggregationtype + MetricAggregationType string `json:"MetricAggregationType,omitempty"` + + // MinAdjustmentMagnitude AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-minadjustmentmagnitude + MinAdjustmentMagnitude int `json:"MinAdjustmentMagnitude,omitempty"` + + // StepAdjustments AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustments + StepAdjustments []ScalingPolicy_StepAdjustment `json:"StepAdjustments,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_StepScalingPolicyConfiguration) AWSCloudFormationType() string { + return "AWS::ApplicationAutoScaling::ScalingPolicy.StepScalingPolicyConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_StepScalingPolicyConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_StepScalingPolicyConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_StepScalingPolicyConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_StepScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_StepScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_StepScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go new file mode 100644 index 0000000000..e8dd2af06a --- /dev/null +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go @@ -0,0 +1,90 @@ +package applicationautoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_TargetTrackingScalingPolicyConfiguration AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingScalingPolicyConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html +type ScalingPolicy_TargetTrackingScalingPolicyConfiguration struct { + + // CustomizedMetricSpecification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-customizedmetricspecification + CustomizedMetricSpecification *ScalingPolicy_CustomizedMetricSpecification `json:"CustomizedMetricSpecification,omitempty"` + + // DisableScaleIn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-disablescalein + DisableScaleIn bool `json:"DisableScaleIn,omitempty"` + + // PredefinedMetricSpecification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-predefinedmetricspecification + PredefinedMetricSpecification *ScalingPolicy_PredefinedMetricSpecification `json:"PredefinedMetricSpecification,omitempty"` + + // ScaleInCooldown AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-scaleincooldown + ScaleInCooldown int `json:"ScaleInCooldown,omitempty"` + + // ScaleOutCooldown AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-scaleoutcooldown + ScaleOutCooldown int `json:"ScaleOutCooldown,omitempty"` + + // TargetValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-targetvalue + TargetValue float64 `json:"TargetValue"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_TargetTrackingScalingPolicyConfiguration) AWSCloudFormationType() string { + return "AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingScalingPolicyConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_TargetTrackingScalingPolicyConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_TargetTrackingScalingPolicyConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_TargetTrackingScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appmesh-mesh.go b/cloudformation/appmesh/aws-appmesh-mesh.go similarity index 80% rename from cloudformation/resources/aws-appmesh-mesh.go rename to cloudformation/appmesh/aws-appmesh-mesh.go index c5a67ba009..7f2ebeb1ba 100644 --- a/cloudformation/resources/aws-appmesh-mesh.go +++ b/cloudformation/appmesh/aws-appmesh-mesh.go @@ -1,15 +1,17 @@ -package resources +package appmesh import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAppMeshMesh AWS CloudFormation Resource (AWS::AppMesh::Mesh) +// Mesh AWS CloudFormation Resource (AWS::AppMesh::Mesh) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html -type AWSAppMeshMesh struct { +type Mesh struct { // MeshName AWS CloudFormation Property // Required: true @@ -19,12 +21,12 @@ type AWSAppMeshMesh struct { // Spec AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html#cfn-appmesh-mesh-spec - Spec *AWSAppMeshMesh_MeshSpec `json:"Spec,omitempty"` + Spec *Mesh_MeshSpec `json:"Spec,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html#cfn-appmesh-mesh-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +39,50 @@ type AWSAppMeshMesh struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshMesh) AWSCloudFormationType() string { +func (r *Mesh) AWSCloudFormationType() string { return "AWS::AppMesh::Mesh" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshMesh) DependsOn() []string { +func (r *Mesh) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshMesh) SetDependsOn(dependencies []string) { +func (r *Mesh) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshMesh) Metadata() map[string]interface{} { +func (r *Mesh) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshMesh) SetMetadata(metadata map[string]interface{}) { +func (r *Mesh) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshMesh) DeletionPolicy() policies.DeletionPolicy { +func (r *Mesh) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshMesh) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Mesh) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppMeshMesh) MarshalJSON() ([]byte, error) { - type Properties AWSAppMeshMesh +func (r Mesh) MarshalJSON() ([]byte, error) { + type Properties Mesh return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +100,8 @@ func (r AWSAppMeshMesh) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppMeshMesh) UnmarshalJSON(b []byte) error { - type Properties AWSAppMeshMesh +func (r *Mesh) UnmarshalJSON(b []byte) error { + type Properties Mesh res := &struct { Type string Properties *Properties @@ -118,7 +120,7 @@ func (r *AWSAppMeshMesh) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppMeshMesh(*res.Properties) + *r = Mesh(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appmesh/aws-appmesh-mesh_egressfilter.go b/cloudformation/appmesh/aws-appmesh-mesh_egressfilter.go new file mode 100644 index 0000000000..c27693a32f --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-mesh_egressfilter.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Mesh_EgressFilter AWS CloudFormation Resource (AWS::AppMesh::Mesh.EgressFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-egressfilter.html +type Mesh_EgressFilter struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-egressfilter.html#cfn-appmesh-mesh-egressfilter-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Mesh_EgressFilter) AWSCloudFormationType() string { + return "AWS::AppMesh::Mesh.EgressFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Mesh_EgressFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Mesh_EgressFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Mesh_EgressFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Mesh_EgressFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Mesh_EgressFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Mesh_EgressFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-mesh_meshspec.go b/cloudformation/appmesh/aws-appmesh-mesh_meshspec.go new file mode 100644 index 0000000000..3f8272b7ea --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-mesh_meshspec.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Mesh_MeshSpec AWS CloudFormation Resource (AWS::AppMesh::Mesh.MeshSpec) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-meshspec.html +type Mesh_MeshSpec struct { + + // EgressFilter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-meshspec.html#cfn-appmesh-mesh-meshspec-egressfilter + EgressFilter *Mesh_EgressFilter `json:"EgressFilter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Mesh_MeshSpec) AWSCloudFormationType() string { + return "AWS::AppMesh::Mesh.MeshSpec" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Mesh_MeshSpec) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Mesh_MeshSpec) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Mesh_MeshSpec) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Mesh_MeshSpec) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Mesh_MeshSpec) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Mesh_MeshSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appmesh-route.go b/cloudformation/appmesh/aws-appmesh-route.go similarity index 82% rename from cloudformation/resources/aws-appmesh-route.go rename to cloudformation/appmesh/aws-appmesh-route.go index ddc4d16505..dffb9090eb 100644 --- a/cloudformation/resources/aws-appmesh-route.go +++ b/cloudformation/appmesh/aws-appmesh-route.go @@ -1,15 +1,17 @@ -package resources +package appmesh import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAppMeshRoute AWS CloudFormation Resource (AWS::AppMesh::Route) +// Route AWS CloudFormation Resource (AWS::AppMesh::Route) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html -type AWSAppMeshRoute struct { +type Route struct { // MeshName AWS CloudFormation Property // Required: true @@ -24,12 +26,12 @@ type AWSAppMeshRoute struct { // Spec AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-spec - Spec *AWSAppMeshRoute_RouteSpec `json:"Spec,omitempty"` + Spec *Route_RouteSpec `json:"Spec,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VirtualRouterName AWS CloudFormation Property // Required: true @@ -47,50 +49,50 @@ type AWSAppMeshRoute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute) AWSCloudFormationType() string { +func (r *Route) AWSCloudFormationType() string { return "AWS::AppMesh::Route" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute) DependsOn() []string { +func (r *Route) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute) SetDependsOn(dependencies []string) { +func (r *Route) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute) Metadata() map[string]interface{} { +func (r *Route) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute) SetMetadata(metadata map[string]interface{}) { +func (r *Route) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute) DeletionPolicy() policies.DeletionPolicy { +func (r *Route) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppMeshRoute) MarshalJSON() ([]byte, error) { - type Properties AWSAppMeshRoute +func (r Route) MarshalJSON() ([]byte, error) { + type Properties Route return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSAppMeshRoute) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppMeshRoute) UnmarshalJSON(b []byte) error { - type Properties AWSAppMeshRoute +func (r *Route) UnmarshalJSON(b []byte) error { + type Properties Route res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSAppMeshRoute) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppMeshRoute(*res.Properties) + *r = Route(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-appmesh-route_duration.go b/cloudformation/appmesh/aws-appmesh-route_duration.go similarity index 75% rename from cloudformation/resources/aws-appmesh-route_duration.go rename to cloudformation/appmesh/aws-appmesh-route_duration.go index d378d6253c..99bca85727 100644 --- a/cloudformation/resources/aws-appmesh-route_duration.go +++ b/cloudformation/appmesh/aws-appmesh-route_duration.go @@ -1,10 +1,12 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshRoute_Duration AWS CloudFormation Resource (AWS::AppMesh::Route.Duration) +// Route_Duration AWS CloudFormation Resource (AWS::AppMesh::Route.Duration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html -type AWSAppMeshRoute_Duration struct { +type Route_Duration struct { // Unit AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppMeshRoute_Duration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_Duration) AWSCloudFormationType() string { +func (r *Route_Duration) AWSCloudFormationType() string { return "AWS::AppMesh::Route.Duration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_Duration) DependsOn() []string { +func (r *Route_Duration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_Duration) SetDependsOn(dependencies []string) { +func (r *Route_Duration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_Duration) Metadata() map[string]interface{} { +func (r *Route_Duration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_Duration) SetMetadata(metadata map[string]interface{}) { +func (r *Route_Duration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_Duration) DeletionPolicy() policies.DeletionPolicy { +func (r *Route_Duration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_Duration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_Duration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-route_headermatchmethod.go b/cloudformation/appmesh/aws-appmesh-route_headermatchmethod.go similarity index 77% rename from cloudformation/resources/aws-appmesh-route_headermatchmethod.go rename to cloudformation/appmesh/aws-appmesh-route_headermatchmethod.go index c92d57187b..39e3d55e3e 100644 --- a/cloudformation/resources/aws-appmesh-route_headermatchmethod.go +++ b/cloudformation/appmesh/aws-appmesh-route_headermatchmethod.go @@ -1,10 +1,12 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshRoute_HeaderMatchMethod AWS CloudFormation Resource (AWS::AppMesh::Route.HeaderMatchMethod) +// Route_HeaderMatchMethod AWS CloudFormation Resource (AWS::AppMesh::Route.HeaderMatchMethod) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html -type AWSAppMeshRoute_HeaderMatchMethod struct { +type Route_HeaderMatchMethod struct { // Exact AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSAppMeshRoute_HeaderMatchMethod struct { // Range AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-range - Range *AWSAppMeshRoute_MatchRange `json:"Range,omitempty"` + Range *Route_MatchRange `json:"Range,omitempty"` // Regex AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSAppMeshRoute_HeaderMatchMethod struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HeaderMatchMethod) AWSCloudFormationType() string { +func (r *Route_HeaderMatchMethod) AWSCloudFormationType() string { return "AWS::AppMesh::Route.HeaderMatchMethod" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HeaderMatchMethod) DependsOn() []string { +func (r *Route_HeaderMatchMethod) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HeaderMatchMethod) SetDependsOn(dependencies []string) { +func (r *Route_HeaderMatchMethod) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HeaderMatchMethod) Metadata() map[string]interface{} { +func (r *Route_HeaderMatchMethod) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HeaderMatchMethod) SetMetadata(metadata map[string]interface{}) { +func (r *Route_HeaderMatchMethod) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HeaderMatchMethod) DeletionPolicy() policies.DeletionPolicy { +func (r *Route_HeaderMatchMethod) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HeaderMatchMethod) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_HeaderMatchMethod) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-route_httpretrypolicy.go b/cloudformation/appmesh/aws-appmesh-route_httpretrypolicy.go similarity index 76% rename from cloudformation/resources/aws-appmesh-route_httpretrypolicy.go rename to cloudformation/appmesh/aws-appmesh-route_httpretrypolicy.go index feebfb2401..6f918fb2e7 100644 --- a/cloudformation/resources/aws-appmesh-route_httpretrypolicy.go +++ b/cloudformation/appmesh/aws-appmesh-route_httpretrypolicy.go @@ -1,10 +1,12 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshRoute_HttpRetryPolicy AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRetryPolicy) +// Route_HttpRetryPolicy AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRetryPolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html -type AWSAppMeshRoute_HttpRetryPolicy struct { +type Route_HttpRetryPolicy struct { // HttpRetryEvents AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSAppMeshRoute_HttpRetryPolicy struct { // PerRetryTimeout AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-perretrytimeout - PerRetryTimeout *AWSAppMeshRoute_Duration `json:"PerRetryTimeout,omitempty"` + PerRetryTimeout *Route_Duration `json:"PerRetryTimeout,omitempty"` // TcpRetryEvents AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSAppMeshRoute_HttpRetryPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HttpRetryPolicy) AWSCloudFormationType() string { +func (r *Route_HttpRetryPolicy) AWSCloudFormationType() string { return "AWS::AppMesh::Route.HttpRetryPolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRetryPolicy) DependsOn() []string { +func (r *Route_HttpRetryPolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRetryPolicy) SetDependsOn(dependencies []string) { +func (r *Route_HttpRetryPolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRetryPolicy) Metadata() map[string]interface{} { +func (r *Route_HttpRetryPolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRetryPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *Route_HttpRetryPolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRetryPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *Route_HttpRetryPolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRetryPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_HttpRetryPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/appmesh/aws-appmesh-route_httproute.go b/cloudformation/appmesh/aws-appmesh-route_httproute.go new file mode 100644 index 0000000000..2f408ffe29 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-route_httproute.go @@ -0,0 +1,75 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_HttpRoute AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRoute) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html +type Route_HttpRoute struct { + + // Action AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-action + Action *Route_HttpRouteAction `json:"Action,omitempty"` + + // Match AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-match + Match *Route_HttpRouteMatch `json:"Match,omitempty"` + + // RetryPolicy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-retrypolicy + RetryPolicy *Route_HttpRetryPolicy `json:"RetryPolicy,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_HttpRoute) AWSCloudFormationType() string { + return "AWS::AppMesh::Route.HttpRoute" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_HttpRoute) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_HttpRoute) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_HttpRoute) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_HttpRoute) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_HttpRoute) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_HttpRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-route_httprouteaction.go b/cloudformation/appmesh/aws-appmesh-route_httprouteaction.go new file mode 100644 index 0000000000..b29c89b42c --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-route_httprouteaction.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_HttpRouteAction AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRouteAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html +type Route_HttpRouteAction struct { + + // WeightedTargets AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html#cfn-appmesh-route-httprouteaction-weightedtargets + WeightedTargets []Route_WeightedTarget `json:"WeightedTargets,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_HttpRouteAction) AWSCloudFormationType() string { + return "AWS::AppMesh::Route.HttpRouteAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_HttpRouteAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_HttpRouteAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_HttpRouteAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_HttpRouteAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_HttpRouteAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_HttpRouteAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-route_httprouteheader.go b/cloudformation/appmesh/aws-appmesh-route_httprouteheader.go new file mode 100644 index 0000000000..f6bd9f9bea --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-route_httprouteheader.go @@ -0,0 +1,75 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_HttpRouteHeader AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRouteHeader) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html +type Route_HttpRouteHeader struct { + + // Invert AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-invert + Invert bool `json:"Invert,omitempty"` + + // Match AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-match + Match *Route_HeaderMatchMethod `json:"Match,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_HttpRouteHeader) AWSCloudFormationType() string { + return "AWS::AppMesh::Route.HttpRouteHeader" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_HttpRouteHeader) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_HttpRouteHeader) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_HttpRouteHeader) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_HttpRouteHeader) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_HttpRouteHeader) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_HttpRouteHeader) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appmesh-route_httproutematch.go b/cloudformation/appmesh/aws-appmesh-route_httproutematch.go similarity index 76% rename from cloudformation/resources/aws-appmesh-route_httproutematch.go rename to cloudformation/appmesh/aws-appmesh-route_httproutematch.go index 63fbd9c097..092dd0f0f2 100644 --- a/cloudformation/resources/aws-appmesh-route_httproutematch.go +++ b/cloudformation/appmesh/aws-appmesh-route_httproutematch.go @@ -1,15 +1,17 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshRoute_HttpRouteMatch AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRouteMatch) +// Route_HttpRouteMatch AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRouteMatch) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html -type AWSAppMeshRoute_HttpRouteMatch struct { +type Route_HttpRouteMatch struct { // Headers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-headers - Headers []AWSAppMeshRoute_HttpRouteHeader `json:"Headers,omitempty"` + Headers []Route_HttpRouteHeader `json:"Headers,omitempty"` // Method AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSAppMeshRoute_HttpRouteMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HttpRouteMatch) AWSCloudFormationType() string { +func (r *Route_HttpRouteMatch) AWSCloudFormationType() string { return "AWS::AppMesh::Route.HttpRouteMatch" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRouteMatch) DependsOn() []string { +func (r *Route_HttpRouteMatch) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRouteMatch) SetDependsOn(dependencies []string) { +func (r *Route_HttpRouteMatch) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRouteMatch) Metadata() map[string]interface{} { +func (r *Route_HttpRouteMatch) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRouteMatch) SetMetadata(metadata map[string]interface{}) { +func (r *Route_HttpRouteMatch) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRouteMatch) DeletionPolicy() policies.DeletionPolicy { +func (r *Route_HttpRouteMatch) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRouteMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_HttpRouteMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/appmesh/aws-appmesh-route_matchrange.go b/cloudformation/appmesh/aws-appmesh-route_matchrange.go new file mode 100644 index 0000000000..351e13b612 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-route_matchrange.go @@ -0,0 +1,70 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_MatchRange AWS CloudFormation Resource (AWS::AppMesh::Route.MatchRange) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html +type Route_MatchRange struct { + + // End AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-end + End int `json:"End"` + + // Start AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-start + Start int `json:"Start"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_MatchRange) AWSCloudFormationType() string { + return "AWS::AppMesh::Route.MatchRange" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_MatchRange) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_MatchRange) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_MatchRange) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_MatchRange) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_MatchRange) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_MatchRange) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-route_routespec.go b/cloudformation/appmesh/aws-appmesh-route_routespec.go new file mode 100644 index 0000000000..8b503c02af --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-route_routespec.go @@ -0,0 +1,75 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_RouteSpec AWS CloudFormation Resource (AWS::AppMesh::Route.RouteSpec) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html +type Route_RouteSpec struct { + + // HttpRoute AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-httproute + HttpRoute *Route_HttpRoute `json:"HttpRoute,omitempty"` + + // Priority AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-priority + Priority int `json:"Priority,omitempty"` + + // TcpRoute AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-tcproute + TcpRoute *Route_TcpRoute `json:"TcpRoute,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_RouteSpec) AWSCloudFormationType() string { + return "AWS::AppMesh::Route.RouteSpec" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_RouteSpec) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_RouteSpec) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_RouteSpec) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_RouteSpec) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_RouteSpec) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_RouteSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-route_tcproute.go b/cloudformation/appmesh/aws-appmesh-route_tcproute.go new file mode 100644 index 0000000000..e392ce8177 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-route_tcproute.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_TcpRoute AWS CloudFormation Resource (AWS::AppMesh::Route.TcpRoute) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html +type Route_TcpRoute struct { + + // Action AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-action + Action *Route_TcpRouteAction `json:"Action,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_TcpRoute) AWSCloudFormationType() string { + return "AWS::AppMesh::Route.TcpRoute" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_TcpRoute) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_TcpRoute) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_TcpRoute) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_TcpRoute) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_TcpRoute) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_TcpRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-route_tcprouteaction.go b/cloudformation/appmesh/aws-appmesh-route_tcprouteaction.go new file mode 100644 index 0000000000..fcd17b1825 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-route_tcprouteaction.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_TcpRouteAction AWS CloudFormation Resource (AWS::AppMesh::Route.TcpRouteAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html +type Route_TcpRouteAction struct { + + // WeightedTargets AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html#cfn-appmesh-route-tcprouteaction-weightedtargets + WeightedTargets []Route_WeightedTarget `json:"WeightedTargets,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_TcpRouteAction) AWSCloudFormationType() string { + return "AWS::AppMesh::Route.TcpRouteAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_TcpRouteAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_TcpRouteAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_TcpRouteAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_TcpRouteAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_TcpRouteAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_TcpRouteAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-route_weightedtarget.go b/cloudformation/appmesh/aws-appmesh-route_weightedtarget.go new file mode 100644 index 0000000000..5ceb0bb4ba --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-route_weightedtarget.go @@ -0,0 +1,70 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Route_WeightedTarget AWS CloudFormation Resource (AWS::AppMesh::Route.WeightedTarget) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html +type Route_WeightedTarget struct { + + // VirtualNode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-virtualnode + VirtualNode string `json:"VirtualNode,omitempty"` + + // Weight AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-weight + Weight int `json:"Weight"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Route_WeightedTarget) AWSCloudFormationType() string { + return "AWS::AppMesh::Route.WeightedTarget" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_WeightedTarget) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Route_WeightedTarget) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_WeightedTarget) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Route_WeightedTarget) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_WeightedTarget) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Route_WeightedTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appmesh-virtualnode.go b/cloudformation/appmesh/aws-appmesh-virtualnode.go similarity index 80% rename from cloudformation/resources/aws-appmesh-virtualnode.go rename to cloudformation/appmesh/aws-appmesh-virtualnode.go index b03c62d71c..1cee74c762 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode.go @@ -1,15 +1,17 @@ -package resources +package appmesh import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAppMeshVirtualNode AWS CloudFormation Resource (AWS::AppMesh::VirtualNode) +// VirtualNode AWS CloudFormation Resource (AWS::AppMesh::VirtualNode) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html -type AWSAppMeshVirtualNode struct { +type VirtualNode struct { // MeshName AWS CloudFormation Property // Required: true @@ -19,12 +21,12 @@ type AWSAppMeshVirtualNode struct { // Spec AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-spec - Spec *AWSAppMeshVirtualNode_VirtualNodeSpec `json:"Spec,omitempty"` + Spec *VirtualNode_VirtualNodeSpec `json:"Spec,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VirtualNodeName AWS CloudFormation Property // Required: true @@ -42,50 +44,50 @@ type AWSAppMeshVirtualNode struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode) AWSCloudFormationType() string { +func (r *VirtualNode) AWSCloudFormationType() string { return "AWS::AppMesh::VirtualNode" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode) DependsOn() []string { +func (r *VirtualNode) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode) SetDependsOn(dependencies []string) { +func (r *VirtualNode) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode) Metadata() map[string]interface{} { +func (r *VirtualNode) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode) SetMetadata(metadata map[string]interface{}) { +func (r *VirtualNode) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode) DeletionPolicy() policies.DeletionPolicy { +func (r *VirtualNode) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppMeshVirtualNode) MarshalJSON() ([]byte, error) { - type Properties AWSAppMeshVirtualNode +func (r VirtualNode) MarshalJSON() ([]byte, error) { + type Properties VirtualNode return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSAppMeshVirtualNode) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppMeshVirtualNode) UnmarshalJSON(b []byte) error { - type Properties AWSAppMeshVirtualNode +func (r *VirtualNode) UnmarshalJSON(b []byte) error { + type Properties VirtualNode res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSAppMeshVirtualNode) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppMeshVirtualNode(*res.Properties) + *r = VirtualNode(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_accesslog.go b/cloudformation/appmesh/aws-appmesh-virtualnode_accesslog.go new file mode 100644 index 0000000000..53584405e0 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_accesslog.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_AccessLog AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AccessLog) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html +type VirtualNode_AccessLog struct { + + // File AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html#cfn-appmesh-virtualnode-accesslog-file + File *VirtualNode_FileAccessLog `json:"File,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_AccessLog) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.AccessLog" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_AccessLog) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_AccessLog) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_AccessLog) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_AccessLog) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_AccessLog) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_AccessLog) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go b/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go new file mode 100644 index 0000000000..692ed3c81b --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go @@ -0,0 +1,70 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_AwsCloudMapInstanceAttribute AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AwsCloudMapInstanceAttribute) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html +type VirtualNode_AwsCloudMapInstanceAttribute struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_AwsCloudMapInstanceAttribute) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.AwsCloudMapInstanceAttribute" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_AwsCloudMapInstanceAttribute) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_AwsCloudMapInstanceAttribute) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_AwsCloudMapInstanceAttribute) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_AwsCloudMapInstanceAttribute) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_AwsCloudMapInstanceAttribute) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_AwsCloudMapInstanceAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapservicediscovery.go b/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapservicediscovery.go new file mode 100644 index 0000000000..0630494dcf --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapservicediscovery.go @@ -0,0 +1,75 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_AwsCloudMapServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AwsCloudMapServiceDiscovery) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html +type VirtualNode_AwsCloudMapServiceDiscovery struct { + + // Attributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-attributes + Attributes []VirtualNode_AwsCloudMapInstanceAttribute `json:"Attributes,omitempty"` + + // NamespaceName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-namespacename + NamespaceName string `json:"NamespaceName,omitempty"` + + // ServiceName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-servicename + ServiceName string `json:"ServiceName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_AwsCloudMapServiceDiscovery) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.AwsCloudMapServiceDiscovery" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_AwsCloudMapServiceDiscovery) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_AwsCloudMapServiceDiscovery) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_AwsCloudMapServiceDiscovery) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_AwsCloudMapServiceDiscovery) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_AwsCloudMapServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_AwsCloudMapServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_backend.go b/cloudformation/appmesh/aws-appmesh-virtualnode_backend.go new file mode 100644 index 0000000000..99966d2331 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_backend.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_Backend AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Backend) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html +type VirtualNode_Backend struct { + + // VirtualService AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html#cfn-appmesh-virtualnode-backend-virtualservice + VirtualService *VirtualNode_VirtualServiceBackend `json:"VirtualService,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_Backend) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.Backend" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_Backend) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_Backend) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_Backend) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_Backend) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_Backend) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_Backend) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_dnsservicediscovery.go b/cloudformation/appmesh/aws-appmesh-virtualnode_dnsservicediscovery.go new file mode 100644 index 0000000000..052ae77977 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_dnsservicediscovery.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_DnsServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.DnsServiceDiscovery) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html +type VirtualNode_DnsServiceDiscovery struct { + + // Hostname AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html#cfn-appmesh-virtualnode-dnsservicediscovery-hostname + Hostname string `json:"Hostname,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_DnsServiceDiscovery) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.DnsServiceDiscovery" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_DnsServiceDiscovery) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_DnsServiceDiscovery) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_DnsServiceDiscovery) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_DnsServiceDiscovery) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_DnsServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_DnsServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_fileaccesslog.go b/cloudformation/appmesh/aws-appmesh-virtualnode_fileaccesslog.go new file mode 100644 index 0000000000..fbef524655 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_fileaccesslog.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_FileAccessLog AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.FileAccessLog) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html +type VirtualNode_FileAccessLog struct { + + // Path AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html#cfn-appmesh-virtualnode-fileaccesslog-path + Path string `json:"Path,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_FileAccessLog) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.FileAccessLog" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_FileAccessLog) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_FileAccessLog) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_FileAccessLog) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_FileAccessLog) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_FileAccessLog) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_FileAccessLog) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_healthcheck.go b/cloudformation/appmesh/aws-appmesh-virtualnode_healthcheck.go similarity index 82% rename from cloudformation/resources/aws-appmesh-virtualnode_healthcheck.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_healthcheck.go index df428b60e7..c185c02b2f 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_healthcheck.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_healthcheck.go @@ -1,10 +1,12 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshVirtualNode_HealthCheck AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.HealthCheck) +// VirtualNode_HealthCheck AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.HealthCheck) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html -type AWSAppMeshVirtualNode_HealthCheck struct { +type VirtualNode_HealthCheck struct { // HealthyThreshold AWS CloudFormation Property // Required: true @@ -52,42 +54,42 @@ type AWSAppMeshVirtualNode_HealthCheck struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_HealthCheck) AWSCloudFormationType() string { +func (r *VirtualNode_HealthCheck) AWSCloudFormationType() string { return "AWS::AppMesh::VirtualNode.HealthCheck" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_HealthCheck) DependsOn() []string { +func (r *VirtualNode_HealthCheck) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_HealthCheck) SetDependsOn(dependencies []string) { +func (r *VirtualNode_HealthCheck) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_HealthCheck) Metadata() map[string]interface{} { +func (r *VirtualNode_HealthCheck) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_HealthCheck) SetMetadata(metadata map[string]interface{}) { +func (r *VirtualNode_HealthCheck) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_HealthCheck) DeletionPolicy() policies.DeletionPolicy { +func (r *VirtualNode_HealthCheck) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_HealthCheck) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_HealthCheck) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_listener.go b/cloudformation/appmesh/aws-appmesh-virtualnode_listener.go new file mode 100644 index 0000000000..adf5365ffe --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_listener.go @@ -0,0 +1,70 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_Listener AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Listener) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html +type VirtualNode_Listener struct { + + // HealthCheck AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-healthcheck + HealthCheck *VirtualNode_HealthCheck `json:"HealthCheck,omitempty"` + + // PortMapping AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-portmapping + PortMapping *VirtualNode_PortMapping `json:"PortMapping,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_Listener) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.Listener" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_Listener) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_Listener) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_Listener) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_Listener) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_Listener) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_Listener) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_logging.go b/cloudformation/appmesh/aws-appmesh-virtualnode_logging.go new file mode 100644 index 0000000000..510d6b2e43 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_logging.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_Logging AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Logging) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html +type VirtualNode_Logging struct { + + // AccessLog AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html#cfn-appmesh-virtualnode-logging-accesslog + AccessLog *VirtualNode_AccessLog `json:"AccessLog,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_Logging) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.Logging" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_Logging) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_Logging) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_Logging) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_Logging) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_Logging) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_portmapping.go b/cloudformation/appmesh/aws-appmesh-virtualnode_portmapping.go new file mode 100644 index 0000000000..4d01ea71e2 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_portmapping.go @@ -0,0 +1,70 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_PortMapping AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.PortMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html +type VirtualNode_PortMapping struct { + + // Port AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-port + Port int `json:"Port"` + + // Protocol AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-protocol + Protocol string `json:"Protocol,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_PortMapping) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.PortMapping" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_PortMapping) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_PortMapping) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_PortMapping) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_PortMapping) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_PortMapping) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_servicediscovery.go b/cloudformation/appmesh/aws-appmesh-virtualnode_servicediscovery.go new file mode 100644 index 0000000000..a4414a97ec --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_servicediscovery.go @@ -0,0 +1,70 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_ServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.ServiceDiscovery) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html +type VirtualNode_ServiceDiscovery struct { + + // AWSCloudMap AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-awscloudmap + AWSCloudMap *VirtualNode_AwsCloudMapServiceDiscovery `json:"AWSCloudMap,omitempty"` + + // DNS AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-dns + DNS *VirtualNode_DnsServiceDiscovery `json:"DNS,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_ServiceDiscovery) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.ServiceDiscovery" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_ServiceDiscovery) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_ServiceDiscovery) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_ServiceDiscovery) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_ServiceDiscovery) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_ServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_ServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_virtualnodespec.go b/cloudformation/appmesh/aws-appmesh-virtualnode_virtualnodespec.go new file mode 100644 index 0000000000..af02ba3dfc --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_virtualnodespec.go @@ -0,0 +1,80 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_VirtualNodeSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.VirtualNodeSpec) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html +type VirtualNode_VirtualNodeSpec struct { + + // Backends AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-backends + Backends []VirtualNode_Backend `json:"Backends,omitempty"` + + // Listeners AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-listeners + Listeners []VirtualNode_Listener `json:"Listeners,omitempty"` + + // Logging AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-logging + Logging *VirtualNode_Logging `json:"Logging,omitempty"` + + // ServiceDiscovery AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-servicediscovery + ServiceDiscovery *VirtualNode_ServiceDiscovery `json:"ServiceDiscovery,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_VirtualNodeSpec) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.VirtualNodeSpec" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_VirtualNodeSpec) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_VirtualNodeSpec) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_VirtualNodeSpec) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_VirtualNodeSpec) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_VirtualNodeSpec) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_VirtualNodeSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualnode_virtualservicebackend.go b/cloudformation/appmesh/aws-appmesh-virtualnode_virtualservicebackend.go new file mode 100644 index 0000000000..0d9e8d3c48 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_virtualservicebackend.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualNode_VirtualServiceBackend AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.VirtualServiceBackend) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html +type VirtualNode_VirtualServiceBackend struct { + + // VirtualServiceName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html#cfn-appmesh-virtualnode-virtualservicebackend-virtualservicename + VirtualServiceName string `json:"VirtualServiceName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualNode_VirtualServiceBackend) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualNode.VirtualServiceBackend" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_VirtualServiceBackend) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualNode_VirtualServiceBackend) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_VirtualServiceBackend) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualNode_VirtualServiceBackend) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_VirtualServiceBackend) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualNode_VirtualServiceBackend) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appmesh-virtualrouter.go b/cloudformation/appmesh/aws-appmesh-virtualrouter.go similarity index 79% rename from cloudformation/resources/aws-appmesh-virtualrouter.go rename to cloudformation/appmesh/aws-appmesh-virtualrouter.go index bff70f674a..6dcb7fe9e5 100644 --- a/cloudformation/resources/aws-appmesh-virtualrouter.go +++ b/cloudformation/appmesh/aws-appmesh-virtualrouter.go @@ -1,15 +1,17 @@ -package resources +package appmesh import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAppMeshVirtualRouter AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter) +// VirtualRouter AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html -type AWSAppMeshVirtualRouter struct { +type VirtualRouter struct { // MeshName AWS CloudFormation Property // Required: true @@ -19,12 +21,12 @@ type AWSAppMeshVirtualRouter struct { // Spec AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-spec - Spec *AWSAppMeshVirtualRouter_VirtualRouterSpec `json:"Spec,omitempty"` + Spec *VirtualRouter_VirtualRouterSpec `json:"Spec,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VirtualRouterName AWS CloudFormation Property // Required: true @@ -42,50 +44,50 @@ type AWSAppMeshVirtualRouter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualRouter) AWSCloudFormationType() string { +func (r *VirtualRouter) AWSCloudFormationType() string { return "AWS::AppMesh::VirtualRouter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualRouter) DependsOn() []string { +func (r *VirtualRouter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualRouter) SetDependsOn(dependencies []string) { +func (r *VirtualRouter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualRouter) Metadata() map[string]interface{} { +func (r *VirtualRouter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualRouter) SetMetadata(metadata map[string]interface{}) { +func (r *VirtualRouter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualRouter) DeletionPolicy() policies.DeletionPolicy { +func (r *VirtualRouter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualRouter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualRouter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppMeshVirtualRouter) MarshalJSON() ([]byte, error) { - type Properties AWSAppMeshVirtualRouter +func (r VirtualRouter) MarshalJSON() ([]byte, error) { + type Properties VirtualRouter return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSAppMeshVirtualRouter) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppMeshVirtualRouter) UnmarshalJSON(b []byte) error { - type Properties AWSAppMeshVirtualRouter +func (r *VirtualRouter) UnmarshalJSON(b []byte) error { + type Properties VirtualRouter res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSAppMeshVirtualRouter) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppMeshVirtualRouter(*res.Properties) + *r = VirtualRouter(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appmesh/aws-appmesh-virtualrouter_portmapping.go b/cloudformation/appmesh/aws-appmesh-virtualrouter_portmapping.go new file mode 100644 index 0000000000..77ec0b04a9 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualrouter_portmapping.go @@ -0,0 +1,70 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualRouter_PortMapping AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.PortMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html +type VirtualRouter_PortMapping struct { + + // Port AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html#cfn-appmesh-virtualrouter-portmapping-port + Port int `json:"Port"` + + // Protocol AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html#cfn-appmesh-virtualrouter-portmapping-protocol + Protocol string `json:"Protocol,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualRouter_PortMapping) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualRouter.PortMapping" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualRouter_PortMapping) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualRouter_PortMapping) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualRouter_PortMapping) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualRouter_PortMapping) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualRouter_PortMapping) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualRouter_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterlistener.go b/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterlistener.go new file mode 100644 index 0000000000..fd9366dc65 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterlistener.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualRouter_VirtualRouterListener AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.VirtualRouterListener) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterlistener.html +type VirtualRouter_VirtualRouterListener struct { + + // PortMapping AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterlistener.html#cfn-appmesh-virtualrouter-virtualrouterlistener-portmapping + PortMapping *VirtualRouter_PortMapping `json:"PortMapping,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualRouter_VirtualRouterListener) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualRouter.VirtualRouterListener" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualRouter_VirtualRouterListener) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualRouter_VirtualRouterListener) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualRouter_VirtualRouterListener) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualRouter_VirtualRouterListener) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualRouter_VirtualRouterListener) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualRouter_VirtualRouterListener) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterspec.go b/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterspec.go new file mode 100644 index 0000000000..1585841463 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterspec.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualRouter_VirtualRouterSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.VirtualRouterSpec) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterspec.html +type VirtualRouter_VirtualRouterSpec struct { + + // Listeners AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterspec.html#cfn-appmesh-virtualrouter-virtualrouterspec-listeners + Listeners []VirtualRouter_VirtualRouterListener `json:"Listeners,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualRouter_VirtualRouterSpec) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualRouter.VirtualRouterSpec" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualRouter_VirtualRouterSpec) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualRouter_VirtualRouterSpec) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualRouter_VirtualRouterSpec) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualRouter_VirtualRouterSpec) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualRouter_VirtualRouterSpec) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualRouter_VirtualRouterSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appmesh-virtualservice.go b/cloudformation/appmesh/aws-appmesh-virtualservice.go similarity index 79% rename from cloudformation/resources/aws-appmesh-virtualservice.go rename to cloudformation/appmesh/aws-appmesh-virtualservice.go index 3a6a2f857c..e411ab1511 100644 --- a/cloudformation/resources/aws-appmesh-virtualservice.go +++ b/cloudformation/appmesh/aws-appmesh-virtualservice.go @@ -1,15 +1,17 @@ -package resources +package appmesh import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAppMeshVirtualService AWS CloudFormation Resource (AWS::AppMesh::VirtualService) +// VirtualService AWS CloudFormation Resource (AWS::AppMesh::VirtualService) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html -type AWSAppMeshVirtualService struct { +type VirtualService struct { // MeshName AWS CloudFormation Property // Required: true @@ -19,12 +21,12 @@ type AWSAppMeshVirtualService struct { // Spec AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-spec - Spec *AWSAppMeshVirtualService_VirtualServiceSpec `json:"Spec,omitempty"` + Spec *VirtualService_VirtualServiceSpec `json:"Spec,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VirtualServiceName AWS CloudFormation Property // Required: true @@ -42,50 +44,50 @@ type AWSAppMeshVirtualService struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService) AWSCloudFormationType() string { +func (r *VirtualService) AWSCloudFormationType() string { return "AWS::AppMesh::VirtualService" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService) DependsOn() []string { +func (r *VirtualService) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService) SetDependsOn(dependencies []string) { +func (r *VirtualService) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService) Metadata() map[string]interface{} { +func (r *VirtualService) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService) SetMetadata(metadata map[string]interface{}) { +func (r *VirtualService) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService) DeletionPolicy() policies.DeletionPolicy { +func (r *VirtualService) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualService) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppMeshVirtualService) MarshalJSON() ([]byte, error) { - type Properties AWSAppMeshVirtualService +func (r VirtualService) MarshalJSON() ([]byte, error) { + type Properties VirtualService return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSAppMeshVirtualService) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppMeshVirtualService) UnmarshalJSON(b []byte) error { - type Properties AWSAppMeshVirtualService +func (r *VirtualService) UnmarshalJSON(b []byte) error { + type Properties VirtualService res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSAppMeshVirtualService) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppMeshVirtualService(*res.Properties) + *r = VirtualService(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appmesh/aws-appmesh-virtualservice_virtualnodeserviceprovider.go b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualnodeserviceprovider.go new file mode 100644 index 0000000000..410ca705e1 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualnodeserviceprovider.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualService_VirtualNodeServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualNodeServiceProvider) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualnodeserviceprovider.html +type VirtualService_VirtualNodeServiceProvider struct { + + // VirtualNodeName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualnodeserviceprovider.html#cfn-appmesh-virtualservice-virtualnodeserviceprovider-virtualnodename + VirtualNodeName string `json:"VirtualNodeName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualService_VirtualNodeServiceProvider) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualService.VirtualNodeServiceProvider" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualService_VirtualNodeServiceProvider) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualService_VirtualNodeServiceProvider) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualService_VirtualNodeServiceProvider) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualService_VirtualNodeServiceProvider) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualService_VirtualNodeServiceProvider) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualService_VirtualNodeServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualservice_virtualrouterserviceprovider.go b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualrouterserviceprovider.go new file mode 100644 index 0000000000..0545117817 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualrouterserviceprovider.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualService_VirtualRouterServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualRouterServiceProvider) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualrouterserviceprovider.html +type VirtualService_VirtualRouterServiceProvider struct { + + // VirtualRouterName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualrouterserviceprovider.html#cfn-appmesh-virtualservice-virtualrouterserviceprovider-virtualroutername + VirtualRouterName string `json:"VirtualRouterName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualService_VirtualRouterServiceProvider) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualService.VirtualRouterServiceProvider" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualService_VirtualRouterServiceProvider) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualService_VirtualRouterServiceProvider) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualService_VirtualRouterServiceProvider) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualService_VirtualRouterServiceProvider) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualService_VirtualRouterServiceProvider) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualService_VirtualRouterServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualservice_virtualserviceprovider.go b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualserviceprovider.go new file mode 100644 index 0000000000..87bf890a36 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualserviceprovider.go @@ -0,0 +1,70 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualService_VirtualServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualServiceProvider) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html +type VirtualService_VirtualServiceProvider struct { + + // VirtualNode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html#cfn-appmesh-virtualservice-virtualserviceprovider-virtualnode + VirtualNode *VirtualService_VirtualNodeServiceProvider `json:"VirtualNode,omitempty"` + + // VirtualRouter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html#cfn-appmesh-virtualservice-virtualserviceprovider-virtualrouter + VirtualRouter *VirtualService_VirtualRouterServiceProvider `json:"VirtualRouter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualService_VirtualServiceProvider) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualService.VirtualServiceProvider" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualService_VirtualServiceProvider) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualService_VirtualServiceProvider) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualService_VirtualServiceProvider) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualService_VirtualServiceProvider) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualService_VirtualServiceProvider) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualService_VirtualServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appmesh/aws-appmesh-virtualservice_virtualservicespec.go b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualservicespec.go new file mode 100644 index 0000000000..65e1c62e06 --- /dev/null +++ b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualservicespec.go @@ -0,0 +1,65 @@ +package appmesh + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VirtualService_VirtualServiceSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualServiceSpec) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualservicespec.html +type VirtualService_VirtualServiceSpec struct { + + // Provider AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualservicespec.html#cfn-appmesh-virtualservice-virtualservicespec-provider + Provider *VirtualService_VirtualServiceProvider `json:"Provider,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VirtualService_VirtualServiceSpec) AWSCloudFormationType() string { + return "AWS::AppMesh::VirtualService.VirtualServiceSpec" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualService_VirtualServiceSpec) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VirtualService_VirtualServiceSpec) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualService_VirtualServiceSpec) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VirtualService_VirtualServiceSpec) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualService_VirtualServiceSpec) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VirtualService_VirtualServiceSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appstream-directoryconfig.go b/cloudformation/appstream/aws-appstream-directoryconfig.go similarity index 78% rename from cloudformation/resources/aws-appstream-directoryconfig.go rename to cloudformation/appstream/aws-appstream-directoryconfig.go index 665423f2d9..3c150f9804 100644 --- a/cloudformation/resources/aws-appstream-directoryconfig.go +++ b/cloudformation/appstream/aws-appstream-directoryconfig.go @@ -1,15 +1,16 @@ -package resources +package appstream import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppStreamDirectoryConfig AWS CloudFormation Resource (AWS::AppStream::DirectoryConfig) +// DirectoryConfig AWS CloudFormation Resource (AWS::AppStream::DirectoryConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html -type AWSAppStreamDirectoryConfig struct { +type DirectoryConfig struct { // DirectoryName AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSAppStreamDirectoryConfig struct { // ServiceAccountCredentials AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html#cfn-appstream-directoryconfig-serviceaccountcredentials - ServiceAccountCredentials *AWSAppStreamDirectoryConfig_ServiceAccountCredentials `json:"ServiceAccountCredentials,omitempty"` + ServiceAccountCredentials *DirectoryConfig_ServiceAccountCredentials `json:"ServiceAccountCredentials,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSAppStreamDirectoryConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamDirectoryConfig) AWSCloudFormationType() string { +func (r *DirectoryConfig) AWSCloudFormationType() string { return "AWS::AppStream::DirectoryConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamDirectoryConfig) DependsOn() []string { +func (r *DirectoryConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamDirectoryConfig) SetDependsOn(dependencies []string) { +func (r *DirectoryConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamDirectoryConfig) Metadata() map[string]interface{} { +func (r *DirectoryConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamDirectoryConfig) SetMetadata(metadata map[string]interface{}) { +func (r *DirectoryConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamDirectoryConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *DirectoryConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamDirectoryConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DirectoryConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppStreamDirectoryConfig) MarshalJSON() ([]byte, error) { - type Properties AWSAppStreamDirectoryConfig +func (r DirectoryConfig) MarshalJSON() ([]byte, error) { + type Properties DirectoryConfig return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSAppStreamDirectoryConfig) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppStreamDirectoryConfig) UnmarshalJSON(b []byte) error { - type Properties AWSAppStreamDirectoryConfig +func (r *DirectoryConfig) UnmarshalJSON(b []byte) error { + type Properties DirectoryConfig res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSAppStreamDirectoryConfig) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppStreamDirectoryConfig(*res.Properties) + *r = DirectoryConfig(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appstream/aws-appstream-directoryconfig_serviceaccountcredentials.go b/cloudformation/appstream/aws-appstream-directoryconfig_serviceaccountcredentials.go new file mode 100644 index 0000000000..bd56cddf91 --- /dev/null +++ b/cloudformation/appstream/aws-appstream-directoryconfig_serviceaccountcredentials.go @@ -0,0 +1,70 @@ +package appstream + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DirectoryConfig_ServiceAccountCredentials AWS CloudFormation Resource (AWS::AppStream::DirectoryConfig.ServiceAccountCredentials) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html +type DirectoryConfig_ServiceAccountCredentials struct { + + // AccountName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html#cfn-appstream-directoryconfig-serviceaccountcredentials-accountname + AccountName string `json:"AccountName,omitempty"` + + // AccountPassword AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html#cfn-appstream-directoryconfig-serviceaccountcredentials-accountpassword + AccountPassword string `json:"AccountPassword,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DirectoryConfig_ServiceAccountCredentials) AWSCloudFormationType() string { + return "AWS::AppStream::DirectoryConfig.ServiceAccountCredentials" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DirectoryConfig_ServiceAccountCredentials) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DirectoryConfig_ServiceAccountCredentials) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DirectoryConfig_ServiceAccountCredentials) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DirectoryConfig_ServiceAccountCredentials) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DirectoryConfig_ServiceAccountCredentials) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DirectoryConfig_ServiceAccountCredentials) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appstream-fleet.go b/cloudformation/appstream/aws-appstream-fleet.go similarity index 85% rename from cloudformation/resources/aws-appstream-fleet.go rename to cloudformation/appstream/aws-appstream-fleet.go index cdc5c5f820..9f824e0735 100644 --- a/cloudformation/resources/aws-appstream-fleet.go +++ b/cloudformation/appstream/aws-appstream-fleet.go @@ -1,20 +1,22 @@ -package resources +package appstream import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAppStreamFleet AWS CloudFormation Resource (AWS::AppStream::Fleet) +// Fleet AWS CloudFormation Resource (AWS::AppStream::Fleet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html -type AWSAppStreamFleet struct { +type Fleet struct { // ComputeCapacity AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-computecapacity - ComputeCapacity *AWSAppStreamFleet_ComputeCapacity `json:"ComputeCapacity,omitempty"` + ComputeCapacity *Fleet_ComputeCapacity `json:"ComputeCapacity,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSAppStreamFleet struct { // DomainJoinInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-domainjoininfo - DomainJoinInfo *AWSAppStreamFleet_DomainJoinInfo `json:"DomainJoinInfo,omitempty"` + DomainJoinInfo *Fleet_DomainJoinInfo `json:"DomainJoinInfo,omitempty"` // EnableDefaultInternetAccess AWS CloudFormation Property // Required: false @@ -79,12 +81,12 @@ type AWSAppStreamFleet struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-vpcconfig - VpcConfig *AWSAppStreamFleet_VpcConfig `json:"VpcConfig,omitempty"` + VpcConfig *Fleet_VpcConfig `json:"VpcConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -97,50 +99,50 @@ type AWSAppStreamFleet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamFleet) AWSCloudFormationType() string { +func (r *Fleet) AWSCloudFormationType() string { return "AWS::AppStream::Fleet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamFleet) DependsOn() []string { +func (r *Fleet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamFleet) SetDependsOn(dependencies []string) { +func (r *Fleet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamFleet) Metadata() map[string]interface{} { +func (r *Fleet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamFleet) SetMetadata(metadata map[string]interface{}) { +func (r *Fleet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamFleet) DeletionPolicy() policies.DeletionPolicy { +func (r *Fleet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamFleet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Fleet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppStreamFleet) MarshalJSON() ([]byte, error) { - type Properties AWSAppStreamFleet +func (r Fleet) MarshalJSON() ([]byte, error) { + type Properties Fleet return json.Marshal(&struct { Type string Properties Properties @@ -158,8 +160,8 @@ func (r AWSAppStreamFleet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppStreamFleet) UnmarshalJSON(b []byte) error { - type Properties AWSAppStreamFleet +func (r *Fleet) UnmarshalJSON(b []byte) error { + type Properties Fleet res := &struct { Type string Properties *Properties @@ -178,7 +180,7 @@ func (r *AWSAppStreamFleet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppStreamFleet(*res.Properties) + *r = Fleet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appstream/aws-appstream-fleet_computecapacity.go b/cloudformation/appstream/aws-appstream-fleet_computecapacity.go new file mode 100644 index 0000000000..64d9457f8e --- /dev/null +++ b/cloudformation/appstream/aws-appstream-fleet_computecapacity.go @@ -0,0 +1,65 @@ +package appstream + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Fleet_ComputeCapacity AWS CloudFormation Resource (AWS::AppStream::Fleet.ComputeCapacity) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-computecapacity.html +type Fleet_ComputeCapacity struct { + + // DesiredInstances AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-computecapacity.html#cfn-appstream-fleet-computecapacity-desiredinstances + DesiredInstances int `json:"DesiredInstances"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Fleet_ComputeCapacity) AWSCloudFormationType() string { + return "AWS::AppStream::Fleet.ComputeCapacity" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Fleet_ComputeCapacity) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Fleet_ComputeCapacity) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Fleet_ComputeCapacity) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Fleet_ComputeCapacity) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Fleet_ComputeCapacity) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Fleet_ComputeCapacity) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appstream-fleet_domainjoininfo.go b/cloudformation/appstream/aws-appstream-fleet_domainjoininfo.go similarity index 75% rename from cloudformation/resources/aws-appstream-fleet_domainjoininfo.go rename to cloudformation/appstream/aws-appstream-fleet_domainjoininfo.go index e375e9cb89..032d598160 100644 --- a/cloudformation/resources/aws-appstream-fleet_domainjoininfo.go +++ b/cloudformation/appstream/aws-appstream-fleet_domainjoininfo.go @@ -1,10 +1,12 @@ -package resources +package appstream -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppStreamFleet_DomainJoinInfo AWS CloudFormation Resource (AWS::AppStream::Fleet.DomainJoinInfo) +// Fleet_DomainJoinInfo AWS CloudFormation Resource (AWS::AppStream::Fleet.DomainJoinInfo) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-domainjoininfo.html -type AWSAppStreamFleet_DomainJoinInfo struct { +type Fleet_DomainJoinInfo struct { // DirectoryName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSAppStreamFleet_DomainJoinInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamFleet_DomainJoinInfo) AWSCloudFormationType() string { +func (r *Fleet_DomainJoinInfo) AWSCloudFormationType() string { return "AWS::AppStream::Fleet.DomainJoinInfo" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamFleet_DomainJoinInfo) DependsOn() []string { +func (r *Fleet_DomainJoinInfo) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamFleet_DomainJoinInfo) SetDependsOn(dependencies []string) { +func (r *Fleet_DomainJoinInfo) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamFleet_DomainJoinInfo) Metadata() map[string]interface{} { +func (r *Fleet_DomainJoinInfo) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamFleet_DomainJoinInfo) SetMetadata(metadata map[string]interface{}) { +func (r *Fleet_DomainJoinInfo) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamFleet_DomainJoinInfo) DeletionPolicy() policies.DeletionPolicy { +func (r *Fleet_DomainJoinInfo) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamFleet_DomainJoinInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Fleet_DomainJoinInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appstream-fleet_vpcconfig.go b/cloudformation/appstream/aws-appstream-fleet_vpcconfig.go similarity index 75% rename from cloudformation/resources/aws-appstream-fleet_vpcconfig.go rename to cloudformation/appstream/aws-appstream-fleet_vpcconfig.go index 0f2d7281df..2182fe2a6f 100644 --- a/cloudformation/resources/aws-appstream-fleet_vpcconfig.go +++ b/cloudformation/appstream/aws-appstream-fleet_vpcconfig.go @@ -1,10 +1,12 @@ -package resources +package appstream -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppStreamFleet_VpcConfig AWS CloudFormation Resource (AWS::AppStream::Fleet.VpcConfig) +// Fleet_VpcConfig AWS CloudFormation Resource (AWS::AppStream::Fleet.VpcConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-vpcconfig.html -type AWSAppStreamFleet_VpcConfig struct { +type Fleet_VpcConfig struct { // SecurityGroupIds AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSAppStreamFleet_VpcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamFleet_VpcConfig) AWSCloudFormationType() string { +func (r *Fleet_VpcConfig) AWSCloudFormationType() string { return "AWS::AppStream::Fleet.VpcConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamFleet_VpcConfig) DependsOn() []string { +func (r *Fleet_VpcConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamFleet_VpcConfig) SetDependsOn(dependencies []string) { +func (r *Fleet_VpcConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamFleet_VpcConfig) Metadata() map[string]interface{} { +func (r *Fleet_VpcConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamFleet_VpcConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Fleet_VpcConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamFleet_VpcConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Fleet_VpcConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamFleet_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Fleet_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appstream-imagebuilder.go b/cloudformation/appstream/aws-appstream-imagebuilder.go similarity index 83% rename from cloudformation/resources/aws-appstream-imagebuilder.go rename to cloudformation/appstream/aws-appstream-imagebuilder.go index 6bf08e933a..7cf41772c0 100644 --- a/cloudformation/resources/aws-appstream-imagebuilder.go +++ b/cloudformation/appstream/aws-appstream-imagebuilder.go @@ -1,15 +1,17 @@ -package resources +package appstream import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAppStreamImageBuilder AWS CloudFormation Resource (AWS::AppStream::ImageBuilder) +// ImageBuilder AWS CloudFormation Resource (AWS::AppStream::ImageBuilder) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html -type AWSAppStreamImageBuilder struct { +type ImageBuilder struct { // AppstreamAgentVersion AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSAppStreamImageBuilder struct { // DomainJoinInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-domainjoininfo - DomainJoinInfo *AWSAppStreamImageBuilder_DomainJoinInfo `json:"DomainJoinInfo,omitempty"` + DomainJoinInfo *ImageBuilder_DomainJoinInfo `json:"DomainJoinInfo,omitempty"` // EnableDefaultInternetAccess AWS CloudFormation Property // Required: false @@ -59,12 +61,12 @@ type AWSAppStreamImageBuilder struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-vpcconfig - VpcConfig *AWSAppStreamImageBuilder_VpcConfig `json:"VpcConfig,omitempty"` + VpcConfig *ImageBuilder_VpcConfig `json:"VpcConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -77,50 +79,50 @@ type AWSAppStreamImageBuilder struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamImageBuilder) AWSCloudFormationType() string { +func (r *ImageBuilder) AWSCloudFormationType() string { return "AWS::AppStream::ImageBuilder" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamImageBuilder) DependsOn() []string { +func (r *ImageBuilder) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamImageBuilder) SetDependsOn(dependencies []string) { +func (r *ImageBuilder) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamImageBuilder) Metadata() map[string]interface{} { +func (r *ImageBuilder) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamImageBuilder) SetMetadata(metadata map[string]interface{}) { +func (r *ImageBuilder) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamImageBuilder) DeletionPolicy() policies.DeletionPolicy { +func (r *ImageBuilder) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamImageBuilder) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ImageBuilder) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppStreamImageBuilder) MarshalJSON() ([]byte, error) { - type Properties AWSAppStreamImageBuilder +func (r ImageBuilder) MarshalJSON() ([]byte, error) { + type Properties ImageBuilder return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +140,8 @@ func (r AWSAppStreamImageBuilder) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppStreamImageBuilder) UnmarshalJSON(b []byte) error { - type Properties AWSAppStreamImageBuilder +func (r *ImageBuilder) UnmarshalJSON(b []byte) error { + type Properties ImageBuilder res := &struct { Type string Properties *Properties @@ -158,7 +160,7 @@ func (r *AWSAppStreamImageBuilder) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppStreamImageBuilder(*res.Properties) + *r = ImageBuilder(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appstream/aws-appstream-imagebuilder_domainjoininfo.go b/cloudformation/appstream/aws-appstream-imagebuilder_domainjoininfo.go new file mode 100644 index 0000000000..d2cf6a21fe --- /dev/null +++ b/cloudformation/appstream/aws-appstream-imagebuilder_domainjoininfo.go @@ -0,0 +1,70 @@ +package appstream + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ImageBuilder_DomainJoinInfo AWS CloudFormation Resource (AWS::AppStream::ImageBuilder.DomainJoinInfo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html +type ImageBuilder_DomainJoinInfo struct { + + // DirectoryName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-directoryname + DirectoryName string `json:"DirectoryName,omitempty"` + + // OrganizationalUnitDistinguishedName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-organizationalunitdistinguishedname + OrganizationalUnitDistinguishedName string `json:"OrganizationalUnitDistinguishedName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ImageBuilder_DomainJoinInfo) AWSCloudFormationType() string { + return "AWS::AppStream::ImageBuilder.DomainJoinInfo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ImageBuilder_DomainJoinInfo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ImageBuilder_DomainJoinInfo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ImageBuilder_DomainJoinInfo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ImageBuilder_DomainJoinInfo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ImageBuilder_DomainJoinInfo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ImageBuilder_DomainJoinInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appstream/aws-appstream-imagebuilder_vpcconfig.go b/cloudformation/appstream/aws-appstream-imagebuilder_vpcconfig.go new file mode 100644 index 0000000000..ebfebb6ca0 --- /dev/null +++ b/cloudformation/appstream/aws-appstream-imagebuilder_vpcconfig.go @@ -0,0 +1,70 @@ +package appstream + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ImageBuilder_VpcConfig AWS CloudFormation Resource (AWS::AppStream::ImageBuilder.VpcConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html +type ImageBuilder_VpcConfig struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` + + // SubnetIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-subnetids + SubnetIds []string `json:"SubnetIds,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ImageBuilder_VpcConfig) AWSCloudFormationType() string { + return "AWS::AppStream::ImageBuilder.VpcConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ImageBuilder_VpcConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ImageBuilder_VpcConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ImageBuilder_VpcConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ImageBuilder_VpcConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ImageBuilder_VpcConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ImageBuilder_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appstream-stack.go b/cloudformation/appstream/aws-appstream-stack.go similarity index 83% rename from cloudformation/resources/aws-appstream-stack.go rename to cloudformation/appstream/aws-appstream-stack.go index 03c9710b88..4401221d50 100644 --- a/cloudformation/resources/aws-appstream-stack.go +++ b/cloudformation/appstream/aws-appstream-stack.go @@ -1,20 +1,22 @@ -package resources +package appstream import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSAppStreamStack AWS CloudFormation Resource (AWS::AppStream::Stack) +// Stack AWS CloudFormation Resource (AWS::AppStream::Stack) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html -type AWSAppStreamStack struct { +type Stack struct { // ApplicationSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-applicationsettings - ApplicationSettings *AWSAppStreamStack_ApplicationSettings `json:"ApplicationSettings,omitempty"` + ApplicationSettings *Stack_ApplicationSettings `json:"ApplicationSettings,omitempty"` // AttributesToDelete AWS CloudFormation Property // Required: false @@ -54,17 +56,17 @@ type AWSAppStreamStack struct { // StorageConnectors AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-storageconnectors - StorageConnectors []AWSAppStreamStack_StorageConnector `json:"StorageConnectors,omitempty"` + StorageConnectors []Stack_StorageConnector `json:"StorageConnectors,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // UserSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-usersettings - UserSettings []AWSAppStreamStack_UserSetting `json:"UserSettings,omitempty"` + UserSettings []Stack_UserSetting `json:"UserSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -77,50 +79,50 @@ type AWSAppStreamStack struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamStack) AWSCloudFormationType() string { +func (r *Stack) AWSCloudFormationType() string { return "AWS::AppStream::Stack" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStack) DependsOn() []string { +func (r *Stack) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStack) SetDependsOn(dependencies []string) { +func (r *Stack) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStack) Metadata() map[string]interface{} { +func (r *Stack) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStack) SetMetadata(metadata map[string]interface{}) { +func (r *Stack) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStack) DeletionPolicy() policies.DeletionPolicy { +func (r *Stack) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStack) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stack) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppStreamStack) MarshalJSON() ([]byte, error) { - type Properties AWSAppStreamStack +func (r Stack) MarshalJSON() ([]byte, error) { + type Properties Stack return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +140,8 @@ func (r AWSAppStreamStack) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppStreamStack) UnmarshalJSON(b []byte) error { - type Properties AWSAppStreamStack +func (r *Stack) UnmarshalJSON(b []byte) error { + type Properties Stack res := &struct { Type string Properties *Properties @@ -158,7 +160,7 @@ func (r *AWSAppStreamStack) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppStreamStack(*res.Properties) + *r = Stack(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appstream/aws-appstream-stack_applicationsettings.go b/cloudformation/appstream/aws-appstream-stack_applicationsettings.go new file mode 100644 index 0000000000..dd167e1b26 --- /dev/null +++ b/cloudformation/appstream/aws-appstream-stack_applicationsettings.go @@ -0,0 +1,70 @@ +package appstream + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Stack_ApplicationSettings AWS CloudFormation Resource (AWS::AppStream::Stack.ApplicationSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html +type Stack_ApplicationSettings struct { + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html#cfn-appstream-stack-applicationsettings-enabled + Enabled bool `json:"Enabled"` + + // SettingsGroup AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html#cfn-appstream-stack-applicationsettings-settingsgroup + SettingsGroup string `json:"SettingsGroup,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Stack_ApplicationSettings) AWSCloudFormationType() string { + return "AWS::AppStream::Stack.ApplicationSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stack_ApplicationSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stack_ApplicationSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stack_ApplicationSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stack_ApplicationSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stack_ApplicationSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stack_ApplicationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appstream-stack_storageconnector.go b/cloudformation/appstream/aws-appstream-stack_storageconnector.go similarity index 76% rename from cloudformation/resources/aws-appstream-stack_storageconnector.go rename to cloudformation/appstream/aws-appstream-stack_storageconnector.go index 47ff1f74d6..07d16c63f0 100644 --- a/cloudformation/resources/aws-appstream-stack_storageconnector.go +++ b/cloudformation/appstream/aws-appstream-stack_storageconnector.go @@ -1,10 +1,12 @@ -package resources +package appstream -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppStreamStack_StorageConnector AWS CloudFormation Resource (AWS::AppStream::Stack.StorageConnector) +// Stack_StorageConnector AWS CloudFormation Resource (AWS::AppStream::Stack.StorageConnector) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html -type AWSAppStreamStack_StorageConnector struct { +type Stack_StorageConnector struct { // ConnectorType AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSAppStreamStack_StorageConnector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamStack_StorageConnector) AWSCloudFormationType() string { +func (r *Stack_StorageConnector) AWSCloudFormationType() string { return "AWS::AppStream::Stack.StorageConnector" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStack_StorageConnector) DependsOn() []string { +func (r *Stack_StorageConnector) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStack_StorageConnector) SetDependsOn(dependencies []string) { +func (r *Stack_StorageConnector) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStack_StorageConnector) Metadata() map[string]interface{} { +func (r *Stack_StorageConnector) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStack_StorageConnector) SetMetadata(metadata map[string]interface{}) { +func (r *Stack_StorageConnector) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStack_StorageConnector) DeletionPolicy() policies.DeletionPolicy { +func (r *Stack_StorageConnector) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStack_StorageConnector) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stack_StorageConnector) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/appstream/aws-appstream-stack_usersetting.go b/cloudformation/appstream/aws-appstream-stack_usersetting.go new file mode 100644 index 0000000000..208889a71f --- /dev/null +++ b/cloudformation/appstream/aws-appstream-stack_usersetting.go @@ -0,0 +1,70 @@ +package appstream + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Stack_UserSetting AWS CloudFormation Resource (AWS::AppStream::Stack.UserSetting) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html +type Stack_UserSetting struct { + + // Action AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html#cfn-appstream-stack-usersetting-action + Action string `json:"Action,omitempty"` + + // Permission AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html#cfn-appstream-stack-usersetting-permission + Permission string `json:"Permission,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Stack_UserSetting) AWSCloudFormationType() string { + return "AWS::AppStream::Stack.UserSetting" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stack_UserSetting) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stack_UserSetting) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stack_UserSetting) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stack_UserSetting) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stack_UserSetting) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stack_UserSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appstream-stackfleetassociation.go b/cloudformation/appstream/aws-appstream-stackfleetassociation.go similarity index 77% rename from cloudformation/resources/aws-appstream-stackfleetassociation.go rename to cloudformation/appstream/aws-appstream-stackfleetassociation.go index c1f208b6fc..c589c70d64 100644 --- a/cloudformation/resources/aws-appstream-stackfleetassociation.go +++ b/cloudformation/appstream/aws-appstream-stackfleetassociation.go @@ -1,15 +1,16 @@ -package resources +package appstream import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppStreamStackFleetAssociation AWS CloudFormation Resource (AWS::AppStream::StackFleetAssociation) +// StackFleetAssociation AWS CloudFormation Resource (AWS::AppStream::StackFleetAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html -type AWSAppStreamStackFleetAssociation struct { +type StackFleetAssociation struct { // FleetName AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSAppStreamStackFleetAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamStackFleetAssociation) AWSCloudFormationType() string { +func (r *StackFleetAssociation) AWSCloudFormationType() string { return "AWS::AppStream::StackFleetAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStackFleetAssociation) DependsOn() []string { +func (r *StackFleetAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStackFleetAssociation) SetDependsOn(dependencies []string) { +func (r *StackFleetAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStackFleetAssociation) Metadata() map[string]interface{} { +func (r *StackFleetAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStackFleetAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *StackFleetAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStackFleetAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *StackFleetAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStackFleetAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StackFleetAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppStreamStackFleetAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSAppStreamStackFleetAssociation +func (r StackFleetAssociation) MarshalJSON() ([]byte, error) { + type Properties StackFleetAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSAppStreamStackFleetAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppStreamStackFleetAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSAppStreamStackFleetAssociation +func (r *StackFleetAssociation) UnmarshalJSON(b []byte) error { + type Properties StackFleetAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSAppStreamStackFleetAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppStreamStackFleetAssociation(*res.Properties) + *r = StackFleetAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-appstream-stackuserassociation.go b/cloudformation/appstream/aws-appstream-stackuserassociation.go similarity index 80% rename from cloudformation/resources/aws-appstream-stackuserassociation.go rename to cloudformation/appstream/aws-appstream-stackuserassociation.go index ef1e45e8de..64213712d2 100644 --- a/cloudformation/resources/aws-appstream-stackuserassociation.go +++ b/cloudformation/appstream/aws-appstream-stackuserassociation.go @@ -1,15 +1,16 @@ -package resources +package appstream import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppStreamStackUserAssociation AWS CloudFormation Resource (AWS::AppStream::StackUserAssociation) +// StackUserAssociation AWS CloudFormation Resource (AWS::AppStream::StackUserAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html -type AWSAppStreamStackUserAssociation struct { +type StackUserAssociation struct { // AuthenticationType AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSAppStreamStackUserAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamStackUserAssociation) AWSCloudFormationType() string { +func (r *StackUserAssociation) AWSCloudFormationType() string { return "AWS::AppStream::StackUserAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStackUserAssociation) DependsOn() []string { +func (r *StackUserAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStackUserAssociation) SetDependsOn(dependencies []string) { +func (r *StackUserAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStackUserAssociation) Metadata() map[string]interface{} { +func (r *StackUserAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStackUserAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *StackUserAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStackUserAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *StackUserAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStackUserAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StackUserAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppStreamStackUserAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSAppStreamStackUserAssociation +func (r StackUserAssociation) MarshalJSON() ([]byte, error) { + type Properties StackUserAssociation return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSAppStreamStackUserAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppStreamStackUserAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSAppStreamStackUserAssociation +func (r *StackUserAssociation) UnmarshalJSON(b []byte) error { + type Properties StackUserAssociation res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSAppStreamStackUserAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppStreamStackUserAssociation(*res.Properties) + *r = StackUserAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-appstream-user.go b/cloudformation/appstream/aws-appstream-user.go similarity index 84% rename from cloudformation/resources/aws-appstream-user.go rename to cloudformation/appstream/aws-appstream-user.go index c5625af856..b33d5f36ec 100644 --- a/cloudformation/resources/aws-appstream-user.go +++ b/cloudformation/appstream/aws-appstream-user.go @@ -1,15 +1,16 @@ -package resources +package appstream import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppStreamUser AWS CloudFormation Resource (AWS::AppStream::User) +// User AWS CloudFormation Resource (AWS::AppStream::User) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html -type AWSAppStreamUser struct { +type User struct { // AuthenticationType AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSAppStreamUser struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamUser) AWSCloudFormationType() string { +func (r *User) AWSCloudFormationType() string { return "AWS::AppStream::User" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamUser) DependsOn() []string { +func (r *User) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamUser) SetDependsOn(dependencies []string) { +func (r *User) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamUser) Metadata() map[string]interface{} { +func (r *User) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamUser) SetMetadata(metadata map[string]interface{}) { +func (r *User) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamUser) DeletionPolicy() policies.DeletionPolicy { +func (r *User) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamUser) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *User) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppStreamUser) MarshalJSON() ([]byte, error) { - type Properties AWSAppStreamUser +func (r User) MarshalJSON() ([]byte, error) { + type Properties User return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSAppStreamUser) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppStreamUser) UnmarshalJSON(b []byte) error { - type Properties AWSAppStreamUser +func (r *User) UnmarshalJSON(b []byte) error { + type Properties User res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSAppStreamUser) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppStreamUser(*res.Properties) + *r = User(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-appsync-apikey.go b/cloudformation/appsync/aws-appsync-apikey.go similarity index 82% rename from cloudformation/resources/aws-appsync-apikey.go rename to cloudformation/appsync/aws-appsync-apikey.go index 355ea983ff..6c26607c6c 100644 --- a/cloudformation/resources/aws-appsync-apikey.go +++ b/cloudformation/appsync/aws-appsync-apikey.go @@ -1,15 +1,16 @@ -package resources +package appsync import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppSyncApiKey AWS CloudFormation Resource (AWS::AppSync::ApiKey) +// ApiKey AWS CloudFormation Resource (AWS::AppSync::ApiKey) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html -type AWSAppSyncApiKey struct { +type ApiKey struct { // ApiId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSAppSyncApiKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncApiKey) AWSCloudFormationType() string { +func (r *ApiKey) AWSCloudFormationType() string { return "AWS::AppSync::ApiKey" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncApiKey) DependsOn() []string { +func (r *ApiKey) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncApiKey) SetDependsOn(dependencies []string) { +func (r *ApiKey) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncApiKey) Metadata() map[string]interface{} { +func (r *ApiKey) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncApiKey) SetMetadata(metadata map[string]interface{}) { +func (r *ApiKey) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncApiKey) DeletionPolicy() policies.DeletionPolicy { +func (r *ApiKey) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncApiKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApiKey) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppSyncApiKey) MarshalJSON() ([]byte, error) { - type Properties AWSAppSyncApiKey +func (r ApiKey) MarshalJSON() ([]byte, error) { + type Properties ApiKey return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSAppSyncApiKey) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppSyncApiKey) UnmarshalJSON(b []byte) error { - type Properties AWSAppSyncApiKey +func (r *ApiKey) UnmarshalJSON(b []byte) error { + type Properties ApiKey res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSAppSyncApiKey) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppSyncApiKey(*res.Properties) + *r = ApiKey(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-appsync-datasource.go b/cloudformation/appsync/aws-appsync-datasource.go similarity index 80% rename from cloudformation/resources/aws-appsync-datasource.go rename to cloudformation/appsync/aws-appsync-datasource.go index 5c44cab1e2..290f31206a 100644 --- a/cloudformation/resources/aws-appsync-datasource.go +++ b/cloudformation/appsync/aws-appsync-datasource.go @@ -1,15 +1,16 @@ -package resources +package appsync import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppSyncDataSource AWS CloudFormation Resource (AWS::AppSync::DataSource) +// DataSource AWS CloudFormation Resource (AWS::AppSync::DataSource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html -type AWSAppSyncDataSource struct { +type DataSource struct { // ApiId AWS CloudFormation Property // Required: true @@ -24,22 +25,22 @@ type AWSAppSyncDataSource struct { // DynamoDBConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-dynamodbconfig - DynamoDBConfig *AWSAppSyncDataSource_DynamoDBConfig `json:"DynamoDBConfig,omitempty"` + DynamoDBConfig *DataSource_DynamoDBConfig `json:"DynamoDBConfig,omitempty"` // ElasticsearchConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-elasticsearchconfig - ElasticsearchConfig *AWSAppSyncDataSource_ElasticsearchConfig `json:"ElasticsearchConfig,omitempty"` + ElasticsearchConfig *DataSource_ElasticsearchConfig `json:"ElasticsearchConfig,omitempty"` // HttpConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-httpconfig - HttpConfig *AWSAppSyncDataSource_HttpConfig `json:"HttpConfig,omitempty"` + HttpConfig *DataSource_HttpConfig `json:"HttpConfig,omitempty"` // LambdaConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-lambdaconfig - LambdaConfig *AWSAppSyncDataSource_LambdaConfig `json:"LambdaConfig,omitempty"` + LambdaConfig *DataSource_LambdaConfig `json:"LambdaConfig,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -49,7 +50,7 @@ type AWSAppSyncDataSource struct { // RelationalDatabaseConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-relationaldatabaseconfig - RelationalDatabaseConfig *AWSAppSyncDataSource_RelationalDatabaseConfig `json:"RelationalDatabaseConfig,omitempty"` + RelationalDatabaseConfig *DataSource_RelationalDatabaseConfig `json:"RelationalDatabaseConfig,omitempty"` // ServiceRoleArn AWS CloudFormation Property // Required: false @@ -72,50 +73,50 @@ type AWSAppSyncDataSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource) AWSCloudFormationType() string { +func (r *DataSource) AWSCloudFormationType() string { return "AWS::AppSync::DataSource" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource) DependsOn() []string { +func (r *DataSource) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource) SetDependsOn(dependencies []string) { +func (r *DataSource) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource) Metadata() map[string]interface{} { +func (r *DataSource) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource) SetMetadata(metadata map[string]interface{}) { +func (r *DataSource) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource) DeletionPolicy() policies.DeletionPolicy { +func (r *DataSource) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppSyncDataSource) MarshalJSON() ([]byte, error) { - type Properties AWSAppSyncDataSource +func (r DataSource) MarshalJSON() ([]byte, error) { + type Properties DataSource return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSAppSyncDataSource) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppSyncDataSource) UnmarshalJSON(b []byte) error { - type Properties AWSAppSyncDataSource +func (r *DataSource) UnmarshalJSON(b []byte) error { + type Properties DataSource res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSAppSyncDataSource) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppSyncDataSource(*res.Properties) + *r = DataSource(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appsync/aws-appsync-datasource_authorizationconfig.go b/cloudformation/appsync/aws-appsync-datasource_authorizationconfig.go new file mode 100644 index 0000000000..98189d4752 --- /dev/null +++ b/cloudformation/appsync/aws-appsync-datasource_authorizationconfig.go @@ -0,0 +1,70 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataSource_AuthorizationConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.AuthorizationConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html +type DataSource_AuthorizationConfig struct { + + // AuthorizationType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-authorizationtype + AuthorizationType string `json:"AuthorizationType,omitempty"` + + // AwsIamConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-awsiamconfig + AwsIamConfig *DataSource_AwsIamConfig `json:"AwsIamConfig,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataSource_AuthorizationConfig) AWSCloudFormationType() string { + return "AWS::AppSync::DataSource.AuthorizationConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_AuthorizationConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_AuthorizationConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_AuthorizationConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_AuthorizationConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_AuthorizationConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_AuthorizationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appsync/aws-appsync-datasource_awsiamconfig.go b/cloudformation/appsync/aws-appsync-datasource_awsiamconfig.go new file mode 100644 index 0000000000..aba9f0bd09 --- /dev/null +++ b/cloudformation/appsync/aws-appsync-datasource_awsiamconfig.go @@ -0,0 +1,70 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataSource_AwsIamConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.AwsIamConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html +type DataSource_AwsIamConfig struct { + + // SigningRegion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingregion + SigningRegion string `json:"SigningRegion,omitempty"` + + // SigningServiceName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingservicename + SigningServiceName string `json:"SigningServiceName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataSource_AwsIamConfig) AWSCloudFormationType() string { + return "AWS::AppSync::DataSource.AwsIamConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_AwsIamConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_AwsIamConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_AwsIamConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_AwsIamConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_AwsIamConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_AwsIamConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appsync-datasource_dynamodbconfig.go b/cloudformation/appsync/aws-appsync-datasource_dynamodbconfig.go similarity index 76% rename from cloudformation/resources/aws-appsync-datasource_dynamodbconfig.go rename to cloudformation/appsync/aws-appsync-datasource_dynamodbconfig.go index 4d821b1f5c..726c84b6db 100644 --- a/cloudformation/resources/aws-appsync-datasource_dynamodbconfig.go +++ b/cloudformation/appsync/aws-appsync-datasource_dynamodbconfig.go @@ -1,10 +1,12 @@ -package resources +package appsync -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppSyncDataSource_DynamoDBConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.DynamoDBConfig) +// DataSource_DynamoDBConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.DynamoDBConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html -type AWSAppSyncDataSource_DynamoDBConfig struct { +type DataSource_DynamoDBConfig struct { // AwsRegion AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSAppSyncDataSource_DynamoDBConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_DynamoDBConfig) AWSCloudFormationType() string { +func (r *DataSource_DynamoDBConfig) AWSCloudFormationType() string { return "AWS::AppSync::DataSource.DynamoDBConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_DynamoDBConfig) DependsOn() []string { +func (r *DataSource_DynamoDBConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_DynamoDBConfig) SetDependsOn(dependencies []string) { +func (r *DataSource_DynamoDBConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_DynamoDBConfig) Metadata() map[string]interface{} { +func (r *DataSource_DynamoDBConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_DynamoDBConfig) SetMetadata(metadata map[string]interface{}) { +func (r *DataSource_DynamoDBConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_DynamoDBConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *DataSource_DynamoDBConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_DynamoDBConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataSource_DynamoDBConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/appsync/aws-appsync-datasource_elasticsearchconfig.go b/cloudformation/appsync/aws-appsync-datasource_elasticsearchconfig.go new file mode 100644 index 0000000000..6960109033 --- /dev/null +++ b/cloudformation/appsync/aws-appsync-datasource_elasticsearchconfig.go @@ -0,0 +1,70 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataSource_ElasticsearchConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.ElasticsearchConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html +type DataSource_ElasticsearchConfig struct { + + // AwsRegion AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-awsregion + AwsRegion string `json:"AwsRegion,omitempty"` + + // Endpoint AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-endpoint + Endpoint string `json:"Endpoint,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataSource_ElasticsearchConfig) AWSCloudFormationType() string { + return "AWS::AppSync::DataSource.ElasticsearchConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_ElasticsearchConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_ElasticsearchConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_ElasticsearchConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_ElasticsearchConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_ElasticsearchConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_ElasticsearchConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appsync/aws-appsync-datasource_httpconfig.go b/cloudformation/appsync/aws-appsync-datasource_httpconfig.go new file mode 100644 index 0000000000..1aec7c119c --- /dev/null +++ b/cloudformation/appsync/aws-appsync-datasource_httpconfig.go @@ -0,0 +1,70 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataSource_HttpConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.HttpConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html +type DataSource_HttpConfig struct { + + // AuthorizationConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-authorizationconfig + AuthorizationConfig *DataSource_AuthorizationConfig `json:"AuthorizationConfig,omitempty"` + + // Endpoint AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-endpoint + Endpoint string `json:"Endpoint,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataSource_HttpConfig) AWSCloudFormationType() string { + return "AWS::AppSync::DataSource.HttpConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_HttpConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_HttpConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_HttpConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_HttpConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_HttpConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_HttpConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appsync/aws-appsync-datasource_lambdaconfig.go b/cloudformation/appsync/aws-appsync-datasource_lambdaconfig.go new file mode 100644 index 0000000000..2d4e0c61bf --- /dev/null +++ b/cloudformation/appsync/aws-appsync-datasource_lambdaconfig.go @@ -0,0 +1,65 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataSource_LambdaConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.LambdaConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html +type DataSource_LambdaConfig struct { + + // LambdaFunctionArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html#cfn-appsync-datasource-lambdaconfig-lambdafunctionarn + LambdaFunctionArn string `json:"LambdaFunctionArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataSource_LambdaConfig) AWSCloudFormationType() string { + return "AWS::AppSync::DataSource.LambdaConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_LambdaConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_LambdaConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_LambdaConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_LambdaConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_LambdaConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_LambdaConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appsync-datasource_rdshttpendpointconfig.go b/cloudformation/appsync/aws-appsync-datasource_rdshttpendpointconfig.go similarity index 78% rename from cloudformation/resources/aws-appsync-datasource_rdshttpendpointconfig.go rename to cloudformation/appsync/aws-appsync-datasource_rdshttpendpointconfig.go index 359502e93d..04891332b6 100644 --- a/cloudformation/resources/aws-appsync-datasource_rdshttpendpointconfig.go +++ b/cloudformation/appsync/aws-appsync-datasource_rdshttpendpointconfig.go @@ -1,10 +1,12 @@ -package resources +package appsync -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppSyncDataSource_RdsHttpEndpointConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.RdsHttpEndpointConfig) +// DataSource_RdsHttpEndpointConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.RdsHttpEndpointConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html -type AWSAppSyncDataSource_RdsHttpEndpointConfig struct { +type DataSource_RdsHttpEndpointConfig struct { // AwsRegion AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSAppSyncDataSource_RdsHttpEndpointConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_RdsHttpEndpointConfig) AWSCloudFormationType() string { +func (r *DataSource_RdsHttpEndpointConfig) AWSCloudFormationType() string { return "AWS::AppSync::DataSource.RdsHttpEndpointConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_RdsHttpEndpointConfig) DependsOn() []string { +func (r *DataSource_RdsHttpEndpointConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_RdsHttpEndpointConfig) SetDependsOn(dependencies []string) { +func (r *DataSource_RdsHttpEndpointConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_RdsHttpEndpointConfig) Metadata() map[string]interface{} { +func (r *DataSource_RdsHttpEndpointConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_RdsHttpEndpointConfig) SetMetadata(metadata map[string]interface{}) { +func (r *DataSource_RdsHttpEndpointConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_RdsHttpEndpointConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *DataSource_RdsHttpEndpointConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_RdsHttpEndpointConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataSource_RdsHttpEndpointConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/appsync/aws-appsync-datasource_relationaldatabaseconfig.go b/cloudformation/appsync/aws-appsync-datasource_relationaldatabaseconfig.go new file mode 100644 index 0000000000..a0e3b4832f --- /dev/null +++ b/cloudformation/appsync/aws-appsync-datasource_relationaldatabaseconfig.go @@ -0,0 +1,70 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataSource_RelationalDatabaseConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.RelationalDatabaseConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html +type DataSource_RelationalDatabaseConfig struct { + + // RdsHttpEndpointConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-rdshttpendpointconfig + RdsHttpEndpointConfig *DataSource_RdsHttpEndpointConfig `json:"RdsHttpEndpointConfig,omitempty"` + + // RelationalDatabaseSourceType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-relationaldatabasesourcetype + RelationalDatabaseSourceType string `json:"RelationalDatabaseSourceType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataSource_RelationalDatabaseConfig) AWSCloudFormationType() string { + return "AWS::AppSync::DataSource.RelationalDatabaseConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_RelationalDatabaseConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataSource_RelationalDatabaseConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_RelationalDatabaseConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataSource_RelationalDatabaseConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_RelationalDatabaseConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataSource_RelationalDatabaseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appsync-functionconfiguration.go b/cloudformation/appsync/aws-appsync-functionconfiguration.go similarity index 84% rename from cloudformation/resources/aws-appsync-functionconfiguration.go rename to cloudformation/appsync/aws-appsync-functionconfiguration.go index 435bc603b6..36de2176d2 100644 --- a/cloudformation/resources/aws-appsync-functionconfiguration.go +++ b/cloudformation/appsync/aws-appsync-functionconfiguration.go @@ -1,15 +1,16 @@ -package resources +package appsync import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppSyncFunctionConfiguration AWS CloudFormation Resource (AWS::AppSync::FunctionConfiguration) +// FunctionConfiguration AWS CloudFormation Resource (AWS::AppSync::FunctionConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html -type AWSAppSyncFunctionConfiguration struct { +type FunctionConfiguration struct { // ApiId AWS CloudFormation Property // Required: true @@ -67,50 +68,50 @@ type AWSAppSyncFunctionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncFunctionConfiguration) AWSCloudFormationType() string { +func (r *FunctionConfiguration) AWSCloudFormationType() string { return "AWS::AppSync::FunctionConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncFunctionConfiguration) DependsOn() []string { +func (r *FunctionConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncFunctionConfiguration) SetDependsOn(dependencies []string) { +func (r *FunctionConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncFunctionConfiguration) Metadata() map[string]interface{} { +func (r *FunctionConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncFunctionConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *FunctionConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncFunctionConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *FunctionConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncFunctionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppSyncFunctionConfiguration) MarshalJSON() ([]byte, error) { - type Properties AWSAppSyncFunctionConfiguration +func (r FunctionConfiguration) MarshalJSON() ([]byte, error) { + type Properties FunctionConfiguration return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSAppSyncFunctionConfiguration) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppSyncFunctionConfiguration) UnmarshalJSON(b []byte) error { - type Properties AWSAppSyncFunctionConfiguration +func (r *FunctionConfiguration) UnmarshalJSON(b []byte) error { + type Properties FunctionConfiguration res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSAppSyncFunctionConfiguration) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppSyncFunctionConfiguration(*res.Properties) + *r = FunctionConfiguration(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-appsync-graphqlapi.go b/cloudformation/appsync/aws-appsync-graphqlapi.go similarity index 77% rename from cloudformation/resources/aws-appsync-graphqlapi.go rename to cloudformation/appsync/aws-appsync-graphqlapi.go index 1e01312505..35170aa63b 100644 --- a/cloudformation/resources/aws-appsync-graphqlapi.go +++ b/cloudformation/appsync/aws-appsync-graphqlapi.go @@ -1,20 +1,21 @@ -package resources +package appsync import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppSyncGraphQLApi AWS CloudFormation Resource (AWS::AppSync::GraphQLApi) +// GraphQLApi AWS CloudFormation Resource (AWS::AppSync::GraphQLApi) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html -type AWSAppSyncGraphQLApi struct { +type GraphQLApi struct { // AdditionalAuthenticationProviders AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-additionalauthenticationproviders - AdditionalAuthenticationProviders *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders `json:"AdditionalAuthenticationProviders,omitempty"` + AdditionalAuthenticationProviders *GraphQLApi_AdditionalAuthenticationProviders `json:"AdditionalAuthenticationProviders,omitempty"` // AuthenticationType AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSAppSyncGraphQLApi struct { // LogConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-logconfig - LogConfig *AWSAppSyncGraphQLApi_LogConfig `json:"LogConfig,omitempty"` + LogConfig *GraphQLApi_LogConfig `json:"LogConfig,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -34,17 +35,17 @@ type AWSAppSyncGraphQLApi struct { // OpenIDConnectConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-openidconnectconfig - OpenIDConnectConfig *AWSAppSyncGraphQLApi_OpenIDConnectConfig `json:"OpenIDConnectConfig,omitempty"` + OpenIDConnectConfig *GraphQLApi_OpenIDConnectConfig `json:"OpenIDConnectConfig,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-tags - Tags *AWSAppSyncGraphQLApi_Tags `json:"Tags,omitempty"` + Tags *GraphQLApi_Tags `json:"Tags,omitempty"` // UserPoolConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-userpoolconfig - UserPoolConfig *AWSAppSyncGraphQLApi_UserPoolConfig `json:"UserPoolConfig,omitempty"` + UserPoolConfig *GraphQLApi_UserPoolConfig `json:"UserPoolConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +58,50 @@ type AWSAppSyncGraphQLApi struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi) AWSCloudFormationType() string { +func (r *GraphQLApi) AWSCloudFormationType() string { return "AWS::AppSync::GraphQLApi" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi) DependsOn() []string { +func (r *GraphQLApi) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi) SetDependsOn(dependencies []string) { +func (r *GraphQLApi) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi) Metadata() map[string]interface{} { +func (r *GraphQLApi) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi) SetMetadata(metadata map[string]interface{}) { +func (r *GraphQLApi) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi) DeletionPolicy() policies.DeletionPolicy { +func (r *GraphQLApi) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GraphQLApi) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppSyncGraphQLApi) MarshalJSON() ([]byte, error) { - type Properties AWSAppSyncGraphQLApi +func (r GraphQLApi) MarshalJSON() ([]byte, error) { + type Properties GraphQLApi return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSAppSyncGraphQLApi) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppSyncGraphQLApi) UnmarshalJSON(b []byte) error { - type Properties AWSAppSyncGraphQLApi +func (r *GraphQLApi) UnmarshalJSON(b []byte) error { + type Properties GraphQLApi res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSAppSyncGraphQLApi) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppSyncGraphQLApi(*res.Properties) + *r = GraphQLApi(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationprovider.go b/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationprovider.go new file mode 100644 index 0000000000..d282eee02f --- /dev/null +++ b/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationprovider.go @@ -0,0 +1,75 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// GraphQLApi_AdditionalAuthenticationProvider AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.AdditionalAuthenticationProvider) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html +type GraphQLApi_AdditionalAuthenticationProvider struct { + + // AuthenticationType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-authenticationtype + AuthenticationType string `json:"AuthenticationType,omitempty"` + + // OpenIDConnectConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-openidconnectconfig + OpenIDConnectConfig *GraphQLApi_OpenIDConnectConfig `json:"OpenIDConnectConfig,omitempty"` + + // UserPoolConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-userpoolconfig + UserPoolConfig *GraphQLApi_CognitoUserPoolConfig `json:"UserPoolConfig,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *GraphQLApi_AdditionalAuthenticationProvider) AWSCloudFormationType() string { + return "AWS::AppSync::GraphQLApi.AdditionalAuthenticationProvider" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GraphQLApi_AdditionalAuthenticationProvider) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GraphQLApi_AdditionalAuthenticationProvider) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GraphQLApi_AdditionalAuthenticationProvider) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GraphQLApi_AdditionalAuthenticationProvider) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GraphQLApi_AdditionalAuthenticationProvider) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GraphQLApi_AdditionalAuthenticationProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationproviders.go b/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationproviders.go new file mode 100644 index 0000000000..7932b96945 --- /dev/null +++ b/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationproviders.go @@ -0,0 +1,60 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// GraphQLApi_AdditionalAuthenticationProviders AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.AdditionalAuthenticationProviders) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationproviders.html +type GraphQLApi_AdditionalAuthenticationProviders struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *GraphQLApi_AdditionalAuthenticationProviders) AWSCloudFormationType() string { + return "AWS::AppSync::GraphQLApi.AdditionalAuthenticationProviders" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GraphQLApi_AdditionalAuthenticationProviders) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GraphQLApi_AdditionalAuthenticationProviders) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GraphQLApi_AdditionalAuthenticationProviders) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GraphQLApi_AdditionalAuthenticationProviders) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GraphQLApi_AdditionalAuthenticationProviders) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GraphQLApi_AdditionalAuthenticationProviders) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appsync-graphqlapi_cognitouserpoolconfig.go b/cloudformation/appsync/aws-appsync-graphqlapi_cognitouserpoolconfig.go similarity index 75% rename from cloudformation/resources/aws-appsync-graphqlapi_cognitouserpoolconfig.go rename to cloudformation/appsync/aws-appsync-graphqlapi_cognitouserpoolconfig.go index 6246723afd..0fb016428b 100644 --- a/cloudformation/resources/aws-appsync-graphqlapi_cognitouserpoolconfig.go +++ b/cloudformation/appsync/aws-appsync-graphqlapi_cognitouserpoolconfig.go @@ -1,10 +1,12 @@ -package resources +package appsync -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppSyncGraphQLApi_CognitoUserPoolConfig AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.CognitoUserPoolConfig) +// GraphQLApi_CognitoUserPoolConfig AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.CognitoUserPoolConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html -type AWSAppSyncGraphQLApi_CognitoUserPoolConfig struct { +type GraphQLApi_CognitoUserPoolConfig struct { // AppIdClientRegex AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSAppSyncGraphQLApi_CognitoUserPoolConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_CognitoUserPoolConfig) AWSCloudFormationType() string { +func (r *GraphQLApi_CognitoUserPoolConfig) AWSCloudFormationType() string { return "AWS::AppSync::GraphQLApi.CognitoUserPoolConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_CognitoUserPoolConfig) DependsOn() []string { +func (r *GraphQLApi_CognitoUserPoolConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_CognitoUserPoolConfig) SetDependsOn(dependencies []string) { +func (r *GraphQLApi_CognitoUserPoolConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_CognitoUserPoolConfig) Metadata() map[string]interface{} { +func (r *GraphQLApi_CognitoUserPoolConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_CognitoUserPoolConfig) SetMetadata(metadata map[string]interface{}) { +func (r *GraphQLApi_CognitoUserPoolConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_CognitoUserPoolConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *GraphQLApi_CognitoUserPoolConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_CognitoUserPoolConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GraphQLApi_CognitoUserPoolConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appsync-graphqlapi_logconfig.go b/cloudformation/appsync/aws-appsync-graphqlapi_logconfig.go similarity index 77% rename from cloudformation/resources/aws-appsync-graphqlapi_logconfig.go rename to cloudformation/appsync/aws-appsync-graphqlapi_logconfig.go index ac21c81246..8f7ad3641a 100644 --- a/cloudformation/resources/aws-appsync-graphqlapi_logconfig.go +++ b/cloudformation/appsync/aws-appsync-graphqlapi_logconfig.go @@ -1,10 +1,12 @@ -package resources +package appsync -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppSyncGraphQLApi_LogConfig AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.LogConfig) +// GraphQLApi_LogConfig AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.LogConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html -type AWSAppSyncGraphQLApi_LogConfig struct { +type GraphQLApi_LogConfig struct { // CloudWatchLogsRoleArn AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSAppSyncGraphQLApi_LogConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_LogConfig) AWSCloudFormationType() string { +func (r *GraphQLApi_LogConfig) AWSCloudFormationType() string { return "AWS::AppSync::GraphQLApi.LogConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_LogConfig) DependsOn() []string { +func (r *GraphQLApi_LogConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_LogConfig) SetDependsOn(dependencies []string) { +func (r *GraphQLApi_LogConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_LogConfig) Metadata() map[string]interface{} { +func (r *GraphQLApi_LogConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_LogConfig) SetMetadata(metadata map[string]interface{}) { +func (r *GraphQLApi_LogConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_LogConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *GraphQLApi_LogConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_LogConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GraphQLApi_LogConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appsync-graphqlapi_openidconnectconfig.go b/cloudformation/appsync/aws-appsync-graphqlapi_openidconnectconfig.go similarity index 76% rename from cloudformation/resources/aws-appsync-graphqlapi_openidconnectconfig.go rename to cloudformation/appsync/aws-appsync-graphqlapi_openidconnectconfig.go index c87070543e..71ae83d3dc 100644 --- a/cloudformation/resources/aws-appsync-graphqlapi_openidconnectconfig.go +++ b/cloudformation/appsync/aws-appsync-graphqlapi_openidconnectconfig.go @@ -1,10 +1,12 @@ -package resources +package appsync -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppSyncGraphQLApi_OpenIDConnectConfig AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.OpenIDConnectConfig) +// GraphQLApi_OpenIDConnectConfig AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.OpenIDConnectConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html -type AWSAppSyncGraphQLApi_OpenIDConnectConfig struct { +type GraphQLApi_OpenIDConnectConfig struct { // AuthTTL AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSAppSyncGraphQLApi_OpenIDConnectConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_OpenIDConnectConfig) AWSCloudFormationType() string { +func (r *GraphQLApi_OpenIDConnectConfig) AWSCloudFormationType() string { return "AWS::AppSync::GraphQLApi.OpenIDConnectConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_OpenIDConnectConfig) DependsOn() []string { +func (r *GraphQLApi_OpenIDConnectConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_OpenIDConnectConfig) SetDependsOn(dependencies []string) { +func (r *GraphQLApi_OpenIDConnectConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_OpenIDConnectConfig) Metadata() map[string]interface{} { +func (r *GraphQLApi_OpenIDConnectConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_OpenIDConnectConfig) SetMetadata(metadata map[string]interface{}) { +func (r *GraphQLApi_OpenIDConnectConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_OpenIDConnectConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *GraphQLApi_OpenIDConnectConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_OpenIDConnectConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GraphQLApi_OpenIDConnectConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/appsync/aws-appsync-graphqlapi_tags.go b/cloudformation/appsync/aws-appsync-graphqlapi_tags.go new file mode 100644 index 0000000000..226e840b73 --- /dev/null +++ b/cloudformation/appsync/aws-appsync-graphqlapi_tags.go @@ -0,0 +1,60 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// GraphQLApi_Tags AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.Tags) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-tags.html +type GraphQLApi_Tags struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *GraphQLApi_Tags) AWSCloudFormationType() string { + return "AWS::AppSync::GraphQLApi.Tags" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GraphQLApi_Tags) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GraphQLApi_Tags) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GraphQLApi_Tags) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GraphQLApi_Tags) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GraphQLApi_Tags) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GraphQLApi_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-appsync-graphqlapi_userpoolconfig.go b/cloudformation/appsync/aws-appsync-graphqlapi_userpoolconfig.go similarity index 78% rename from cloudformation/resources/aws-appsync-graphqlapi_userpoolconfig.go rename to cloudformation/appsync/aws-appsync-graphqlapi_userpoolconfig.go index 69f9cdc887..779237f33f 100644 --- a/cloudformation/resources/aws-appsync-graphqlapi_userpoolconfig.go +++ b/cloudformation/appsync/aws-appsync-graphqlapi_userpoolconfig.go @@ -1,10 +1,12 @@ -package resources +package appsync -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppSyncGraphQLApi_UserPoolConfig AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.UserPoolConfig) +// GraphQLApi_UserPoolConfig AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.UserPoolConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html -type AWSAppSyncGraphQLApi_UserPoolConfig struct { +type GraphQLApi_UserPoolConfig struct { // AppIdClientRegex AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSAppSyncGraphQLApi_UserPoolConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_UserPoolConfig) AWSCloudFormationType() string { +func (r *GraphQLApi_UserPoolConfig) AWSCloudFormationType() string { return "AWS::AppSync::GraphQLApi.UserPoolConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_UserPoolConfig) DependsOn() []string { +func (r *GraphQLApi_UserPoolConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_UserPoolConfig) SetDependsOn(dependencies []string) { +func (r *GraphQLApi_UserPoolConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_UserPoolConfig) Metadata() map[string]interface{} { +func (r *GraphQLApi_UserPoolConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_UserPoolConfig) SetMetadata(metadata map[string]interface{}) { +func (r *GraphQLApi_UserPoolConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_UserPoolConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *GraphQLApi_UserPoolConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_UserPoolConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GraphQLApi_UserPoolConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appsync-graphqlschema.go b/cloudformation/appsync/aws-appsync-graphqlschema.go similarity index 80% rename from cloudformation/resources/aws-appsync-graphqlschema.go rename to cloudformation/appsync/aws-appsync-graphqlschema.go index 1d79782d3b..e81eb49ca9 100644 --- a/cloudformation/resources/aws-appsync-graphqlschema.go +++ b/cloudformation/appsync/aws-appsync-graphqlschema.go @@ -1,15 +1,16 @@ -package resources +package appsync import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppSyncGraphQLSchema AWS CloudFormation Resource (AWS::AppSync::GraphQLSchema) +// GraphQLSchema AWS CloudFormation Resource (AWS::AppSync::GraphQLSchema) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html -type AWSAppSyncGraphQLSchema struct { +type GraphQLSchema struct { // ApiId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSAppSyncGraphQLSchema struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLSchema) AWSCloudFormationType() string { +func (r *GraphQLSchema) AWSCloudFormationType() string { return "AWS::AppSync::GraphQLSchema" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLSchema) DependsOn() []string { +func (r *GraphQLSchema) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLSchema) SetDependsOn(dependencies []string) { +func (r *GraphQLSchema) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLSchema) Metadata() map[string]interface{} { +func (r *GraphQLSchema) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLSchema) SetMetadata(metadata map[string]interface{}) { +func (r *GraphQLSchema) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLSchema) DeletionPolicy() policies.DeletionPolicy { +func (r *GraphQLSchema) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GraphQLSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppSyncGraphQLSchema) MarshalJSON() ([]byte, error) { - type Properties AWSAppSyncGraphQLSchema +func (r GraphQLSchema) MarshalJSON() ([]byte, error) { + type Properties GraphQLSchema return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSAppSyncGraphQLSchema) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppSyncGraphQLSchema) UnmarshalJSON(b []byte) error { - type Properties AWSAppSyncGraphQLSchema +func (r *GraphQLSchema) UnmarshalJSON(b []byte) error { + type Properties GraphQLSchema res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSAppSyncGraphQLSchema) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppSyncGraphQLSchema(*res.Properties) + *r = GraphQLSchema(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-appsync-resolver.go b/cloudformation/appsync/aws-appsync-resolver.go similarity index 85% rename from cloudformation/resources/aws-appsync-resolver.go rename to cloudformation/appsync/aws-appsync-resolver.go index 4ee3e384ad..f5bc32f8c8 100644 --- a/cloudformation/resources/aws-appsync-resolver.go +++ b/cloudformation/appsync/aws-appsync-resolver.go @@ -1,15 +1,16 @@ -package resources +package appsync import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAppSyncResolver AWS CloudFormation Resource (AWS::AppSync::Resolver) +// Resolver AWS CloudFormation Resource (AWS::AppSync::Resolver) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html -type AWSAppSyncResolver struct { +type Resolver struct { // ApiId AWS CloudFormation Property // Required: true @@ -34,7 +35,7 @@ type AWSAppSyncResolver struct { // PipelineConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-pipelineconfig - PipelineConfig *AWSAppSyncResolver_PipelineConfig `json:"PipelineConfig,omitempty"` + PipelineConfig *Resolver_PipelineConfig `json:"PipelineConfig,omitempty"` // RequestMappingTemplate AWS CloudFormation Property // Required: false @@ -72,50 +73,50 @@ type AWSAppSyncResolver struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncResolver) AWSCloudFormationType() string { +func (r *Resolver) AWSCloudFormationType() string { return "AWS::AppSync::Resolver" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncResolver) DependsOn() []string { +func (r *Resolver) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncResolver) SetDependsOn(dependencies []string) { +func (r *Resolver) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncResolver) Metadata() map[string]interface{} { +func (r *Resolver) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncResolver) SetMetadata(metadata map[string]interface{}) { +func (r *Resolver) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncResolver) DeletionPolicy() policies.DeletionPolicy { +func (r *Resolver) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncResolver) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Resolver) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAppSyncResolver) MarshalJSON() ([]byte, error) { - type Properties AWSAppSyncResolver +func (r Resolver) MarshalJSON() ([]byte, error) { + type Properties Resolver return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSAppSyncResolver) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAppSyncResolver) UnmarshalJSON(b []byte) error { - type Properties AWSAppSyncResolver +func (r *Resolver) UnmarshalJSON(b []byte) error { + type Properties Resolver res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSAppSyncResolver) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAppSyncResolver(*res.Properties) + *r = Resolver(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/appsync/aws-appsync-resolver_pipelineconfig.go b/cloudformation/appsync/aws-appsync-resolver_pipelineconfig.go new file mode 100644 index 0000000000..1121e0be40 --- /dev/null +++ b/cloudformation/appsync/aws-appsync-resolver_pipelineconfig.go @@ -0,0 +1,65 @@ +package appsync + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Resolver_PipelineConfig AWS CloudFormation Resource (AWS::AppSync::Resolver.PipelineConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-pipelineconfig.html +type Resolver_PipelineConfig struct { + + // Functions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-pipelineconfig.html#cfn-appsync-resolver-pipelineconfig-functions + Functions []string `json:"Functions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Resolver_PipelineConfig) AWSCloudFormationType() string { + return "AWS::AppSync::Resolver.PipelineConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Resolver_PipelineConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Resolver_PipelineConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Resolver_PipelineConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Resolver_PipelineConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Resolver_PipelineConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Resolver_PipelineConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/alexa-ask-skill.go b/cloudformation/ask/alexa-ask-skill.go similarity index 79% rename from cloudformation/resources/alexa-ask-skill.go rename to cloudformation/ask/alexa-ask-skill.go index 14bb925d34..1cdbbeb174 100644 --- a/cloudformation/resources/alexa-ask-skill.go +++ b/cloudformation/ask/alexa-ask-skill.go @@ -1,25 +1,26 @@ -package resources +package ask import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AlexaASKSkill AWS CloudFormation Resource (Alexa::ASK::Skill) +// Skill AWS CloudFormation Resource (Alexa::ASK::Skill) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html -type AlexaASKSkill struct { +type Skill struct { // AuthenticationConfiguration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html#cfn-ask-skill-authenticationconfiguration - AuthenticationConfiguration *AlexaASKSkill_AuthenticationConfiguration `json:"AuthenticationConfiguration,omitempty"` + AuthenticationConfiguration *Skill_AuthenticationConfiguration `json:"AuthenticationConfiguration,omitempty"` // SkillPackage AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html#cfn-ask-skill-skillpackage - SkillPackage *AlexaASKSkill_SkillPackage `json:"SkillPackage,omitempty"` + SkillPackage *Skill_SkillPackage `json:"SkillPackage,omitempty"` // VendorId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AlexaASKSkill struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AlexaASKSkill) AWSCloudFormationType() string { +func (r *Skill) AWSCloudFormationType() string { return "Alexa::ASK::Skill" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AlexaASKSkill) DependsOn() []string { +func (r *Skill) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AlexaASKSkill) SetDependsOn(dependencies []string) { +func (r *Skill) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AlexaASKSkill) Metadata() map[string]interface{} { +func (r *Skill) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AlexaASKSkill) SetMetadata(metadata map[string]interface{}) { +func (r *Skill) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AlexaASKSkill) DeletionPolicy() policies.DeletionPolicy { +func (r *Skill) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AlexaASKSkill) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Skill) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AlexaASKSkill) MarshalJSON() ([]byte, error) { - type Properties AlexaASKSkill +func (r Skill) MarshalJSON() ([]byte, error) { + type Properties Skill return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AlexaASKSkill) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AlexaASKSkill) UnmarshalJSON(b []byte) error { - type Properties AlexaASKSkill +func (r *Skill) UnmarshalJSON(b []byte) error { + type Properties Skill res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AlexaASKSkill) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AlexaASKSkill(*res.Properties) + *r = Skill(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/alexa-ask-skill_authenticationconfiguration.go b/cloudformation/ask/alexa-ask-skill_authenticationconfiguration.go similarity index 75% rename from cloudformation/resources/alexa-ask-skill_authenticationconfiguration.go rename to cloudformation/ask/alexa-ask-skill_authenticationconfiguration.go index 155f84839a..25bacc31f3 100644 --- a/cloudformation/resources/alexa-ask-skill_authenticationconfiguration.go +++ b/cloudformation/ask/alexa-ask-skill_authenticationconfiguration.go @@ -1,10 +1,12 @@ -package resources +package ask -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AlexaASKSkill_AuthenticationConfiguration AWS CloudFormation Resource (Alexa::ASK::Skill.AuthenticationConfiguration) +// Skill_AuthenticationConfiguration AWS CloudFormation Resource (Alexa::ASK::Skill.AuthenticationConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html -type AlexaASKSkill_AuthenticationConfiguration struct { +type Skill_AuthenticationConfiguration struct { // ClientId AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AlexaASKSkill_AuthenticationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AlexaASKSkill_AuthenticationConfiguration) AWSCloudFormationType() string { +func (r *Skill_AuthenticationConfiguration) AWSCloudFormationType() string { return "Alexa::ASK::Skill.AuthenticationConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AlexaASKSkill_AuthenticationConfiguration) DependsOn() []string { +func (r *Skill_AuthenticationConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AlexaASKSkill_AuthenticationConfiguration) SetDependsOn(dependencies []string) { +func (r *Skill_AuthenticationConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AlexaASKSkill_AuthenticationConfiguration) Metadata() map[string]interface{} { +func (r *Skill_AuthenticationConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AlexaASKSkill_AuthenticationConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Skill_AuthenticationConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AlexaASKSkill_AuthenticationConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Skill_AuthenticationConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AlexaASKSkill_AuthenticationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Skill_AuthenticationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ask/alexa-ask-skill_overrides.go b/cloudformation/ask/alexa-ask-skill_overrides.go new file mode 100644 index 0000000000..e10e7e6a69 --- /dev/null +++ b/cloudformation/ask/alexa-ask-skill_overrides.go @@ -0,0 +1,65 @@ +package ask + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Skill_Overrides AWS CloudFormation Resource (Alexa::ASK::Skill.Overrides) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html +type Skill_Overrides struct { + + // Manifest AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html#cfn-ask-skill-overrides-manifest + Manifest interface{} `json:"Manifest,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Skill_Overrides) AWSCloudFormationType() string { + return "Alexa::ASK::Skill.Overrides" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Skill_Overrides) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Skill_Overrides) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Skill_Overrides) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Skill_Overrides) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Skill_Overrides) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Skill_Overrides) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/alexa-ask-skill_skillpackage.go b/cloudformation/ask/alexa-ask-skill_skillpackage.go similarity index 78% rename from cloudformation/resources/alexa-ask-skill_skillpackage.go rename to cloudformation/ask/alexa-ask-skill_skillpackage.go index f725cd97d3..9dbaba1c6e 100644 --- a/cloudformation/resources/alexa-ask-skill_skillpackage.go +++ b/cloudformation/ask/alexa-ask-skill_skillpackage.go @@ -1,15 +1,17 @@ -package resources +package ask -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AlexaASKSkill_SkillPackage AWS CloudFormation Resource (Alexa::ASK::Skill.SkillPackage) +// Skill_SkillPackage AWS CloudFormation Resource (Alexa::ASK::Skill.SkillPackage) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html -type AlexaASKSkill_SkillPackage struct { +type Skill_SkillPackage struct { // Overrides AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-overrides - Overrides *AlexaASKSkill_Overrides `json:"Overrides,omitempty"` + Overrides *Skill_Overrides `json:"Overrides,omitempty"` // S3Bucket AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AlexaASKSkill_SkillPackage struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AlexaASKSkill_SkillPackage) AWSCloudFormationType() string { +func (r *Skill_SkillPackage) AWSCloudFormationType() string { return "Alexa::ASK::Skill.SkillPackage" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AlexaASKSkill_SkillPackage) DependsOn() []string { +func (r *Skill_SkillPackage) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AlexaASKSkill_SkillPackage) SetDependsOn(dependencies []string) { +func (r *Skill_SkillPackage) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AlexaASKSkill_SkillPackage) Metadata() map[string]interface{} { +func (r *Skill_SkillPackage) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AlexaASKSkill_SkillPackage) SetMetadata(metadata map[string]interface{}) { +func (r *Skill_SkillPackage) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AlexaASKSkill_SkillPackage) DeletionPolicy() policies.DeletionPolicy { +func (r *Skill_SkillPackage) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AlexaASKSkill_SkillPackage) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Skill_SkillPackage) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-athena-namedquery.go b/cloudformation/athena/aws-athena-namedquery.go similarity index 82% rename from cloudformation/resources/aws-athena-namedquery.go rename to cloudformation/athena/aws-athena-namedquery.go index 6dcd5d2c2b..085a9ca602 100644 --- a/cloudformation/resources/aws-athena-namedquery.go +++ b/cloudformation/athena/aws-athena-namedquery.go @@ -1,15 +1,16 @@ -package resources +package athena import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAthenaNamedQuery AWS CloudFormation Resource (AWS::Athena::NamedQuery) +// NamedQuery AWS CloudFormation Resource (AWS::Athena::NamedQuery) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html -type AWSAthenaNamedQuery struct { +type NamedQuery struct { // Database AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSAthenaNamedQuery struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAthenaNamedQuery) AWSCloudFormationType() string { +func (r *NamedQuery) AWSCloudFormationType() string { return "AWS::Athena::NamedQuery" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAthenaNamedQuery) DependsOn() []string { +func (r *NamedQuery) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAthenaNamedQuery) SetDependsOn(dependencies []string) { +func (r *NamedQuery) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAthenaNamedQuery) Metadata() map[string]interface{} { +func (r *NamedQuery) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAthenaNamedQuery) SetMetadata(metadata map[string]interface{}) { +func (r *NamedQuery) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAthenaNamedQuery) DeletionPolicy() policies.DeletionPolicy { +func (r *NamedQuery) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAthenaNamedQuery) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NamedQuery) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAthenaNamedQuery) MarshalJSON() ([]byte, error) { - type Properties AWSAthenaNamedQuery +func (r NamedQuery) MarshalJSON() ([]byte, error) { + type Properties NamedQuery return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSAthenaNamedQuery) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAthenaNamedQuery) UnmarshalJSON(b []byte) error { - type Properties AWSAthenaNamedQuery +func (r *NamedQuery) UnmarshalJSON(b []byte) error { + type Properties NamedQuery res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSAthenaNamedQuery) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAthenaNamedQuery(*res.Properties) + *r = NamedQuery(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup.go similarity index 83% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup.go index b614bc9edd..694ea888fb 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup.go @@ -1,15 +1,16 @@ -package resources +package autoscaling import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAutoScalingAutoScalingGroup AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup) +// AutoScalingGroup AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html -type AWSAutoScalingAutoScalingGroup struct { +type AutoScalingGroup struct { // AutoScalingGroupName AWS CloudFormation Property // Required: false @@ -54,12 +55,12 @@ type AWSAutoScalingAutoScalingGroup struct { // LaunchTemplate AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-launchtemplate - LaunchTemplate *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification `json:"LaunchTemplate,omitempty"` + LaunchTemplate *AutoScalingGroup_LaunchTemplateSpecification `json:"LaunchTemplate,omitempty"` // LifecycleHookSpecificationList AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecificationlist - LifecycleHookSpecificationList []AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification `json:"LifecycleHookSpecificationList,omitempty"` + LifecycleHookSpecificationList []AutoScalingGroup_LifecycleHookSpecification `json:"LifecycleHookSpecificationList,omitempty"` // LoadBalancerNames AWS CloudFormation Property // Required: false @@ -74,7 +75,7 @@ type AWSAutoScalingAutoScalingGroup struct { // MetricsCollection AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-metricscollection - MetricsCollection []AWSAutoScalingAutoScalingGroup_MetricsCollection `json:"MetricsCollection,omitempty"` + MetricsCollection []AutoScalingGroup_MetricsCollection `json:"MetricsCollection,omitempty"` // MinSize AWS CloudFormation Property // Required: true @@ -84,12 +85,12 @@ type AWSAutoScalingAutoScalingGroup struct { // MixedInstancesPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-mixedinstancespolicy - MixedInstancesPolicy *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy `json:"MixedInstancesPolicy,omitempty"` + MixedInstancesPolicy *AutoScalingGroup_MixedInstancesPolicy `json:"MixedInstancesPolicy,omitempty"` // NotificationConfigurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-notificationconfigurations - NotificationConfigurations []AWSAutoScalingAutoScalingGroup_NotificationConfiguration `json:"NotificationConfigurations,omitempty"` + NotificationConfigurations []AutoScalingGroup_NotificationConfiguration `json:"NotificationConfigurations,omitempty"` // PlacementGroup AWS CloudFormation Property // Required: false @@ -104,7 +105,7 @@ type AWSAutoScalingAutoScalingGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-tags - Tags []AWSAutoScalingAutoScalingGroup_TagProperty `json:"Tags,omitempty"` + Tags []AutoScalingGroup_TagProperty `json:"Tags,omitempty"` // TargetGroupARNs AWS CloudFormation Property // Required: false @@ -138,62 +139,62 @@ type AWSAutoScalingAutoScalingGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup) AWSCloudFormationType() string { +func (r *AutoScalingGroup) AWSCloudFormationType() string { return "AWS::AutoScaling::AutoScalingGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup) DependsOn() []string { +func (r *AutoScalingGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup) SetDependsOn(dependencies []string) { +func (r *AutoScalingGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup) Metadata() map[string]interface{} { +func (r *AutoScalingGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup) SetMetadata(metadata map[string]interface{}) { +func (r *AutoScalingGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *AutoScalingGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AutoScalingGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // SetUpdatePolicy applies an AWS CloudFormation UpdatePolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html -func (r *AWSAutoScalingAutoScalingGroup) SetUpdatePolicy(policy *policies.UpdatePolicy) { +func (r *AutoScalingGroup) SetUpdatePolicy(policy *policies.UpdatePolicy) { r._updatePolicy = policy } // SetCreationPolicy applies an AWS CloudFormation CreationPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html -func (r *AWSAutoScalingAutoScalingGroup) SetCreationPolicy(policy *policies.CreationPolicy) { +func (r *AutoScalingGroup) SetCreationPolicy(policy *policies.CreationPolicy) { r._creationPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAutoScalingAutoScalingGroup) MarshalJSON() ([]byte, error) { - type Properties AWSAutoScalingAutoScalingGroup +func (r AutoScalingGroup) MarshalJSON() ([]byte, error) { + type Properties AutoScalingGroup return json.Marshal(&struct { Type string Properties Properties @@ -215,8 +216,8 @@ func (r AWSAutoScalingAutoScalingGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAutoScalingAutoScalingGroup) UnmarshalJSON(b []byte) error { - type Properties AWSAutoScalingAutoScalingGroup +func (r *AutoScalingGroup) UnmarshalJSON(b []byte) error { + type Properties AutoScalingGroup res := &struct { Type string Properties *Properties @@ -235,7 +236,7 @@ func (r *AWSAutoScalingAutoScalingGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAutoScalingAutoScalingGroup(*res.Properties) + *r = AutoScalingGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_instancesdistribution.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_instancesdistribution.go similarity index 79% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_instancesdistribution.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_instancesdistribution.go index 640ae6f8bc..770a40f4d7 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_instancesdistribution.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_instancesdistribution.go @@ -1,10 +1,12 @@ -package resources +package autoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingAutoScalingGroup_InstancesDistribution AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.InstancesDistribution) +// AutoScalingGroup_InstancesDistribution AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.InstancesDistribution) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html -type AWSAutoScalingAutoScalingGroup_InstancesDistribution struct { +type AutoScalingGroup_InstancesDistribution struct { // OnDemandAllocationStrategy AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSAutoScalingAutoScalingGroup_InstancesDistribution struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_InstancesDistribution) AWSCloudFormationType() string { +func (r *AutoScalingGroup_InstancesDistribution) AWSCloudFormationType() string { return "AWS::AutoScaling::AutoScalingGroup.InstancesDistribution" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_InstancesDistribution) DependsOn() []string { +func (r *AutoScalingGroup_InstancesDistribution) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_InstancesDistribution) SetDependsOn(dependencies []string) { +func (r *AutoScalingGroup_InstancesDistribution) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_InstancesDistribution) Metadata() map[string]interface{} { +func (r *AutoScalingGroup_InstancesDistribution) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_InstancesDistribution) SetMetadata(metadata map[string]interface{}) { +func (r *AutoScalingGroup_InstancesDistribution) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_InstancesDistribution) DeletionPolicy() policies.DeletionPolicy { +func (r *AutoScalingGroup_InstancesDistribution) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_InstancesDistribution) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AutoScalingGroup_InstancesDistribution) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplate.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplate.go new file mode 100644 index 0000000000..eacd9b6e68 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplate.go @@ -0,0 +1,70 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AutoScalingGroup_LaunchTemplate AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplate) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html +type AutoScalingGroup_LaunchTemplate struct { + + // LaunchTemplateSpecification AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html#cfn-as-group-launchtemplate + LaunchTemplateSpecification *AutoScalingGroup_LaunchTemplateSpecification `json:"LaunchTemplateSpecification,omitempty"` + + // Overrides AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html#cfn-as-mixedinstancespolicy-overrides + Overrides []AutoScalingGroup_LaunchTemplateOverrides `json:"Overrides,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AutoScalingGroup_LaunchTemplate) AWSCloudFormationType() string { + return "AWS::AutoScaling::AutoScalingGroup.LaunchTemplate" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_LaunchTemplate) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_LaunchTemplate) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_LaunchTemplate) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_LaunchTemplate) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_LaunchTemplate) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_LaunchTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go new file mode 100644 index 0000000000..396307f4cc --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go @@ -0,0 +1,65 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AutoScalingGroup_LaunchTemplateOverrides AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplateOverrides) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html +type AutoScalingGroup_LaunchTemplateOverrides struct { + + // InstanceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html#cfn-autoscaling-autoscalinggroup-launchtemplateoverrides-instancetype + InstanceType string `json:"InstanceType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AutoScalingGroup_LaunchTemplateOverrides) AWSCloudFormationType() string { + return "AWS::AutoScaling::AutoScalingGroup.LaunchTemplateOverrides" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_LaunchTemplateOverrides) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_LaunchTemplateOverrides) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_LaunchTemplateOverrides) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_LaunchTemplateOverrides) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_LaunchTemplateOverrides) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_LaunchTemplateOverrides) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go new file mode 100644 index 0000000000..1740816f1c --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go @@ -0,0 +1,75 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AutoScalingGroup_LaunchTemplateSpecification AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplateSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html +type AutoScalingGroup_LaunchTemplateSpecification struct { + + // LaunchTemplateId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-launchtemplateid + LaunchTemplateId string `json:"LaunchTemplateId,omitempty"` + + // LaunchTemplateName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-launchtemplatename + LaunchTemplateName string `json:"LaunchTemplateName,omitempty"` + + // Version AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AutoScalingGroup_LaunchTemplateSpecification) AWSCloudFormationType() string { + return "AWS::AutoScaling::AutoScalingGroup.LaunchTemplateSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_LaunchTemplateSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_LaunchTemplateSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_LaunchTemplateSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_LaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_LaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_LaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_lifecyclehookspecification.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_lifecyclehookspecification.go similarity index 80% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_lifecyclehookspecification.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_lifecyclehookspecification.go index c1924756f3..7e846f061f 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_lifecyclehookspecification.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_lifecyclehookspecification.go @@ -1,10 +1,12 @@ -package resources +package autoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LifecycleHookSpecification) +// AutoScalingGroup_LifecycleHookSpecification AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LifecycleHookSpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html -type AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification struct { +type AutoScalingGroup_LifecycleHookSpecification struct { // DefaultResult AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification) AWSCloudFormationType() string { +func (r *AutoScalingGroup_LifecycleHookSpecification) AWSCloudFormationType() string { return "AWS::AutoScaling::AutoScalingGroup.LifecycleHookSpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification) DependsOn() []string { +func (r *AutoScalingGroup_LifecycleHookSpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification) SetDependsOn(dependencies []string) { +func (r *AutoScalingGroup_LifecycleHookSpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification) Metadata() map[string]interface{} { +func (r *AutoScalingGroup_LifecycleHookSpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification) SetMetadata(metadata map[string]interface{}) { +func (r *AutoScalingGroup_LifecycleHookSpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *AutoScalingGroup_LifecycleHookSpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_LifecycleHookSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AutoScalingGroup_LifecycleHookSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_metricscollection.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_metricscollection.go new file mode 100644 index 0000000000..49408274b9 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_metricscollection.go @@ -0,0 +1,70 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AutoScalingGroup_MetricsCollection AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.MetricsCollection) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html +type AutoScalingGroup_MetricsCollection struct { + + // Granularity AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-granularity + Granularity string `json:"Granularity,omitempty"` + + // Metrics AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-metrics + Metrics []string `json:"Metrics,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AutoScalingGroup_MetricsCollection) AWSCloudFormationType() string { + return "AWS::AutoScaling::AutoScalingGroup.MetricsCollection" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_MetricsCollection) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_MetricsCollection) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_MetricsCollection) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_MetricsCollection) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_MetricsCollection) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_MetricsCollection) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go new file mode 100644 index 0000000000..d0f83162a3 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go @@ -0,0 +1,70 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AutoScalingGroup_MixedInstancesPolicy AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.MixedInstancesPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html +type AutoScalingGroup_MixedInstancesPolicy struct { + + // InstancesDistribution AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html#cfn-as-mixedinstancespolicy-instancesdistribution + InstancesDistribution *AutoScalingGroup_InstancesDistribution `json:"InstancesDistribution,omitempty"` + + // LaunchTemplate AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html#cfn-as-mixedinstancespolicy-launchtemplate + LaunchTemplate *AutoScalingGroup_LaunchTemplate `json:"LaunchTemplate,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AutoScalingGroup_MixedInstancesPolicy) AWSCloudFormationType() string { + return "AWS::AutoScaling::AutoScalingGroup.MixedInstancesPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_MixedInstancesPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_MixedInstancesPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_MixedInstancesPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_MixedInstancesPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_MixedInstancesPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_MixedInstancesPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_notificationconfiguration.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_notificationconfiguration.go new file mode 100644 index 0000000000..f40a4ad9d5 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_notificationconfiguration.go @@ -0,0 +1,70 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AutoScalingGroup_NotificationConfiguration AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.NotificationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html +type AutoScalingGroup_NotificationConfiguration struct { + + // NotificationTypes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-as-group-notificationconfigurations-notificationtypes + NotificationTypes []string `json:"NotificationTypes,omitempty"` + + // TopicARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-autoscaling-autoscalinggroup-notificationconfigurations-topicarn + TopicARN string `json:"TopicARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AutoScalingGroup_NotificationConfiguration) AWSCloudFormationType() string { + return "AWS::AutoScaling::AutoScalingGroup.NotificationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_NotificationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_NotificationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_NotificationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_tagproperty.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_tagproperty.go new file mode 100644 index 0000000000..1bf1929cd0 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_tagproperty.go @@ -0,0 +1,75 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AutoScalingGroup_TagProperty AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.TagProperty) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html +type AutoScalingGroup_TagProperty struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Key + Key string `json:"Key,omitempty"` + + // PropagateAtLaunch AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-PropagateAtLaunch + PropagateAtLaunch bool `json:"PropagateAtLaunch"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AutoScalingGroup_TagProperty) AWSCloudFormationType() string { + return "AWS::AutoScaling::AutoScalingGroup.TagProperty" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_TagProperty) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AutoScalingGroup_TagProperty) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_TagProperty) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AutoScalingGroup_TagProperty) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_TagProperty) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AutoScalingGroup_TagProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-autoscaling-launchconfiguration.go b/cloudformation/autoscaling/aws-autoscaling-launchconfiguration.go similarity index 86% rename from cloudformation/resources/aws-autoscaling-launchconfiguration.go rename to cloudformation/autoscaling/aws-autoscaling-launchconfiguration.go index d50919c304..6c14fa261a 100644 --- a/cloudformation/resources/aws-autoscaling-launchconfiguration.go +++ b/cloudformation/autoscaling/aws-autoscaling-launchconfiguration.go @@ -1,15 +1,16 @@ -package resources +package autoscaling import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAutoScalingLaunchConfiguration AWS CloudFormation Resource (AWS::AutoScaling::LaunchConfiguration) +// LaunchConfiguration AWS CloudFormation Resource (AWS::AutoScaling::LaunchConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html -type AWSAutoScalingLaunchConfiguration struct { +type LaunchConfiguration struct { // AssociatePublicIpAddress AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSAutoScalingLaunchConfiguration struct { // BlockDeviceMappings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-blockdevicemappings - BlockDeviceMappings []AWSAutoScalingLaunchConfiguration_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` + BlockDeviceMappings []LaunchConfiguration_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` // ClassicLinkVPCId AWS CloudFormation Property // Required: false @@ -112,50 +113,50 @@ type AWSAutoScalingLaunchConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingLaunchConfiguration) AWSCloudFormationType() string { +func (r *LaunchConfiguration) AWSCloudFormationType() string { return "AWS::AutoScaling::LaunchConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingLaunchConfiguration) DependsOn() []string { +func (r *LaunchConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingLaunchConfiguration) SetDependsOn(dependencies []string) { +func (r *LaunchConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingLaunchConfiguration) Metadata() map[string]interface{} { +func (r *LaunchConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingLaunchConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingLaunchConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingLaunchConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAutoScalingLaunchConfiguration) MarshalJSON() ([]byte, error) { - type Properties AWSAutoScalingLaunchConfiguration +func (r LaunchConfiguration) MarshalJSON() ([]byte, error) { + type Properties LaunchConfiguration return json.Marshal(&struct { Type string Properties Properties @@ -173,8 +174,8 @@ func (r AWSAutoScalingLaunchConfiguration) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAutoScalingLaunchConfiguration) UnmarshalJSON(b []byte) error { - type Properties AWSAutoScalingLaunchConfiguration +func (r *LaunchConfiguration) UnmarshalJSON(b []byte) error { + type Properties LaunchConfiguration res := &struct { Type string Properties *Properties @@ -193,7 +194,7 @@ func (r *AWSAutoScalingLaunchConfiguration) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAutoScalingLaunchConfiguration(*res.Properties) + *r = LaunchConfiguration(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-autoscaling-launchconfiguration_blockdevice.go b/cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevice.go similarity index 78% rename from cloudformation/resources/aws-autoscaling-launchconfiguration_blockdevice.go rename to cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevice.go index 6ab05bcb7d..98b9734586 100644 --- a/cloudformation/resources/aws-autoscaling-launchconfiguration_blockdevice.go +++ b/cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevice.go @@ -1,10 +1,12 @@ -package resources +package autoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingLaunchConfiguration_BlockDevice AWS CloudFormation Resource (AWS::AutoScaling::LaunchConfiguration.BlockDevice) +// LaunchConfiguration_BlockDevice AWS CloudFormation Resource (AWS::AutoScaling::LaunchConfiguration.BlockDevice) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html -type AWSAutoScalingLaunchConfiguration_BlockDevice struct { +type LaunchConfiguration_BlockDevice struct { // DeleteOnTermination AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSAutoScalingLaunchConfiguration_BlockDevice struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingLaunchConfiguration_BlockDevice) AWSCloudFormationType() string { +func (r *LaunchConfiguration_BlockDevice) AWSCloudFormationType() string { return "AWS::AutoScaling::LaunchConfiguration.BlockDevice" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDevice) DependsOn() []string { +func (r *LaunchConfiguration_BlockDevice) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDevice) SetDependsOn(dependencies []string) { +func (r *LaunchConfiguration_BlockDevice) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDevice) Metadata() map[string]interface{} { +func (r *LaunchConfiguration_BlockDevice) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDevice) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchConfiguration_BlockDevice) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDevice) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchConfiguration_BlockDevice) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchConfiguration_BlockDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevicemapping.go b/cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevicemapping.go new file mode 100644 index 0000000000..fc50284262 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevicemapping.go @@ -0,0 +1,80 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchConfiguration_BlockDeviceMapping AWS CloudFormation Resource (AWS::AutoScaling::LaunchConfiguration.BlockDeviceMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html +type LaunchConfiguration_BlockDeviceMapping struct { + + // DeviceName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-devicename + DeviceName string `json:"DeviceName,omitempty"` + + // Ebs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-ebs + Ebs *LaunchConfiguration_BlockDevice `json:"Ebs,omitempty"` + + // NoDevice AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-nodevice + NoDevice bool `json:"NoDevice,omitempty"` + + // VirtualName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-virtualname + VirtualName string `json:"VirtualName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchConfiguration_BlockDeviceMapping) AWSCloudFormationType() string { + return "AWS::AutoScaling::LaunchConfiguration.BlockDeviceMapping" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchConfiguration_BlockDeviceMapping) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchConfiguration_BlockDeviceMapping) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchConfiguration_BlockDeviceMapping) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchConfiguration_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchConfiguration_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchConfiguration_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-autoscaling-lifecyclehook.go b/cloudformation/autoscaling/aws-autoscaling-lifecyclehook.go similarity index 84% rename from cloudformation/resources/aws-autoscaling-lifecyclehook.go rename to cloudformation/autoscaling/aws-autoscaling-lifecyclehook.go index 47b6b34591..3abb6b3031 100644 --- a/cloudformation/resources/aws-autoscaling-lifecyclehook.go +++ b/cloudformation/autoscaling/aws-autoscaling-lifecyclehook.go @@ -1,15 +1,16 @@ -package resources +package autoscaling import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAutoScalingLifecycleHook AWS CloudFormation Resource (AWS::AutoScaling::LifecycleHook) +// LifecycleHook AWS CloudFormation Resource (AWS::AutoScaling::LifecycleHook) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html -type AWSAutoScalingLifecycleHook struct { +type LifecycleHook struct { // AutoScalingGroupName AWS CloudFormation Property // Required: true @@ -62,50 +63,50 @@ type AWSAutoScalingLifecycleHook struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingLifecycleHook) AWSCloudFormationType() string { +func (r *LifecycleHook) AWSCloudFormationType() string { return "AWS::AutoScaling::LifecycleHook" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingLifecycleHook) DependsOn() []string { +func (r *LifecycleHook) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingLifecycleHook) SetDependsOn(dependencies []string) { +func (r *LifecycleHook) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingLifecycleHook) Metadata() map[string]interface{} { +func (r *LifecycleHook) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingLifecycleHook) SetMetadata(metadata map[string]interface{}) { +func (r *LifecycleHook) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingLifecycleHook) DeletionPolicy() policies.DeletionPolicy { +func (r *LifecycleHook) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingLifecycleHook) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LifecycleHook) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAutoScalingLifecycleHook) MarshalJSON() ([]byte, error) { - type Properties AWSAutoScalingLifecycleHook +func (r LifecycleHook) MarshalJSON() ([]byte, error) { + type Properties LifecycleHook return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSAutoScalingLifecycleHook) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAutoScalingLifecycleHook) UnmarshalJSON(b []byte) error { - type Properties AWSAutoScalingLifecycleHook +func (r *LifecycleHook) UnmarshalJSON(b []byte) error { + type Properties LifecycleHook res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSAutoScalingLifecycleHook) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAutoScalingLifecycleHook(*res.Properties) + *r = LifecycleHook(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-autoscaling-scalingpolicy.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy.go similarity index 82% rename from cloudformation/resources/aws-autoscaling-scalingpolicy.go rename to cloudformation/autoscaling/aws-autoscaling-scalingpolicy.go index da0128cee8..91c9e30200 100644 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy.go +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy.go @@ -1,15 +1,16 @@ -package resources +package autoscaling import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAutoScalingScalingPolicy AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy) +// ScalingPolicy AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html -type AWSAutoScalingScalingPolicy struct { +type ScalingPolicy struct { // AdjustmentType AWS CloudFormation Property // Required: false @@ -54,12 +55,12 @@ type AWSAutoScalingScalingPolicy struct { // StepAdjustments AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-stepadjustments - StepAdjustments []AWSAutoScalingScalingPolicy_StepAdjustment `json:"StepAdjustments,omitempty"` + StepAdjustments []ScalingPolicy_StepAdjustment `json:"StepAdjustments,omitempty"` // TargetTrackingConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration - TargetTrackingConfiguration *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration `json:"TargetTrackingConfiguration,omitempty"` + TargetTrackingConfiguration *ScalingPolicy_TargetTrackingConfiguration `json:"TargetTrackingConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -72,50 +73,50 @@ type AWSAutoScalingScalingPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy) AWSCloudFormationType() string { +func (r *ScalingPolicy) AWSCloudFormationType() string { return "AWS::AutoScaling::ScalingPolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy) DependsOn() []string { +func (r *ScalingPolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy) SetDependsOn(dependencies []string) { +func (r *ScalingPolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy) Metadata() map[string]interface{} { +func (r *ScalingPolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *ScalingPolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *ScalingPolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAutoScalingScalingPolicy) MarshalJSON() ([]byte, error) { - type Properties AWSAutoScalingScalingPolicy +func (r ScalingPolicy) MarshalJSON() ([]byte, error) { + type Properties ScalingPolicy return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSAutoScalingScalingPolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAutoScalingScalingPolicy) UnmarshalJSON(b []byte) error { - type Properties AWSAutoScalingScalingPolicy +func (r *ScalingPolicy) UnmarshalJSON(b []byte) error { + type Properties ScalingPolicy res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSAutoScalingScalingPolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAutoScalingScalingPolicy(*res.Properties) + *r = ScalingPolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go new file mode 100644 index 0000000000..82816ede4f --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go @@ -0,0 +1,85 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_CustomizedMetricSpecification AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html +type ScalingPolicy_CustomizedMetricSpecification struct { + + // Dimensions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-dimensions + Dimensions []ScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` + + // MetricName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-metricname + MetricName string `json:"MetricName,omitempty"` + + // Namespace AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-namespace + Namespace string `json:"Namespace,omitempty"` + + // Statistic AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-statistic + Statistic string `json:"Statistic,omitempty"` + + // Unit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-unit + Unit string `json:"Unit,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_CustomizedMetricSpecification) AWSCloudFormationType() string { + return "AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_CustomizedMetricSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_CustomizedMetricSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_CustomizedMetricSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_CustomizedMetricSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_CustomizedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_CustomizedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_metricdimension.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_metricdimension.go new file mode 100644 index 0000000000..3d1824a859 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_metricdimension.go @@ -0,0 +1,70 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_MetricDimension AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.MetricDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html +type ScalingPolicy_MetricDimension struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html#cfn-autoscaling-scalingpolicy-metricdimension-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html#cfn-autoscaling-scalingpolicy-metricdimension-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_MetricDimension) AWSCloudFormationType() string { + return "AWS::AutoScaling::ScalingPolicy.MetricDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_MetricDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_MetricDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_MetricDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_MetricDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_MetricDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go new file mode 100644 index 0000000000..587475dccf --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go @@ -0,0 +1,70 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_PredefinedMetricSpecification AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html +type ScalingPolicy_PredefinedMetricSpecification struct { + + // PredefinedMetricType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-autoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype + PredefinedMetricType string `json:"PredefinedMetricType,omitempty"` + + // ResourceLabel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-autoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel + ResourceLabel string `json:"ResourceLabel,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_PredefinedMetricSpecification) AWSCloudFormationType() string { + return "AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_PredefinedMetricSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_PredefinedMetricSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_PredefinedMetricSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_PredefinedMetricSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_PredefinedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_PredefinedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-autoscaling-scalingpolicy_stepadjustment.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_stepadjustment.go similarity index 75% rename from cloudformation/resources/aws-autoscaling-scalingpolicy_stepadjustment.go rename to cloudformation/autoscaling/aws-autoscaling-scalingpolicy_stepadjustment.go index 7adb9f68c4..a365c7b446 100644 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_stepadjustment.go +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_stepadjustment.go @@ -1,10 +1,12 @@ -package resources +package autoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingScalingPolicy_StepAdjustment AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.StepAdjustment) +// ScalingPolicy_StepAdjustment AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.StepAdjustment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html -type AWSAutoScalingScalingPolicy_StepAdjustment struct { +type ScalingPolicy_StepAdjustment struct { // MetricIntervalLowerBound AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSAutoScalingScalingPolicy_StepAdjustment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_StepAdjustment) AWSCloudFormationType() string { +func (r *ScalingPolicy_StepAdjustment) AWSCloudFormationType() string { return "AWS::AutoScaling::ScalingPolicy.StepAdjustment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_StepAdjustment) DependsOn() []string { +func (r *ScalingPolicy_StepAdjustment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_StepAdjustment) SetDependsOn(dependencies []string) { +func (r *ScalingPolicy_StepAdjustment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_StepAdjustment) Metadata() map[string]interface{} { +func (r *ScalingPolicy_StepAdjustment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_StepAdjustment) SetMetadata(metadata map[string]interface{}) { +func (r *ScalingPolicy_StepAdjustment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_StepAdjustment) DeletionPolicy() policies.DeletionPolicy { +func (r *ScalingPolicy_StepAdjustment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_StepAdjustment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy_StepAdjustment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go new file mode 100644 index 0000000000..b03407ca08 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go @@ -0,0 +1,80 @@ +package autoscaling + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPolicy_TargetTrackingConfiguration AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.TargetTrackingConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html +type ScalingPolicy_TargetTrackingConfiguration struct { + + // CustomizedMetricSpecification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-customizedmetricspecification + CustomizedMetricSpecification *ScalingPolicy_CustomizedMetricSpecification `json:"CustomizedMetricSpecification,omitempty"` + + // DisableScaleIn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-disablescalein + DisableScaleIn bool `json:"DisableScaleIn,omitempty"` + + // PredefinedMetricSpecification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-predefinedmetricspecification + PredefinedMetricSpecification *ScalingPolicy_PredefinedMetricSpecification `json:"PredefinedMetricSpecification,omitempty"` + + // TargetValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-targetvalue + TargetValue float64 `json:"TargetValue"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPolicy_TargetTrackingConfiguration) AWSCloudFormationType() string { + return "AWS::AutoScaling::ScalingPolicy.TargetTrackingConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_TargetTrackingConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPolicy_TargetTrackingConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_TargetTrackingConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPolicy_TargetTrackingConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_TargetTrackingConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPolicy_TargetTrackingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-autoscaling-scheduledaction.go b/cloudformation/autoscaling/aws-autoscaling-scheduledaction.go similarity index 82% rename from cloudformation/resources/aws-autoscaling-scheduledaction.go rename to cloudformation/autoscaling/aws-autoscaling-scheduledaction.go index b6dbd90631..fb20f54bd2 100644 --- a/cloudformation/resources/aws-autoscaling-scheduledaction.go +++ b/cloudformation/autoscaling/aws-autoscaling-scheduledaction.go @@ -1,15 +1,16 @@ -package resources +package autoscaling import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAutoScalingScheduledAction AWS CloudFormation Resource (AWS::AutoScaling::ScheduledAction) +// ScheduledAction AWS CloudFormation Resource (AWS::AutoScaling::ScheduledAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html -type AWSAutoScalingScheduledAction struct { +type ScheduledAction struct { // AutoScalingGroupName AWS CloudFormation Property // Required: true @@ -57,50 +58,50 @@ type AWSAutoScalingScheduledAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScheduledAction) AWSCloudFormationType() string { +func (r *ScheduledAction) AWSCloudFormationType() string { return "AWS::AutoScaling::ScheduledAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScheduledAction) DependsOn() []string { +func (r *ScheduledAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScheduledAction) SetDependsOn(dependencies []string) { +func (r *ScheduledAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScheduledAction) Metadata() map[string]interface{} { +func (r *ScheduledAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScheduledAction) SetMetadata(metadata map[string]interface{}) { +func (r *ScheduledAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScheduledAction) DeletionPolicy() policies.DeletionPolicy { +func (r *ScheduledAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScheduledAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScheduledAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAutoScalingScheduledAction) MarshalJSON() ([]byte, error) { - type Properties AWSAutoScalingScheduledAction +func (r ScheduledAction) MarshalJSON() ([]byte, error) { + type Properties ScheduledAction return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSAutoScalingScheduledAction) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAutoScalingScheduledAction) UnmarshalJSON(b []byte) error { - type Properties AWSAutoScalingScheduledAction +func (r *ScheduledAction) UnmarshalJSON(b []byte) error { + type Properties ScheduledAction res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSAutoScalingScheduledAction) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAutoScalingScheduledAction(*res.Properties) + *r = ScheduledAction(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan.go new file mode 100644 index 0000000000..cbe856ca50 --- /dev/null +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan.go @@ -0,0 +1,129 @@ +package autoscalingplans + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPlan AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html +type ScalingPlan struct { + + // ApplicationSource AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html#cfn-autoscalingplans-scalingplan-applicationsource + ApplicationSource *ScalingPlan_ApplicationSource `json:"ApplicationSource,omitempty"` + + // ScalingInstructions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html#cfn-autoscalingplans-scalingplan-scalinginstructions + ScalingInstructions []ScalingPlan_ScalingInstruction `json:"ScalingInstructions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPlan) AWSCloudFormationType() string { + return "AWS::AutoScalingPlans::ScalingPlan" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ScalingPlan) MarshalJSON() ([]byte, error) { + type Properties ScalingPlan + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *ScalingPlan) UnmarshalJSON(b []byte) error { + type Properties ScalingPlan + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = ScalingPlan(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_applicationsource.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_applicationsource.go new file mode 100644 index 0000000000..510020e66c --- /dev/null +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_applicationsource.go @@ -0,0 +1,70 @@ +package autoscalingplans + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPlan_ApplicationSource AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.ApplicationSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html +type ScalingPlan_ApplicationSource struct { + + // CloudFormationStackARN AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html#cfn-autoscalingplans-scalingplan-applicationsource-cloudformationstackarn + CloudFormationStackARN string `json:"CloudFormationStackARN,omitempty"` + + // TagFilters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html#cfn-autoscalingplans-scalingplan-applicationsource-tagfilters + TagFilters []ScalingPlan_TagFilter `json:"TagFilters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPlan_ApplicationSource) AWSCloudFormationType() string { + return "AWS::AutoScalingPlans::ScalingPlan.ApplicationSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_ApplicationSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_ApplicationSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_ApplicationSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_ApplicationSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_ApplicationSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_ApplicationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go new file mode 100644 index 0000000000..b77894dc26 --- /dev/null +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go @@ -0,0 +1,85 @@ +package autoscalingplans + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPlan_CustomizedLoadMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.CustomizedLoadMetricSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html +type ScalingPlan_CustomizedLoadMetricSpecification struct { + + // Dimensions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-dimensions + Dimensions []ScalingPlan_MetricDimension `json:"Dimensions,omitempty"` + + // MetricName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-metricname + MetricName string `json:"MetricName,omitempty"` + + // Namespace AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-namespace + Namespace string `json:"Namespace,omitempty"` + + // Statistic AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-statistic + Statistic string `json:"Statistic,omitempty"` + + // Unit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-unit + Unit string `json:"Unit,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPlan_CustomizedLoadMetricSpecification) AWSCloudFormationType() string { + return "AWS::AutoScalingPlans::ScalingPlan.CustomizedLoadMetricSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_CustomizedLoadMetricSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_CustomizedLoadMetricSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_CustomizedLoadMetricSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_CustomizedLoadMetricSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_CustomizedLoadMetricSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_CustomizedLoadMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go new file mode 100644 index 0000000000..e580bcffcc --- /dev/null +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go @@ -0,0 +1,85 @@ +package autoscalingplans + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPlan_CustomizedScalingMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.CustomizedScalingMetricSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html +type ScalingPlan_CustomizedScalingMetricSpecification struct { + + // Dimensions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-dimensions + Dimensions []ScalingPlan_MetricDimension `json:"Dimensions,omitempty"` + + // MetricName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-metricname + MetricName string `json:"MetricName,omitempty"` + + // Namespace AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-namespace + Namespace string `json:"Namespace,omitempty"` + + // Statistic AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-statistic + Statistic string `json:"Statistic,omitempty"` + + // Unit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-unit + Unit string `json:"Unit,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPlan_CustomizedScalingMetricSpecification) AWSCloudFormationType() string { + return "AWS::AutoScalingPlans::ScalingPlan.CustomizedScalingMetricSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_CustomizedScalingMetricSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_CustomizedScalingMetricSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_CustomizedScalingMetricSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_CustomizedScalingMetricSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_CustomizedScalingMetricSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_CustomizedScalingMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_metricdimension.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_metricdimension.go new file mode 100644 index 0000000000..accd19f43c --- /dev/null +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_metricdimension.go @@ -0,0 +1,70 @@ +package autoscalingplans + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPlan_MetricDimension AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.MetricDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html +type ScalingPlan_MetricDimension struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html#cfn-autoscalingplans-scalingplan-metricdimension-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html#cfn-autoscalingplans-scalingplan-metricdimension-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPlan_MetricDimension) AWSCloudFormationType() string { + return "AWS::AutoScalingPlans::ScalingPlan.MetricDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_MetricDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_MetricDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_MetricDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_MetricDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_MetricDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go new file mode 100644 index 0000000000..f808edd6f7 --- /dev/null +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go @@ -0,0 +1,70 @@ +package autoscalingplans + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPlan_PredefinedLoadMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.PredefinedLoadMetricSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html +type ScalingPlan_PredefinedLoadMetricSpecification struct { + + // PredefinedLoadMetricType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedloadmetricspecification-predefinedloadmetrictype + PredefinedLoadMetricType string `json:"PredefinedLoadMetricType,omitempty"` + + // ResourceLabel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedloadmetricspecification-resourcelabel + ResourceLabel string `json:"ResourceLabel,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPlan_PredefinedLoadMetricSpecification) AWSCloudFormationType() string { + return "AWS::AutoScalingPlans::ScalingPlan.PredefinedLoadMetricSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_PredefinedLoadMetricSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_PredefinedLoadMetricSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_PredefinedLoadMetricSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_PredefinedLoadMetricSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_PredefinedLoadMetricSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_PredefinedLoadMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go new file mode 100644 index 0000000000..6c5b58fdf6 --- /dev/null +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go @@ -0,0 +1,70 @@ +package autoscalingplans + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPlan_PredefinedScalingMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.PredefinedScalingMetricSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html +type ScalingPlan_PredefinedScalingMetricSpecification struct { + + // PredefinedScalingMetricType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedscalingmetricspecification-predefinedscalingmetrictype + PredefinedScalingMetricType string `json:"PredefinedScalingMetricType,omitempty"` + + // ResourceLabel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedscalingmetricspecification-resourcelabel + ResourceLabel string `json:"ResourceLabel,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPlan_PredefinedScalingMetricSpecification) AWSCloudFormationType() string { + return "AWS::AutoScalingPlans::ScalingPlan.PredefinedScalingMetricSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_PredefinedScalingMetricSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_PredefinedScalingMetricSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_PredefinedScalingMetricSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_PredefinedScalingMetricSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_PredefinedScalingMetricSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_PredefinedScalingMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_scalinginstruction.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_scalinginstruction.go similarity index 82% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_scalinginstruction.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_scalinginstruction.go index dc652c0c51..f5c54fcdd7 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_scalinginstruction.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_scalinginstruction.go @@ -1,15 +1,17 @@ -package resources +package autoscalingplans -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingPlansScalingPlan_ScalingInstruction AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction) +// ScalingPlan_ScalingInstruction AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html -type AWSAutoScalingPlansScalingPlan_ScalingInstruction struct { +type ScalingPlan_ScalingInstruction struct { // CustomizedLoadMetricSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-customizedloadmetricspecification - CustomizedLoadMetricSpecification *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification `json:"CustomizedLoadMetricSpecification,omitempty"` + CustomizedLoadMetricSpecification *ScalingPlan_CustomizedLoadMetricSpecification `json:"CustomizedLoadMetricSpecification,omitempty"` // DisableDynamicScaling AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSAutoScalingPlansScalingPlan_ScalingInstruction struct { // PredefinedLoadMetricSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predefinedloadmetricspecification - PredefinedLoadMetricSpecification *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification `json:"PredefinedLoadMetricSpecification,omitempty"` + PredefinedLoadMetricSpecification *ScalingPlan_PredefinedLoadMetricSpecification `json:"PredefinedLoadMetricSpecification,omitempty"` // PredictiveScalingMaxCapacityBehavior AWS CloudFormation Property // Required: false @@ -74,7 +76,7 @@ type AWSAutoScalingPlansScalingPlan_ScalingInstruction struct { // TargetTrackingConfigurations AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-targettrackingconfigurations - TargetTrackingConfigurations []AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration `json:"TargetTrackingConfigurations,omitempty"` + TargetTrackingConfigurations []ScalingPlan_TargetTrackingConfiguration `json:"TargetTrackingConfigurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -87,42 +89,42 @@ type AWSAutoScalingPlansScalingPlan_ScalingInstruction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_ScalingInstruction) AWSCloudFormationType() string { +func (r *ScalingPlan_ScalingInstruction) AWSCloudFormationType() string { return "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_ScalingInstruction) DependsOn() []string { +func (r *ScalingPlan_ScalingInstruction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_ScalingInstruction) SetDependsOn(dependencies []string) { +func (r *ScalingPlan_ScalingInstruction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_ScalingInstruction) Metadata() map[string]interface{} { +func (r *ScalingPlan_ScalingInstruction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_ScalingInstruction) SetMetadata(metadata map[string]interface{}) { +func (r *ScalingPlan_ScalingInstruction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_ScalingInstruction) DeletionPolicy() policies.DeletionPolicy { +func (r *ScalingPlan_ScalingInstruction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_ScalingInstruction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPlan_ScalingInstruction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_tagfilter.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_tagfilter.go new file mode 100644 index 0000000000..cb5f066cc8 --- /dev/null +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_tagfilter.go @@ -0,0 +1,70 @@ +package autoscalingplans + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ScalingPlan_TagFilter AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.TagFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html +type ScalingPlan_TagFilter struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html#cfn-autoscalingplans-scalingplan-tagfilter-key + Key string `json:"Key,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html#cfn-autoscalingplans-scalingplan-tagfilter-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ScalingPlan_TagFilter) AWSCloudFormationType() string { + return "AWS::AutoScalingPlans::ScalingPlan.TagFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_TagFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ScalingPlan_TagFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_TagFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ScalingPlan_TagFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_TagFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ScalingPlan_TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_targettrackingconfiguration.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_targettrackingconfiguration.go similarity index 75% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_targettrackingconfiguration.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_targettrackingconfiguration.go index c54cf4478f..d0996c6485 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_targettrackingconfiguration.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_targettrackingconfiguration.go @@ -1,15 +1,17 @@ -package resources +package autoscalingplans -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.TargetTrackingConfiguration) +// ScalingPlan_TargetTrackingConfiguration AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.TargetTrackingConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html -type AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration struct { +type ScalingPlan_TargetTrackingConfiguration struct { // CustomizedScalingMetricSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-customizedscalingmetricspecification - CustomizedScalingMetricSpecification *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification `json:"CustomizedScalingMetricSpecification,omitempty"` + CustomizedScalingMetricSpecification *ScalingPlan_CustomizedScalingMetricSpecification `json:"CustomizedScalingMetricSpecification,omitempty"` // DisableScaleIn AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration struct { // PredefinedScalingMetricSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-predefinedscalingmetricspecification - PredefinedScalingMetricSpecification *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification `json:"PredefinedScalingMetricSpecification,omitempty"` + PredefinedScalingMetricSpecification *ScalingPlan_PredefinedScalingMetricSpecification `json:"PredefinedScalingMetricSpecification,omitempty"` // ScaleInCooldown AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration) AWSCloudFormationType() string { +func (r *ScalingPlan_TargetTrackingConfiguration) AWSCloudFormationType() string { return "AWS::AutoScalingPlans::ScalingPlan.TargetTrackingConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration) DependsOn() []string { +func (r *ScalingPlan_TargetTrackingConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration) SetDependsOn(dependencies []string) { +func (r *ScalingPlan_TargetTrackingConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration) Metadata() map[string]interface{} { +func (r *ScalingPlan_TargetTrackingConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *ScalingPlan_TargetTrackingConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *ScalingPlan_TargetTrackingConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_TargetTrackingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPlan_TargetTrackingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-backup-backupplan.go b/cloudformation/backup/aws-backup-backupplan.go similarity index 79% rename from cloudformation/resources/aws-backup-backupplan.go rename to cloudformation/backup/aws-backup-backupplan.go index 3836b29cd9..2a12529fa4 100644 --- a/cloudformation/resources/aws-backup-backupplan.go +++ b/cloudformation/backup/aws-backup-backupplan.go @@ -1,20 +1,21 @@ -package resources +package backup import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSBackupBackupPlan AWS CloudFormation Resource (AWS::Backup::BackupPlan) +// BackupPlan AWS CloudFormation Resource (AWS::Backup::BackupPlan) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html -type AWSBackupBackupPlan struct { +type BackupPlan struct { // BackupPlan AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html#cfn-backup-backupplan-backupplan - BackupPlan *AWSBackupBackupPlan_BackupPlanResourceType `json:"BackupPlan,omitempty"` + BackupPlan *BackupPlan_BackupPlanResourceType `json:"BackupPlan,omitempty"` // BackupPlanTags AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSBackupBackupPlan struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupPlan) AWSCloudFormationType() string { +func (r *BackupPlan) AWSCloudFormationType() string { return "AWS::Backup::BackupPlan" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupPlan) DependsOn() []string { +func (r *BackupPlan) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupPlan) SetDependsOn(dependencies []string) { +func (r *BackupPlan) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupPlan) Metadata() map[string]interface{} { +func (r *BackupPlan) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupPlan) SetMetadata(metadata map[string]interface{}) { +func (r *BackupPlan) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupPlan) DeletionPolicy() policies.DeletionPolicy { +func (r *BackupPlan) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupPlan) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *BackupPlan) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSBackupBackupPlan) MarshalJSON() ([]byte, error) { - type Properties AWSBackupBackupPlan +func (r BackupPlan) MarshalJSON() ([]byte, error) { + type Properties BackupPlan return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSBackupBackupPlan) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSBackupBackupPlan) UnmarshalJSON(b []byte) error { - type Properties AWSBackupBackupPlan +func (r *BackupPlan) UnmarshalJSON(b []byte) error { + type Properties BackupPlan res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSBackupBackupPlan) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSBackupBackupPlan(*res.Properties) + *r = BackupPlan(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/backup/aws-backup-backupplan_backupplanresourcetype.go b/cloudformation/backup/aws-backup-backupplan_backupplanresourcetype.go new file mode 100644 index 0000000000..c87a3ae13c --- /dev/null +++ b/cloudformation/backup/aws-backup-backupplan_backupplanresourcetype.go @@ -0,0 +1,70 @@ +package backup + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// BackupPlan_BackupPlanResourceType AWS CloudFormation Resource (AWS::Backup::BackupPlan.BackupPlanResourceType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html +type BackupPlan_BackupPlanResourceType struct { + + // BackupPlanName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-backupplanname + BackupPlanName string `json:"BackupPlanName,omitempty"` + + // BackupPlanRule AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-backupplanrule + BackupPlanRule []BackupPlan_BackupRuleResourceType `json:"BackupPlanRule,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *BackupPlan_BackupPlanResourceType) AWSCloudFormationType() string { + return "AWS::Backup::BackupPlan.BackupPlanResourceType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupPlan_BackupPlanResourceType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupPlan_BackupPlanResourceType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupPlan_BackupPlanResourceType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupPlan_BackupPlanResourceType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupPlan_BackupPlanResourceType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupPlan_BackupPlanResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-backup-backupplan_backupruleresourcetype.go b/cloudformation/backup/aws-backup-backupplan_backupruleresourcetype.go similarity index 80% rename from cloudformation/resources/aws-backup-backupplan_backupruleresourcetype.go rename to cloudformation/backup/aws-backup-backupplan_backupruleresourcetype.go index ea0fb5a276..733cd066ae 100644 --- a/cloudformation/resources/aws-backup-backupplan_backupruleresourcetype.go +++ b/cloudformation/backup/aws-backup-backupplan_backupruleresourcetype.go @@ -1,10 +1,12 @@ -package resources +package backup -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBackupBackupPlan_BackupRuleResourceType AWS CloudFormation Resource (AWS::Backup::BackupPlan.BackupRuleResourceType) +// BackupPlan_BackupRuleResourceType AWS CloudFormation Resource (AWS::Backup::BackupPlan.BackupRuleResourceType) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html -type AWSBackupBackupPlan_BackupRuleResourceType struct { +type BackupPlan_BackupRuleResourceType struct { // CompletionWindowMinutes AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSBackupBackupPlan_BackupRuleResourceType struct { // Lifecycle AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-lifecycle - Lifecycle *AWSBackupBackupPlan_LifecycleResourceType `json:"Lifecycle,omitempty"` + Lifecycle *BackupPlan_LifecycleResourceType `json:"Lifecycle,omitempty"` // RecoveryPointTags AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSBackupBackupPlan_BackupRuleResourceType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupPlan_BackupRuleResourceType) AWSCloudFormationType() string { +func (r *BackupPlan_BackupRuleResourceType) AWSCloudFormationType() string { return "AWS::Backup::BackupPlan.BackupRuleResourceType" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupPlan_BackupRuleResourceType) DependsOn() []string { +func (r *BackupPlan_BackupRuleResourceType) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupPlan_BackupRuleResourceType) SetDependsOn(dependencies []string) { +func (r *BackupPlan_BackupRuleResourceType) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupPlan_BackupRuleResourceType) Metadata() map[string]interface{} { +func (r *BackupPlan_BackupRuleResourceType) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupPlan_BackupRuleResourceType) SetMetadata(metadata map[string]interface{}) { +func (r *BackupPlan_BackupRuleResourceType) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupPlan_BackupRuleResourceType) DeletionPolicy() policies.DeletionPolicy { +func (r *BackupPlan_BackupRuleResourceType) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupPlan_BackupRuleResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *BackupPlan_BackupRuleResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/backup/aws-backup-backupplan_lifecycleresourcetype.go b/cloudformation/backup/aws-backup-backupplan_lifecycleresourcetype.go new file mode 100644 index 0000000000..9e29e30a4c --- /dev/null +++ b/cloudformation/backup/aws-backup-backupplan_lifecycleresourcetype.go @@ -0,0 +1,70 @@ +package backup + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// BackupPlan_LifecycleResourceType AWS CloudFormation Resource (AWS::Backup::BackupPlan.LifecycleResourceType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html +type BackupPlan_LifecycleResourceType struct { + + // DeleteAfterDays AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html#cfn-backup-backupplan-lifecycleresourcetype-deleteafterdays + DeleteAfterDays float64 `json:"DeleteAfterDays,omitempty"` + + // MoveToColdStorageAfterDays AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html#cfn-backup-backupplan-lifecycleresourcetype-movetocoldstorageafterdays + MoveToColdStorageAfterDays float64 `json:"MoveToColdStorageAfterDays,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *BackupPlan_LifecycleResourceType) AWSCloudFormationType() string { + return "AWS::Backup::BackupPlan.LifecycleResourceType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupPlan_LifecycleResourceType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupPlan_LifecycleResourceType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupPlan_LifecycleResourceType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupPlan_LifecycleResourceType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupPlan_LifecycleResourceType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupPlan_LifecycleResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-backup-backupselection.go b/cloudformation/backup/aws-backup-backupselection.go similarity index 77% rename from cloudformation/resources/aws-backup-backupselection.go rename to cloudformation/backup/aws-backup-backupselection.go index 27618c4f09..577dfea902 100644 --- a/cloudformation/resources/aws-backup-backupselection.go +++ b/cloudformation/backup/aws-backup-backupselection.go @@ -1,15 +1,16 @@ -package resources +package backup import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSBackupBackupSelection AWS CloudFormation Resource (AWS::Backup::BackupSelection) +// BackupSelection AWS CloudFormation Resource (AWS::Backup::BackupSelection) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html -type AWSBackupBackupSelection struct { +type BackupSelection struct { // BackupPlanId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSBackupBackupSelection struct { // BackupSelection AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html#cfn-backup-backupselection-backupselection - BackupSelection *AWSBackupBackupSelection_BackupSelectionResourceType `json:"BackupSelection,omitempty"` + BackupSelection *BackupSelection_BackupSelectionResourceType `json:"BackupSelection,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSBackupBackupSelection struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupSelection) AWSCloudFormationType() string { +func (r *BackupSelection) AWSCloudFormationType() string { return "AWS::Backup::BackupSelection" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupSelection) DependsOn() []string { +func (r *BackupSelection) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupSelection) SetDependsOn(dependencies []string) { +func (r *BackupSelection) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupSelection) Metadata() map[string]interface{} { +func (r *BackupSelection) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupSelection) SetMetadata(metadata map[string]interface{}) { +func (r *BackupSelection) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupSelection) DeletionPolicy() policies.DeletionPolicy { +func (r *BackupSelection) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *BackupSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSBackupBackupSelection) MarshalJSON() ([]byte, error) { - type Properties AWSBackupBackupSelection +func (r BackupSelection) MarshalJSON() ([]byte, error) { + type Properties BackupSelection return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSBackupBackupSelection) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSBackupBackupSelection) UnmarshalJSON(b []byte) error { - type Properties AWSBackupBackupSelection +func (r *BackupSelection) UnmarshalJSON(b []byte) error { + type Properties BackupSelection res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSBackupBackupSelection) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSBackupBackupSelection(*res.Properties) + *r = BackupSelection(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/backup/aws-backup-backupselection_backupselectionresourcetype.go b/cloudformation/backup/aws-backup-backupselection_backupselectionresourcetype.go new file mode 100644 index 0000000000..1967562126 --- /dev/null +++ b/cloudformation/backup/aws-backup-backupselection_backupselectionresourcetype.go @@ -0,0 +1,80 @@ +package backup + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// BackupSelection_BackupSelectionResourceType AWS CloudFormation Resource (AWS::Backup::BackupSelection.BackupSelectionResourceType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html +type BackupSelection_BackupSelectionResourceType struct { + + // IamRoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-iamrolearn + IamRoleArn string `json:"IamRoleArn,omitempty"` + + // ListOfTags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-listoftags + ListOfTags []BackupSelection_ConditionResourceType `json:"ListOfTags,omitempty"` + + // Resources AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-resources + Resources []string `json:"Resources,omitempty"` + + // SelectionName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-selectionname + SelectionName string `json:"SelectionName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *BackupSelection_BackupSelectionResourceType) AWSCloudFormationType() string { + return "AWS::Backup::BackupSelection.BackupSelectionResourceType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupSelection_BackupSelectionResourceType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupSelection_BackupSelectionResourceType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupSelection_BackupSelectionResourceType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupSelection_BackupSelectionResourceType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupSelection_BackupSelectionResourceType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupSelection_BackupSelectionResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/backup/aws-backup-backupselection_conditionresourcetype.go b/cloudformation/backup/aws-backup-backupselection_conditionresourcetype.go new file mode 100644 index 0000000000..121209fc89 --- /dev/null +++ b/cloudformation/backup/aws-backup-backupselection_conditionresourcetype.go @@ -0,0 +1,75 @@ +package backup + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// BackupSelection_ConditionResourceType AWS CloudFormation Resource (AWS::Backup::BackupSelection.ConditionResourceType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html +type BackupSelection_ConditionResourceType struct { + + // ConditionKey AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditionkey + ConditionKey string `json:"ConditionKey,omitempty"` + + // ConditionType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditiontype + ConditionType string `json:"ConditionType,omitempty"` + + // ConditionValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditionvalue + ConditionValue string `json:"ConditionValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *BackupSelection_ConditionResourceType) AWSCloudFormationType() string { + return "AWS::Backup::BackupSelection.ConditionResourceType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupSelection_ConditionResourceType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupSelection_ConditionResourceType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupSelection_ConditionResourceType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupSelection_ConditionResourceType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupSelection_ConditionResourceType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupSelection_ConditionResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-backup-backupvault.go b/cloudformation/backup/aws-backup-backupvault.go similarity index 81% rename from cloudformation/resources/aws-backup-backupvault.go rename to cloudformation/backup/aws-backup-backupvault.go index 33a1c86aa7..48366470e4 100644 --- a/cloudformation/resources/aws-backup-backupvault.go +++ b/cloudformation/backup/aws-backup-backupvault.go @@ -1,15 +1,16 @@ -package resources +package backup import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSBackupBackupVault AWS CloudFormation Resource (AWS::Backup::BackupVault) +// BackupVault AWS CloudFormation Resource (AWS::Backup::BackupVault) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html -type AWSBackupBackupVault struct { +type BackupVault struct { // AccessPolicy AWS CloudFormation Property // Required: false @@ -34,7 +35,7 @@ type AWSBackupBackupVault struct { // Notifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-notifications - Notifications *AWSBackupBackupVault_NotificationObjectType `json:"Notifications,omitempty"` + Notifications *BackupVault_NotificationObjectType `json:"Notifications,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +48,50 @@ type AWSBackupBackupVault struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupVault) AWSCloudFormationType() string { +func (r *BackupVault) AWSCloudFormationType() string { return "AWS::Backup::BackupVault" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupVault) DependsOn() []string { +func (r *BackupVault) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupVault) SetDependsOn(dependencies []string) { +func (r *BackupVault) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupVault) Metadata() map[string]interface{} { +func (r *BackupVault) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupVault) SetMetadata(metadata map[string]interface{}) { +func (r *BackupVault) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupVault) DeletionPolicy() policies.DeletionPolicy { +func (r *BackupVault) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupVault) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *BackupVault) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSBackupBackupVault) MarshalJSON() ([]byte, error) { - type Properties AWSBackupBackupVault +func (r BackupVault) MarshalJSON() ([]byte, error) { + type Properties BackupVault return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSBackupBackupVault) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSBackupBackupVault) UnmarshalJSON(b []byte) error { - type Properties AWSBackupBackupVault +func (r *BackupVault) UnmarshalJSON(b []byte) error { + type Properties BackupVault res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSBackupBackupVault) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSBackupBackupVault(*res.Properties) + *r = BackupVault(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/backup/aws-backup-backupvault_notificationobjecttype.go b/cloudformation/backup/aws-backup-backupvault_notificationobjecttype.go new file mode 100644 index 0000000000..93611c5c1d --- /dev/null +++ b/cloudformation/backup/aws-backup-backupvault_notificationobjecttype.go @@ -0,0 +1,70 @@ +package backup + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// BackupVault_NotificationObjectType AWS CloudFormation Resource (AWS::Backup::BackupVault.NotificationObjectType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html +type BackupVault_NotificationObjectType struct { + + // BackupVaultEvents AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html#cfn-backup-backupvault-notificationobjecttype-backupvaultevents + BackupVaultEvents []string `json:"BackupVaultEvents,omitempty"` + + // SNSTopicArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html#cfn-backup-backupvault-notificationobjecttype-snstopicarn + SNSTopicArn string `json:"SNSTopicArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *BackupVault_NotificationObjectType) AWSCloudFormationType() string { + return "AWS::Backup::BackupVault.NotificationObjectType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupVault_NotificationObjectType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *BackupVault_NotificationObjectType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupVault_NotificationObjectType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *BackupVault_NotificationObjectType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupVault_NotificationObjectType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *BackupVault_NotificationObjectType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-batch-computeenvironment.go b/cloudformation/batch/aws-batch-computeenvironment.go similarity index 80% rename from cloudformation/resources/aws-batch-computeenvironment.go rename to cloudformation/batch/aws-batch-computeenvironment.go index f556e9f459..d481c363a1 100644 --- a/cloudformation/resources/aws-batch-computeenvironment.go +++ b/cloudformation/batch/aws-batch-computeenvironment.go @@ -1,15 +1,16 @@ -package resources +package batch import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSBatchComputeEnvironment AWS CloudFormation Resource (AWS::Batch::ComputeEnvironment) +// ComputeEnvironment AWS CloudFormation Resource (AWS::Batch::ComputeEnvironment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html -type AWSBatchComputeEnvironment struct { +type ComputeEnvironment struct { // ComputeEnvironmentName AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSBatchComputeEnvironment struct { // ComputeResources AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-computeresources - ComputeResources *AWSBatchComputeEnvironment_ComputeResources `json:"ComputeResources,omitempty"` + ComputeResources *ComputeEnvironment_ComputeResources `json:"ComputeResources,omitempty"` // ServiceRole AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSBatchComputeEnvironment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchComputeEnvironment) AWSCloudFormationType() string { +func (r *ComputeEnvironment) AWSCloudFormationType() string { return "AWS::Batch::ComputeEnvironment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchComputeEnvironment) DependsOn() []string { +func (r *ComputeEnvironment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchComputeEnvironment) SetDependsOn(dependencies []string) { +func (r *ComputeEnvironment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchComputeEnvironment) Metadata() map[string]interface{} { +func (r *ComputeEnvironment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchComputeEnvironment) SetMetadata(metadata map[string]interface{}) { +func (r *ComputeEnvironment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchComputeEnvironment) DeletionPolicy() policies.DeletionPolicy { +func (r *ComputeEnvironment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchComputeEnvironment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ComputeEnvironment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSBatchComputeEnvironment) MarshalJSON() ([]byte, error) { - type Properties AWSBatchComputeEnvironment +func (r ComputeEnvironment) MarshalJSON() ([]byte, error) { + type Properties ComputeEnvironment return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSBatchComputeEnvironment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSBatchComputeEnvironment) UnmarshalJSON(b []byte) error { - type Properties AWSBatchComputeEnvironment +func (r *ComputeEnvironment) UnmarshalJSON(b []byte) error { + type Properties ComputeEnvironment res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSBatchComputeEnvironment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSBatchComputeEnvironment(*res.Properties) + *r = ComputeEnvironment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-batch-computeenvironment_computeresources.go b/cloudformation/batch/aws-batch-computeenvironment_computeresources.go similarity index 86% rename from cloudformation/resources/aws-batch-computeenvironment_computeresources.go rename to cloudformation/batch/aws-batch-computeenvironment_computeresources.go index 4270ae71e5..f784224425 100644 --- a/cloudformation/resources/aws-batch-computeenvironment_computeresources.go +++ b/cloudformation/batch/aws-batch-computeenvironment_computeresources.go @@ -1,10 +1,12 @@ -package resources +package batch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBatchComputeEnvironment_ComputeResources AWS CloudFormation Resource (AWS::Batch::ComputeEnvironment.ComputeResources) +// ComputeEnvironment_ComputeResources AWS CloudFormation Resource (AWS::Batch::ComputeEnvironment.ComputeResources) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html -type AWSBatchComputeEnvironment_ComputeResources struct { +type ComputeEnvironment_ComputeResources struct { // AllocationStrategy AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSBatchComputeEnvironment_ComputeResources struct { // LaunchTemplate AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-launchtemplate - LaunchTemplate *AWSBatchComputeEnvironment_LaunchTemplateSpecification `json:"LaunchTemplate,omitempty"` + LaunchTemplate *ComputeEnvironment_LaunchTemplateSpecification `json:"LaunchTemplate,omitempty"` // MaxvCpus AWS CloudFormation Property // Required: true @@ -97,42 +99,42 @@ type AWSBatchComputeEnvironment_ComputeResources struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchComputeEnvironment_ComputeResources) AWSCloudFormationType() string { +func (r *ComputeEnvironment_ComputeResources) AWSCloudFormationType() string { return "AWS::Batch::ComputeEnvironment.ComputeResources" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchComputeEnvironment_ComputeResources) DependsOn() []string { +func (r *ComputeEnvironment_ComputeResources) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchComputeEnvironment_ComputeResources) SetDependsOn(dependencies []string) { +func (r *ComputeEnvironment_ComputeResources) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchComputeEnvironment_ComputeResources) Metadata() map[string]interface{} { +func (r *ComputeEnvironment_ComputeResources) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchComputeEnvironment_ComputeResources) SetMetadata(metadata map[string]interface{}) { +func (r *ComputeEnvironment_ComputeResources) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchComputeEnvironment_ComputeResources) DeletionPolicy() policies.DeletionPolicy { +func (r *ComputeEnvironment_ComputeResources) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchComputeEnvironment_ComputeResources) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ComputeEnvironment_ComputeResources) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/batch/aws-batch-computeenvironment_launchtemplatespecification.go b/cloudformation/batch/aws-batch-computeenvironment_launchtemplatespecification.go new file mode 100644 index 0000000000..4042da7b22 --- /dev/null +++ b/cloudformation/batch/aws-batch-computeenvironment_launchtemplatespecification.go @@ -0,0 +1,75 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ComputeEnvironment_LaunchTemplateSpecification AWS CloudFormation Resource (AWS::Batch::ComputeEnvironment.LaunchTemplateSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html +type ComputeEnvironment_LaunchTemplateSpecification struct { + + // LaunchTemplateId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-launchtemplateid + LaunchTemplateId string `json:"LaunchTemplateId,omitempty"` + + // LaunchTemplateName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-launchtemplatename + LaunchTemplateName string `json:"LaunchTemplateName,omitempty"` + + // Version AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ComputeEnvironment_LaunchTemplateSpecification) AWSCloudFormationType() string { + return "AWS::Batch::ComputeEnvironment.LaunchTemplateSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ComputeEnvironment_LaunchTemplateSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ComputeEnvironment_LaunchTemplateSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ComputeEnvironment_LaunchTemplateSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ComputeEnvironment_LaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ComputeEnvironment_LaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ComputeEnvironment_LaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-batch-jobdefinition.go b/cloudformation/batch/aws-batch-jobdefinition.go similarity index 79% rename from cloudformation/resources/aws-batch-jobdefinition.go rename to cloudformation/batch/aws-batch-jobdefinition.go index 1b8779bc63..e961c5340a 100644 --- a/cloudformation/resources/aws-batch-jobdefinition.go +++ b/cloudformation/batch/aws-batch-jobdefinition.go @@ -1,20 +1,21 @@ -package resources +package batch import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSBatchJobDefinition AWS CloudFormation Resource (AWS::Batch::JobDefinition) +// JobDefinition AWS CloudFormation Resource (AWS::Batch::JobDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html -type AWSBatchJobDefinition struct { +type JobDefinition struct { // ContainerProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-containerproperties - ContainerProperties *AWSBatchJobDefinition_ContainerProperties `json:"ContainerProperties,omitempty"` + ContainerProperties *JobDefinition_ContainerProperties `json:"ContainerProperties,omitempty"` // JobDefinitionName AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSBatchJobDefinition struct { // NodeProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-nodeproperties - NodeProperties *AWSBatchJobDefinition_NodeProperties `json:"NodeProperties,omitempty"` + NodeProperties *JobDefinition_NodeProperties `json:"NodeProperties,omitempty"` // Parameters AWS CloudFormation Property // Required: false @@ -34,12 +35,12 @@ type AWSBatchJobDefinition struct { // RetryStrategy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-retrystrategy - RetryStrategy *AWSBatchJobDefinition_RetryStrategy `json:"RetryStrategy,omitempty"` + RetryStrategy *JobDefinition_RetryStrategy `json:"RetryStrategy,omitempty"` // Timeout AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-timeout - Timeout *AWSBatchJobDefinition_Timeout `json:"Timeout,omitempty"` + Timeout *JobDefinition_Timeout `json:"Timeout,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -57,50 +58,50 @@ type AWSBatchJobDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition) AWSCloudFormationType() string { +func (r *JobDefinition) AWSCloudFormationType() string { return "AWS::Batch::JobDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition) DependsOn() []string { +func (r *JobDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition) SetDependsOn(dependencies []string) { +func (r *JobDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition) Metadata() map[string]interface{} { +func (r *JobDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *JobDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *JobDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSBatchJobDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSBatchJobDefinition +func (r JobDefinition) MarshalJSON() ([]byte, error) { + type Properties JobDefinition return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSBatchJobDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSBatchJobDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSBatchJobDefinition +func (r *JobDefinition) UnmarshalJSON(b []byte) error { + type Properties JobDefinition res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSBatchJobDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSBatchJobDefinition(*res.Properties) + *r = JobDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-batch-jobdefinition_containerproperties.go b/cloudformation/batch/aws-batch-jobdefinition_containerproperties.go similarity index 81% rename from cloudformation/resources/aws-batch-jobdefinition_containerproperties.go rename to cloudformation/batch/aws-batch-jobdefinition_containerproperties.go index 013f3f4eda..e5bd1682fd 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_containerproperties.go +++ b/cloudformation/batch/aws-batch-jobdefinition_containerproperties.go @@ -1,10 +1,12 @@ -package resources +package batch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBatchJobDefinition_ContainerProperties AWS CloudFormation Resource (AWS::Batch::JobDefinition.ContainerProperties) +// JobDefinition_ContainerProperties AWS CloudFormation Resource (AWS::Batch::JobDefinition.ContainerProperties) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html -type AWSBatchJobDefinition_ContainerProperties struct { +type JobDefinition_ContainerProperties struct { // Command AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSBatchJobDefinition_ContainerProperties struct { // Environment AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-environment - Environment []AWSBatchJobDefinition_Environment `json:"Environment,omitempty"` + Environment []JobDefinition_Environment `json:"Environment,omitempty"` // Image AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSBatchJobDefinition_ContainerProperties struct { // LinuxParameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-linuxparameters - LinuxParameters *AWSBatchJobDefinition_LinuxParameters `json:"LinuxParameters,omitempty"` + LinuxParameters *JobDefinition_LinuxParameters `json:"LinuxParameters,omitempty"` // Memory AWS CloudFormation Property // Required: true @@ -44,7 +46,7 @@ type AWSBatchJobDefinition_ContainerProperties struct { // MountPoints AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-mountpoints - MountPoints []AWSBatchJobDefinition_MountPoints `json:"MountPoints,omitempty"` + MountPoints []JobDefinition_MountPoints `json:"MountPoints,omitempty"` // Privileged AWS CloudFormation Property // Required: false @@ -59,12 +61,12 @@ type AWSBatchJobDefinition_ContainerProperties struct { // ResourceRequirements AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-resourcerequirements - ResourceRequirements []AWSBatchJobDefinition_ResourceRequirement `json:"ResourceRequirements,omitempty"` + ResourceRequirements []JobDefinition_ResourceRequirement `json:"ResourceRequirements,omitempty"` // Ulimits AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-ulimits - Ulimits []AWSBatchJobDefinition_Ulimit `json:"Ulimits,omitempty"` + Ulimits []JobDefinition_Ulimit `json:"Ulimits,omitempty"` // User AWS CloudFormation Property // Required: false @@ -79,7 +81,7 @@ type AWSBatchJobDefinition_ContainerProperties struct { // Volumes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-volumes - Volumes []AWSBatchJobDefinition_Volumes `json:"Volumes,omitempty"` + Volumes []JobDefinition_Volumes `json:"Volumes,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -92,42 +94,42 @@ type AWSBatchJobDefinition_ContainerProperties struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_ContainerProperties) AWSCloudFormationType() string { +func (r *JobDefinition_ContainerProperties) AWSCloudFormationType() string { return "AWS::Batch::JobDefinition.ContainerProperties" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_ContainerProperties) DependsOn() []string { +func (r *JobDefinition_ContainerProperties) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_ContainerProperties) SetDependsOn(dependencies []string) { +func (r *JobDefinition_ContainerProperties) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_ContainerProperties) Metadata() map[string]interface{} { +func (r *JobDefinition_ContainerProperties) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_ContainerProperties) SetMetadata(metadata map[string]interface{}) { +func (r *JobDefinition_ContainerProperties) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_ContainerProperties) DeletionPolicy() policies.DeletionPolicy { +func (r *JobDefinition_ContainerProperties) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_ContainerProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_ContainerProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-batch-jobdefinition_device.go b/cloudformation/batch/aws-batch-jobdefinition_device.go similarity index 77% rename from cloudformation/resources/aws-batch-jobdefinition_device.go rename to cloudformation/batch/aws-batch-jobdefinition_device.go index ae7edb149a..33c70f36af 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_device.go +++ b/cloudformation/batch/aws-batch-jobdefinition_device.go @@ -1,10 +1,12 @@ -package resources +package batch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBatchJobDefinition_Device AWS CloudFormation Resource (AWS::Batch::JobDefinition.Device) +// JobDefinition_Device AWS CloudFormation Resource (AWS::Batch::JobDefinition.Device) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html -type AWSBatchJobDefinition_Device struct { +type JobDefinition_Device struct { // ContainerPath AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSBatchJobDefinition_Device struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_Device) AWSCloudFormationType() string { +func (r *JobDefinition_Device) AWSCloudFormationType() string { return "AWS::Batch::JobDefinition.Device" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Device) DependsOn() []string { +func (r *JobDefinition_Device) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Device) SetDependsOn(dependencies []string) { +func (r *JobDefinition_Device) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Device) Metadata() map[string]interface{} { +func (r *JobDefinition_Device) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Device) SetMetadata(metadata map[string]interface{}) { +func (r *JobDefinition_Device) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Device) DeletionPolicy() policies.DeletionPolicy { +func (r *JobDefinition_Device) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Device) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_Device) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/batch/aws-batch-jobdefinition_environment.go b/cloudformation/batch/aws-batch-jobdefinition_environment.go new file mode 100644 index 0000000000..5de2ac8a45 --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_environment.go @@ -0,0 +1,70 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_Environment AWS CloudFormation Resource (AWS::Batch::JobDefinition.Environment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html +type JobDefinition_Environment struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html#cfn-batch-jobdefinition-environment-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html#cfn-batch-jobdefinition-environment-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_Environment) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.Environment" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_Environment) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_Environment) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_Environment) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_Environment) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_Environment) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go b/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go new file mode 100644 index 0000000000..8451fa1c76 --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go @@ -0,0 +1,65 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_LinuxParameters AWS CloudFormation Resource (AWS::Batch::JobDefinition.LinuxParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html +type JobDefinition_LinuxParameters struct { + + // Devices AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-devices + Devices []JobDefinition_Device `json:"Devices,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_LinuxParameters) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.LinuxParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_LinuxParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_LinuxParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_LinuxParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_LinuxParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_LinuxParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_LinuxParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-batch-jobdefinition_mountpoints.go b/cloudformation/batch/aws-batch-jobdefinition_mountpoints.go similarity index 76% rename from cloudformation/resources/aws-batch-jobdefinition_mountpoints.go rename to cloudformation/batch/aws-batch-jobdefinition_mountpoints.go index 17a64bcc11..5853921e0c 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_mountpoints.go +++ b/cloudformation/batch/aws-batch-jobdefinition_mountpoints.go @@ -1,10 +1,12 @@ -package resources +package batch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBatchJobDefinition_MountPoints AWS CloudFormation Resource (AWS::Batch::JobDefinition.MountPoints) +// JobDefinition_MountPoints AWS CloudFormation Resource (AWS::Batch::JobDefinition.MountPoints) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html -type AWSBatchJobDefinition_MountPoints struct { +type JobDefinition_MountPoints struct { // ContainerPath AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSBatchJobDefinition_MountPoints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_MountPoints) AWSCloudFormationType() string { +func (r *JobDefinition_MountPoints) AWSCloudFormationType() string { return "AWS::Batch::JobDefinition.MountPoints" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_MountPoints) DependsOn() []string { +func (r *JobDefinition_MountPoints) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_MountPoints) SetDependsOn(dependencies []string) { +func (r *JobDefinition_MountPoints) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_MountPoints) Metadata() map[string]interface{} { +func (r *JobDefinition_MountPoints) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_MountPoints) SetMetadata(metadata map[string]interface{}) { +func (r *JobDefinition_MountPoints) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_MountPoints) DeletionPolicy() policies.DeletionPolicy { +func (r *JobDefinition_MountPoints) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_MountPoints) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_MountPoints) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/batch/aws-batch-jobdefinition_nodeproperties.go b/cloudformation/batch/aws-batch-jobdefinition_nodeproperties.go new file mode 100644 index 0000000000..d8278e7aaa --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_nodeproperties.go @@ -0,0 +1,75 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_NodeProperties AWS CloudFormation Resource (AWS::Batch::JobDefinition.NodeProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html +type JobDefinition_NodeProperties struct { + + // MainNode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-mainnode + MainNode int `json:"MainNode"` + + // NodeRangeProperties AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-noderangeproperties + NodeRangeProperties []JobDefinition_NodeRangeProperty `json:"NodeRangeProperties,omitempty"` + + // NumNodes AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-numnodes + NumNodes int `json:"NumNodes"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_NodeProperties) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.NodeProperties" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_NodeProperties) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_NodeProperties) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_NodeProperties) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_NodeProperties) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_NodeProperties) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_NodeProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go b/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go new file mode 100644 index 0000000000..0a98e7edee --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go @@ -0,0 +1,70 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_NodeRangeProperty AWS CloudFormation Resource (AWS::Batch::JobDefinition.NodeRangeProperty) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html +type JobDefinition_NodeRangeProperty struct { + + // Container AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-container + Container *JobDefinition_ContainerProperties `json:"Container,omitempty"` + + // TargetNodes AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-targetnodes + TargetNodes string `json:"TargetNodes,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_NodeRangeProperty) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.NodeRangeProperty" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_NodeRangeProperty) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_NodeRangeProperty) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_NodeRangeProperty) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_NodeRangeProperty) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_NodeRangeProperty) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_NodeRangeProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_resourcerequirement.go b/cloudformation/batch/aws-batch-jobdefinition_resourcerequirement.go new file mode 100644 index 0000000000..edbc448efd --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_resourcerequirement.go @@ -0,0 +1,70 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_ResourceRequirement AWS CloudFormation Resource (AWS::Batch::JobDefinition.ResourceRequirement) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html +type JobDefinition_ResourceRequirement struct { + + // Type AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html#cfn-batch-jobdefinition-resourcerequirement-type + Type string `json:"Type,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html#cfn-batch-jobdefinition-resourcerequirement-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_ResourceRequirement) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.ResourceRequirement" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_ResourceRequirement) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_ResourceRequirement) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_ResourceRequirement) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_ResourceRequirement) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_ResourceRequirement) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_ResourceRequirement) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_retrystrategy.go b/cloudformation/batch/aws-batch-jobdefinition_retrystrategy.go new file mode 100644 index 0000000000..5f06fbca06 --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_retrystrategy.go @@ -0,0 +1,65 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_RetryStrategy AWS CloudFormation Resource (AWS::Batch::JobDefinition.RetryStrategy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html +type JobDefinition_RetryStrategy struct { + + // Attempts AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html#cfn-batch-jobdefinition-retrystrategy-attempts + Attempts int `json:"Attempts,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_RetryStrategy) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.RetryStrategy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_RetryStrategy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_RetryStrategy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_RetryStrategy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_RetryStrategy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_RetryStrategy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_RetryStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_timeout.go b/cloudformation/batch/aws-batch-jobdefinition_timeout.go new file mode 100644 index 0000000000..0bc80f6bcc --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_timeout.go @@ -0,0 +1,65 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_Timeout AWS CloudFormation Resource (AWS::Batch::JobDefinition.Timeout) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html +type JobDefinition_Timeout struct { + + // AttemptDurationSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html#cfn-batch-jobdefinition-timeout-attemptdurationseconds + AttemptDurationSeconds int `json:"AttemptDurationSeconds,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_Timeout) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.Timeout" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_Timeout) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_Timeout) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_Timeout) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_Timeout) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_Timeout) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_Timeout) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-batch-jobdefinition_ulimit.go b/cloudformation/batch/aws-batch-jobdefinition_ulimit.go similarity index 76% rename from cloudformation/resources/aws-batch-jobdefinition_ulimit.go rename to cloudformation/batch/aws-batch-jobdefinition_ulimit.go index 2965a18199..6a596be694 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_ulimit.go +++ b/cloudformation/batch/aws-batch-jobdefinition_ulimit.go @@ -1,10 +1,12 @@ -package resources +package batch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBatchJobDefinition_Ulimit AWS CloudFormation Resource (AWS::Batch::JobDefinition.Ulimit) +// JobDefinition_Ulimit AWS CloudFormation Resource (AWS::Batch::JobDefinition.Ulimit) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html -type AWSBatchJobDefinition_Ulimit struct { +type JobDefinition_Ulimit struct { // HardLimit AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSBatchJobDefinition_Ulimit struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_Ulimit) AWSCloudFormationType() string { +func (r *JobDefinition_Ulimit) AWSCloudFormationType() string { return "AWS::Batch::JobDefinition.Ulimit" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Ulimit) DependsOn() []string { +func (r *JobDefinition_Ulimit) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Ulimit) SetDependsOn(dependencies []string) { +func (r *JobDefinition_Ulimit) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Ulimit) Metadata() map[string]interface{} { +func (r *JobDefinition_Ulimit) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Ulimit) SetMetadata(metadata map[string]interface{}) { +func (r *JobDefinition_Ulimit) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Ulimit) DeletionPolicy() policies.DeletionPolicy { +func (r *JobDefinition_Ulimit) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Ulimit) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_Ulimit) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/batch/aws-batch-jobdefinition_volumes.go b/cloudformation/batch/aws-batch-jobdefinition_volumes.go new file mode 100644 index 0000000000..876c59c3e3 --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_volumes.go @@ -0,0 +1,70 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_Volumes AWS CloudFormation Resource (AWS::Batch::JobDefinition.Volumes) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html +type JobDefinition_Volumes struct { + + // Host AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html#cfn-batch-jobdefinition-volumes-host + Host *JobDefinition_VolumesHost `json:"Host,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html#cfn-batch-jobdefinition-volumes-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_Volumes) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.Volumes" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_Volumes) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_Volumes) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_Volumes) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_Volumes) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_Volumes) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_Volumes) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_volumeshost.go b/cloudformation/batch/aws-batch-jobdefinition_volumeshost.go new file mode 100644 index 0000000000..6bb0753926 --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_volumeshost.go @@ -0,0 +1,65 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobDefinition_VolumesHost AWS CloudFormation Resource (AWS::Batch::JobDefinition.VolumesHost) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html +type JobDefinition_VolumesHost struct { + + // SourcePath AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html#cfn-batch-jobdefinition-volumeshost-sourcepath + SourcePath string `json:"SourcePath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobDefinition_VolumesHost) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.VolumesHost" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_VolumesHost) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobDefinition_VolumesHost) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_VolumesHost) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobDefinition_VolumesHost) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_VolumesHost) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobDefinition_VolumesHost) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-batch-jobqueue.go b/cloudformation/batch/aws-batch-jobqueue.go similarity index 81% rename from cloudformation/resources/aws-batch-jobqueue.go rename to cloudformation/batch/aws-batch-jobqueue.go index 8a6638ab85..579f5ec325 100644 --- a/cloudformation/resources/aws-batch-jobqueue.go +++ b/cloudformation/batch/aws-batch-jobqueue.go @@ -1,20 +1,21 @@ -package resources +package batch import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSBatchJobQueue AWS CloudFormation Resource (AWS::Batch::JobQueue) +// JobQueue AWS CloudFormation Resource (AWS::Batch::JobQueue) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html -type AWSBatchJobQueue struct { +type JobQueue struct { // ComputeEnvironmentOrder AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-computeenvironmentorder - ComputeEnvironmentOrder []AWSBatchJobQueue_ComputeEnvironmentOrder `json:"ComputeEnvironmentOrder,omitempty"` + ComputeEnvironmentOrder []JobQueue_ComputeEnvironmentOrder `json:"ComputeEnvironmentOrder,omitempty"` // JobQueueName AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSBatchJobQueue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobQueue) AWSCloudFormationType() string { +func (r *JobQueue) AWSCloudFormationType() string { return "AWS::Batch::JobQueue" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobQueue) DependsOn() []string { +func (r *JobQueue) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobQueue) SetDependsOn(dependencies []string) { +func (r *JobQueue) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobQueue) Metadata() map[string]interface{} { +func (r *JobQueue) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobQueue) SetMetadata(metadata map[string]interface{}) { +func (r *JobQueue) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobQueue) DeletionPolicy() policies.DeletionPolicy { +func (r *JobQueue) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobQueue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobQueue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSBatchJobQueue) MarshalJSON() ([]byte, error) { - type Properties AWSBatchJobQueue +func (r JobQueue) MarshalJSON() ([]byte, error) { + type Properties JobQueue return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSBatchJobQueue) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSBatchJobQueue) UnmarshalJSON(b []byte) error { - type Properties AWSBatchJobQueue +func (r *JobQueue) UnmarshalJSON(b []byte) error { + type Properties JobQueue res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSBatchJobQueue) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSBatchJobQueue(*res.Properties) + *r = JobQueue(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/batch/aws-batch-jobqueue_computeenvironmentorder.go b/cloudformation/batch/aws-batch-jobqueue_computeenvironmentorder.go new file mode 100644 index 0000000000..f725255616 --- /dev/null +++ b/cloudformation/batch/aws-batch-jobqueue_computeenvironmentorder.go @@ -0,0 +1,70 @@ +package batch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// JobQueue_ComputeEnvironmentOrder AWS CloudFormation Resource (AWS::Batch::JobQueue.ComputeEnvironmentOrder) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html +type JobQueue_ComputeEnvironmentOrder struct { + + // ComputeEnvironment AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html#cfn-batch-jobqueue-computeenvironmentorder-computeenvironment + ComputeEnvironment string `json:"ComputeEnvironment,omitempty"` + + // Order AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html#cfn-batch-jobqueue-computeenvironmentorder-order + Order int `json:"Order"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *JobQueue_ComputeEnvironmentOrder) AWSCloudFormationType() string { + return "AWS::Batch::JobQueue.ComputeEnvironmentOrder" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobQueue_ComputeEnvironmentOrder) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *JobQueue_ComputeEnvironmentOrder) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobQueue_ComputeEnvironmentOrder) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *JobQueue_ComputeEnvironmentOrder) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobQueue_ComputeEnvironmentOrder) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *JobQueue_ComputeEnvironmentOrder) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-budgets-budget.go b/cloudformation/budgets/aws-budgets-budget.go similarity index 77% rename from cloudformation/resources/aws-budgets-budget.go rename to cloudformation/budgets/aws-budgets-budget.go index 6bd6cc4baa..ca09bb6ad7 100644 --- a/cloudformation/resources/aws-budgets-budget.go +++ b/cloudformation/budgets/aws-budgets-budget.go @@ -1,25 +1,26 @@ -package resources +package budgets import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSBudgetsBudget AWS CloudFormation Resource (AWS::Budgets::Budget) +// Budget AWS CloudFormation Resource (AWS::Budgets::Budget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html -type AWSBudgetsBudget struct { +type Budget struct { // Budget AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-budget - Budget *AWSBudgetsBudget_BudgetData `json:"Budget,omitempty"` + Budget *Budget_BudgetData `json:"Budget,omitempty"` // NotificationsWithSubscribers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-notificationswithsubscribers - NotificationsWithSubscribers []AWSBudgetsBudget_NotificationWithSubscribers `json:"NotificationsWithSubscribers,omitempty"` + NotificationsWithSubscribers []Budget_NotificationWithSubscribers `json:"NotificationsWithSubscribers,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSBudgetsBudget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget) AWSCloudFormationType() string { +func (r *Budget) AWSCloudFormationType() string { return "AWS::Budgets::Budget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget) DependsOn() []string { +func (r *Budget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget) SetDependsOn(dependencies []string) { +func (r *Budget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget) Metadata() map[string]interface{} { +func (r *Budget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget) SetMetadata(metadata map[string]interface{}) { +func (r *Budget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget) DeletionPolicy() policies.DeletionPolicy { +func (r *Budget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Budget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSBudgetsBudget) MarshalJSON() ([]byte, error) { - type Properties AWSBudgetsBudget +func (r Budget) MarshalJSON() ([]byte, error) { + type Properties Budget return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSBudgetsBudget) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSBudgetsBudget) UnmarshalJSON(b []byte) error { - type Properties AWSBudgetsBudget +func (r *Budget) UnmarshalJSON(b []byte) error { + type Properties Budget res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSBudgetsBudget) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSBudgetsBudget(*res.Properties) + *r = Budget(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-budgets-budget_budgetdata.go b/cloudformation/budgets/aws-budgets-budget_budgetdata.go similarity index 79% rename from cloudformation/resources/aws-budgets-budget_budgetdata.go rename to cloudformation/budgets/aws-budgets-budget_budgetdata.go index 08d15a345b..652a73e709 100644 --- a/cloudformation/resources/aws-budgets-budget_budgetdata.go +++ b/cloudformation/budgets/aws-budgets-budget_budgetdata.go @@ -1,15 +1,17 @@ -package resources +package budgets -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBudgetsBudget_BudgetData AWS CloudFormation Resource (AWS::Budgets::Budget.BudgetData) +// Budget_BudgetData AWS CloudFormation Resource (AWS::Budgets::Budget.BudgetData) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html -type AWSBudgetsBudget_BudgetData struct { +type Budget_BudgetData struct { // BudgetLimit AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgetlimit - BudgetLimit *AWSBudgetsBudget_Spend `json:"BudgetLimit,omitempty"` + BudgetLimit *Budget_Spend `json:"BudgetLimit,omitempty"` // BudgetName AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSBudgetsBudget_BudgetData struct { // CostTypes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-costtypes - CostTypes *AWSBudgetsBudget_CostTypes `json:"CostTypes,omitempty"` + CostTypes *Budget_CostTypes `json:"CostTypes,omitempty"` // PlannedBudgetLimits AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSBudgetsBudget_BudgetData struct { // TimePeriod AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-timeperiod - TimePeriod *AWSBudgetsBudget_TimePeriod `json:"TimePeriod,omitempty"` + TimePeriod *Budget_TimePeriod `json:"TimePeriod,omitempty"` // TimeUnit AWS CloudFormation Property // Required: true @@ -57,42 +59,42 @@ type AWSBudgetsBudget_BudgetData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget_BudgetData) AWSCloudFormationType() string { +func (r *Budget_BudgetData) AWSCloudFormationType() string { return "AWS::Budgets::Budget.BudgetData" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_BudgetData) DependsOn() []string { +func (r *Budget_BudgetData) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_BudgetData) SetDependsOn(dependencies []string) { +func (r *Budget_BudgetData) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_BudgetData) Metadata() map[string]interface{} { +func (r *Budget_BudgetData) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_BudgetData) SetMetadata(metadata map[string]interface{}) { +func (r *Budget_BudgetData) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_BudgetData) DeletionPolicy() policies.DeletionPolicy { +func (r *Budget_BudgetData) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_BudgetData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Budget_BudgetData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-budgets-budget_costtypes.go b/cloudformation/budgets/aws-budgets-budget_costtypes.go similarity index 86% rename from cloudformation/resources/aws-budgets-budget_costtypes.go rename to cloudformation/budgets/aws-budgets-budget_costtypes.go index e40f6f1ed7..c16922c968 100644 --- a/cloudformation/resources/aws-budgets-budget_costtypes.go +++ b/cloudformation/budgets/aws-budgets-budget_costtypes.go @@ -1,10 +1,12 @@ -package resources +package budgets -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBudgetsBudget_CostTypes AWS CloudFormation Resource (AWS::Budgets::Budget.CostTypes) +// Budget_CostTypes AWS CloudFormation Resource (AWS::Budgets::Budget.CostTypes) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html -type AWSBudgetsBudget_CostTypes struct { +type Budget_CostTypes struct { // IncludeCredit AWS CloudFormation Property // Required: false @@ -72,42 +74,42 @@ type AWSBudgetsBudget_CostTypes struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget_CostTypes) AWSCloudFormationType() string { +func (r *Budget_CostTypes) AWSCloudFormationType() string { return "AWS::Budgets::Budget.CostTypes" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_CostTypes) DependsOn() []string { +func (r *Budget_CostTypes) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_CostTypes) SetDependsOn(dependencies []string) { +func (r *Budget_CostTypes) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_CostTypes) Metadata() map[string]interface{} { +func (r *Budget_CostTypes) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_CostTypes) SetMetadata(metadata map[string]interface{}) { +func (r *Budget_CostTypes) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_CostTypes) DeletionPolicy() policies.DeletionPolicy { +func (r *Budget_CostTypes) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_CostTypes) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Budget_CostTypes) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-budgets-budget_notification.go b/cloudformation/budgets/aws-budgets-budget_notification.go similarity index 79% rename from cloudformation/resources/aws-budgets-budget_notification.go rename to cloudformation/budgets/aws-budgets-budget_notification.go index 5cb2e42c53..1f9c563b1d 100644 --- a/cloudformation/resources/aws-budgets-budget_notification.go +++ b/cloudformation/budgets/aws-budgets-budget_notification.go @@ -1,10 +1,12 @@ -package resources +package budgets -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBudgetsBudget_Notification AWS CloudFormation Resource (AWS::Budgets::Budget.Notification) +// Budget_Notification AWS CloudFormation Resource (AWS::Budgets::Budget.Notification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html -type AWSBudgetsBudget_Notification struct { +type Budget_Notification struct { // ComparisonOperator AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSBudgetsBudget_Notification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget_Notification) AWSCloudFormationType() string { +func (r *Budget_Notification) AWSCloudFormationType() string { return "AWS::Budgets::Budget.Notification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_Notification) DependsOn() []string { +func (r *Budget_Notification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_Notification) SetDependsOn(dependencies []string) { +func (r *Budget_Notification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_Notification) Metadata() map[string]interface{} { +func (r *Budget_Notification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_Notification) SetMetadata(metadata map[string]interface{}) { +func (r *Budget_Notification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_Notification) DeletionPolicy() policies.DeletionPolicy { +func (r *Budget_Notification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_Notification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Budget_Notification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/budgets/aws-budgets-budget_notificationwithsubscribers.go b/cloudformation/budgets/aws-budgets-budget_notificationwithsubscribers.go new file mode 100644 index 0000000000..8b01d2c002 --- /dev/null +++ b/cloudformation/budgets/aws-budgets-budget_notificationwithsubscribers.go @@ -0,0 +1,70 @@ +package budgets + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Budget_NotificationWithSubscribers AWS CloudFormation Resource (AWS::Budgets::Budget.NotificationWithSubscribers) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html +type Budget_NotificationWithSubscribers struct { + + // Notification AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-notification + Notification *Budget_Notification `json:"Notification,omitempty"` + + // Subscribers AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-subscribers + Subscribers []Budget_Subscriber `json:"Subscribers,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Budget_NotificationWithSubscribers) AWSCloudFormationType() string { + return "AWS::Budgets::Budget.NotificationWithSubscribers" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Budget_NotificationWithSubscribers) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Budget_NotificationWithSubscribers) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Budget_NotificationWithSubscribers) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Budget_NotificationWithSubscribers) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Budget_NotificationWithSubscribers) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Budget_NotificationWithSubscribers) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-budgets-budget_spend.go b/cloudformation/budgets/aws-budgets-budget_spend.go similarity index 76% rename from cloudformation/resources/aws-budgets-budget_spend.go rename to cloudformation/budgets/aws-budgets-budget_spend.go index 557af946d4..aa84057c48 100644 --- a/cloudformation/resources/aws-budgets-budget_spend.go +++ b/cloudformation/budgets/aws-budgets-budget_spend.go @@ -1,10 +1,12 @@ -package resources +package budgets -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBudgetsBudget_Spend AWS CloudFormation Resource (AWS::Budgets::Budget.Spend) +// Budget_Spend AWS CloudFormation Resource (AWS::Budgets::Budget.Spend) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html -type AWSBudgetsBudget_Spend struct { +type Budget_Spend struct { // Amount AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSBudgetsBudget_Spend struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget_Spend) AWSCloudFormationType() string { +func (r *Budget_Spend) AWSCloudFormationType() string { return "AWS::Budgets::Budget.Spend" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_Spend) DependsOn() []string { +func (r *Budget_Spend) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_Spend) SetDependsOn(dependencies []string) { +func (r *Budget_Spend) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_Spend) Metadata() map[string]interface{} { +func (r *Budget_Spend) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_Spend) SetMetadata(metadata map[string]interface{}) { +func (r *Budget_Spend) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_Spend) DeletionPolicy() policies.DeletionPolicy { +func (r *Budget_Spend) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_Spend) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Budget_Spend) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-budgets-budget_subscriber.go b/cloudformation/budgets/aws-budgets-budget_subscriber.go similarity index 75% rename from cloudformation/resources/aws-budgets-budget_subscriber.go rename to cloudformation/budgets/aws-budgets-budget_subscriber.go index 36dba03179..5ea4d65fd0 100644 --- a/cloudformation/resources/aws-budgets-budget_subscriber.go +++ b/cloudformation/budgets/aws-budgets-budget_subscriber.go @@ -1,10 +1,12 @@ -package resources +package budgets -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBudgetsBudget_Subscriber AWS CloudFormation Resource (AWS::Budgets::Budget.Subscriber) +// Budget_Subscriber AWS CloudFormation Resource (AWS::Budgets::Budget.Subscriber) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html -type AWSBudgetsBudget_Subscriber struct { +type Budget_Subscriber struct { // Address AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSBudgetsBudget_Subscriber struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget_Subscriber) AWSCloudFormationType() string { +func (r *Budget_Subscriber) AWSCloudFormationType() string { return "AWS::Budgets::Budget.Subscriber" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_Subscriber) DependsOn() []string { +func (r *Budget_Subscriber) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_Subscriber) SetDependsOn(dependencies []string) { +func (r *Budget_Subscriber) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_Subscriber) Metadata() map[string]interface{} { +func (r *Budget_Subscriber) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_Subscriber) SetMetadata(metadata map[string]interface{}) { +func (r *Budget_Subscriber) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_Subscriber) DeletionPolicy() policies.DeletionPolicy { +func (r *Budget_Subscriber) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_Subscriber) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Budget_Subscriber) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-budgets-budget_timeperiod.go b/cloudformation/budgets/aws-budgets-budget_timeperiod.go similarity index 75% rename from cloudformation/resources/aws-budgets-budget_timeperiod.go rename to cloudformation/budgets/aws-budgets-budget_timeperiod.go index 40257bc71e..67e75758be 100644 --- a/cloudformation/resources/aws-budgets-budget_timeperiod.go +++ b/cloudformation/budgets/aws-budgets-budget_timeperiod.go @@ -1,10 +1,12 @@ -package resources +package budgets -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBudgetsBudget_TimePeriod AWS CloudFormation Resource (AWS::Budgets::Budget.TimePeriod) +// Budget_TimePeriod AWS CloudFormation Resource (AWS::Budgets::Budget.TimePeriod) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html -type AWSBudgetsBudget_TimePeriod struct { +type Budget_TimePeriod struct { // End AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSBudgetsBudget_TimePeriod struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget_TimePeriod) AWSCloudFormationType() string { +func (r *Budget_TimePeriod) AWSCloudFormationType() string { return "AWS::Budgets::Budget.TimePeriod" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_TimePeriod) DependsOn() []string { +func (r *Budget_TimePeriod) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_TimePeriod) SetDependsOn(dependencies []string) { +func (r *Budget_TimePeriod) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_TimePeriod) Metadata() map[string]interface{} { +func (r *Budget_TimePeriod) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_TimePeriod) SetMetadata(metadata map[string]interface{}) { +func (r *Budget_TimePeriod) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_TimePeriod) DeletionPolicy() policies.DeletionPolicy { +func (r *Budget_TimePeriod) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_TimePeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Budget_TimePeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-certificatemanager-certificate.go b/cloudformation/certificatemanager/aws-certificatemanager-certificate.go similarity index 78% rename from cloudformation/resources/aws-certificatemanager-certificate.go rename to cloudformation/certificatemanager/aws-certificatemanager-certificate.go index 1ad544b821..13956750d6 100644 --- a/cloudformation/resources/aws-certificatemanager-certificate.go +++ b/cloudformation/certificatemanager/aws-certificatemanager-certificate.go @@ -1,15 +1,17 @@ -package resources +package certificatemanager import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSCertificateManagerCertificate AWS CloudFormation Resource (AWS::CertificateManager::Certificate) +// Certificate AWS CloudFormation Resource (AWS::CertificateManager::Certificate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html -type AWSCertificateManagerCertificate struct { +type Certificate struct { // DomainName AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSCertificateManagerCertificate struct { // DomainValidationOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-domainvalidationoptions - DomainValidationOptions []AWSCertificateManagerCertificate_DomainValidationOption `json:"DomainValidationOptions,omitempty"` + DomainValidationOptions []Certificate_DomainValidationOption `json:"DomainValidationOptions,omitempty"` // SubjectAlternativeNames AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSCertificateManagerCertificate struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // ValidationMethod AWS CloudFormation Property // Required: false @@ -47,50 +49,50 @@ type AWSCertificateManagerCertificate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCertificateManagerCertificate) AWSCloudFormationType() string { +func (r *Certificate) AWSCloudFormationType() string { return "AWS::CertificateManager::Certificate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCertificateManagerCertificate) DependsOn() []string { +func (r *Certificate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCertificateManagerCertificate) SetDependsOn(dependencies []string) { +func (r *Certificate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCertificateManagerCertificate) Metadata() map[string]interface{} { +func (r *Certificate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCertificateManagerCertificate) SetMetadata(metadata map[string]interface{}) { +func (r *Certificate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCertificateManagerCertificate) DeletionPolicy() policies.DeletionPolicy { +func (r *Certificate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCertificateManagerCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCertificateManagerCertificate) MarshalJSON() ([]byte, error) { - type Properties AWSCertificateManagerCertificate +func (r Certificate) MarshalJSON() ([]byte, error) { + type Properties Certificate return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSCertificateManagerCertificate) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCertificateManagerCertificate) UnmarshalJSON(b []byte) error { - type Properties AWSCertificateManagerCertificate +func (r *Certificate) UnmarshalJSON(b []byte) error { + type Properties Certificate res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSCertificateManagerCertificate) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCertificateManagerCertificate(*res.Properties) + *r = Certificate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/certificatemanager/aws-certificatemanager-certificate_domainvalidationoption.go b/cloudformation/certificatemanager/aws-certificatemanager-certificate_domainvalidationoption.go new file mode 100644 index 0000000000..9f235f362c --- /dev/null +++ b/cloudformation/certificatemanager/aws-certificatemanager-certificate_domainvalidationoption.go @@ -0,0 +1,70 @@ +package certificatemanager + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Certificate_DomainValidationOption AWS CloudFormation Resource (AWS::CertificateManager::Certificate.DomainValidationOption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html +type Certificate_DomainValidationOption struct { + + // DomainName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoptions-domainname + DomainName string `json:"DomainName,omitempty"` + + // ValidationDomain AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoption-validationdomain + ValidationDomain string `json:"ValidationDomain,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Certificate_DomainValidationOption) AWSCloudFormationType() string { + return "AWS::CertificateManager::Certificate.DomainValidationOption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Certificate_DomainValidationOption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Certificate_DomainValidationOption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Certificate_DomainValidationOption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Certificate_DomainValidationOption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Certificate_DomainValidationOption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Certificate_DomainValidationOption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloud9-environmentec2.go b/cloudformation/cloud9/aws-cloud9-environmentec2.go similarity index 82% rename from cloudformation/resources/aws-cloud9-environmentec2.go rename to cloudformation/cloud9/aws-cloud9-environmentec2.go index 63ba5e5258..5298ca8bbd 100644 --- a/cloudformation/resources/aws-cloud9-environmentec2.go +++ b/cloudformation/cloud9/aws-cloud9-environmentec2.go @@ -1,15 +1,16 @@ -package resources +package cloud9 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCloud9EnvironmentEC2 AWS CloudFormation Resource (AWS::Cloud9::EnvironmentEC2) +// EnvironmentEC2 AWS CloudFormation Resource (AWS::Cloud9::EnvironmentEC2) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html -type AWSCloud9EnvironmentEC2 struct { +type EnvironmentEC2 struct { // AutomaticStopTimeMinutes AWS CloudFormation Property // Required: false @@ -39,7 +40,7 @@ type AWSCloud9EnvironmentEC2 struct { // Repositories AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-repositories - Repositories []AWSCloud9EnvironmentEC2_Repository `json:"Repositories,omitempty"` + Repositories []EnvironmentEC2_Repository `json:"Repositories,omitempty"` // SubnetId AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSCloud9EnvironmentEC2 struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloud9EnvironmentEC2) AWSCloudFormationType() string { +func (r *EnvironmentEC2) AWSCloudFormationType() string { return "AWS::Cloud9::EnvironmentEC2" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloud9EnvironmentEC2) DependsOn() []string { +func (r *EnvironmentEC2) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloud9EnvironmentEC2) SetDependsOn(dependencies []string) { +func (r *EnvironmentEC2) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloud9EnvironmentEC2) Metadata() map[string]interface{} { +func (r *EnvironmentEC2) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloud9EnvironmentEC2) SetMetadata(metadata map[string]interface{}) { +func (r *EnvironmentEC2) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloud9EnvironmentEC2) DeletionPolicy() policies.DeletionPolicy { +func (r *EnvironmentEC2) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloud9EnvironmentEC2) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EnvironmentEC2) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloud9EnvironmentEC2) MarshalJSON() ([]byte, error) { - type Properties AWSCloud9EnvironmentEC2 +func (r EnvironmentEC2) MarshalJSON() ([]byte, error) { + type Properties EnvironmentEC2 return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSCloud9EnvironmentEC2) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloud9EnvironmentEC2) UnmarshalJSON(b []byte) error { - type Properties AWSCloud9EnvironmentEC2 +func (r *EnvironmentEC2) UnmarshalJSON(b []byte) error { + type Properties EnvironmentEC2 res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSCloud9EnvironmentEC2) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloud9EnvironmentEC2(*res.Properties) + *r = EnvironmentEC2(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cloud9/aws-cloud9-environmentec2_repository.go b/cloudformation/cloud9/aws-cloud9-environmentec2_repository.go new file mode 100644 index 0000000000..98760f7d6d --- /dev/null +++ b/cloudformation/cloud9/aws-cloud9-environmentec2_repository.go @@ -0,0 +1,70 @@ +package cloud9 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// EnvironmentEC2_Repository AWS CloudFormation Resource (AWS::Cloud9::EnvironmentEC2.Repository) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html +type EnvironmentEC2_Repository struct { + + // PathComponent AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html#cfn-cloud9-environmentec2-repository-pathcomponent + PathComponent string `json:"PathComponent,omitempty"` + + // RepositoryUrl AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html#cfn-cloud9-environmentec2-repository-repositoryurl + RepositoryUrl string `json:"RepositoryUrl,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *EnvironmentEC2_Repository) AWSCloudFormationType() string { + return "AWS::Cloud9::EnvironmentEC2.Repository" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EnvironmentEC2_Repository) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EnvironmentEC2_Repository) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EnvironmentEC2_Repository) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EnvironmentEC2_Repository) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EnvironmentEC2_Repository) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EnvironmentEC2_Repository) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudformation-customresource.go b/cloudformation/cloudformation/aws-cloudformation-customresource.go similarity index 76% rename from cloudformation/resources/aws-cloudformation-customresource.go rename to cloudformation/cloudformation/aws-cloudformation-customresource.go index f9f682506e..ee6bbebd66 100644 --- a/cloudformation/resources/aws-cloudformation-customresource.go +++ b/cloudformation/cloudformation/aws-cloudformation-customresource.go @@ -1,15 +1,16 @@ -package resources +package cloudformation import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCloudFormationCustomResource AWS CloudFormation Resource (AWS::CloudFormation::CustomResource) +// CustomResource AWS CloudFormation Resource (AWS::CloudFormation::CustomResource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html -type AWSCloudFormationCustomResource struct { +type CustomResource struct { // ServiceToken AWS CloudFormation Property // Required: true @@ -27,50 +28,50 @@ type AWSCloudFormationCustomResource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFormationCustomResource) AWSCloudFormationType() string { +func (r *CustomResource) AWSCloudFormationType() string { return "AWS::CloudFormation::CustomResource" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationCustomResource) DependsOn() []string { +func (r *CustomResource) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationCustomResource) SetDependsOn(dependencies []string) { +func (r *CustomResource) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationCustomResource) Metadata() map[string]interface{} { +func (r *CustomResource) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationCustomResource) SetMetadata(metadata map[string]interface{}) { +func (r *CustomResource) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationCustomResource) DeletionPolicy() policies.DeletionPolicy { +func (r *CustomResource) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationCustomResource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CustomResource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudFormationCustomResource) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFormationCustomResource +func (r CustomResource) MarshalJSON() ([]byte, error) { + type Properties CustomResource return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSCloudFormationCustomResource) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudFormationCustomResource) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFormationCustomResource +func (r *CustomResource) UnmarshalJSON(b []byte) error { + type Properties CustomResource res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSCloudFormationCustomResource) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudFormationCustomResource(*res.Properties) + *r = CustomResource(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cloudformation-macro.go b/cloudformation/cloudformation/aws-cloudformation-macro.go similarity index 82% rename from cloudformation/resources/aws-cloudformation-macro.go rename to cloudformation/cloudformation/aws-cloudformation-macro.go index 9407669207..5b161825f2 100644 --- a/cloudformation/resources/aws-cloudformation-macro.go +++ b/cloudformation/cloudformation/aws-cloudformation-macro.go @@ -1,15 +1,16 @@ -package resources +package cloudformation import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCloudFormationMacro AWS CloudFormation Resource (AWS::CloudFormation::Macro) +// Macro AWS CloudFormation Resource (AWS::CloudFormation::Macro) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html -type AWSCloudFormationMacro struct { +type Macro struct { // Description AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSCloudFormationMacro struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFormationMacro) AWSCloudFormationType() string { +func (r *Macro) AWSCloudFormationType() string { return "AWS::CloudFormation::Macro" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationMacro) DependsOn() []string { +func (r *Macro) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationMacro) SetDependsOn(dependencies []string) { +func (r *Macro) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationMacro) Metadata() map[string]interface{} { +func (r *Macro) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationMacro) SetMetadata(metadata map[string]interface{}) { +func (r *Macro) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationMacro) DeletionPolicy() policies.DeletionPolicy { +func (r *Macro) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationMacro) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Macro) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudFormationMacro) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFormationMacro +func (r Macro) MarshalJSON() ([]byte, error) { + type Properties Macro return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSCloudFormationMacro) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudFormationMacro) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFormationMacro +func (r *Macro) UnmarshalJSON(b []byte) error { + type Properties Macro res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSCloudFormationMacro) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudFormationMacro(*res.Properties) + *r = Macro(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cloudformation-stack.go b/cloudformation/cloudformation/aws-cloudformation-stack.go similarity index 82% rename from cloudformation/resources/aws-cloudformation-stack.go rename to cloudformation/cloudformation/aws-cloudformation-stack.go index 159e017ac5..751c923433 100644 --- a/cloudformation/resources/aws-cloudformation-stack.go +++ b/cloudformation/cloudformation/aws-cloudformation-stack.go @@ -1,15 +1,17 @@ -package resources +package cloudformation import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSCloudFormationStack AWS CloudFormation Resource (AWS::CloudFormation::Stack) +// Stack AWS CloudFormation Resource (AWS::CloudFormation::Stack) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html -type AWSCloudFormationStack struct { +type Stack struct { // NotificationARNs AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSCloudFormationStack struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TemplateURL AWS CloudFormation Property // Required: true @@ -47,50 +49,50 @@ type AWSCloudFormationStack struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFormationStack) AWSCloudFormationType() string { +func (r *Stack) AWSCloudFormationType() string { return "AWS::CloudFormation::Stack" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationStack) DependsOn() []string { +func (r *Stack) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationStack) SetDependsOn(dependencies []string) { +func (r *Stack) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationStack) Metadata() map[string]interface{} { +func (r *Stack) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationStack) SetMetadata(metadata map[string]interface{}) { +func (r *Stack) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationStack) DeletionPolicy() policies.DeletionPolicy { +func (r *Stack) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationStack) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stack) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudFormationStack) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFormationStack +func (r Stack) MarshalJSON() ([]byte, error) { + type Properties Stack return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSCloudFormationStack) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudFormationStack) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFormationStack +func (r *Stack) UnmarshalJSON(b []byte) error { + type Properties Stack res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSCloudFormationStack) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudFormationStack(*res.Properties) + *r = Stack(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cloudformation-waitcondition.go b/cloudformation/cloudformation/aws-cloudformation-waitcondition.go similarity index 79% rename from cloudformation/resources/aws-cloudformation-waitcondition.go rename to cloudformation/cloudformation/aws-cloudformation-waitcondition.go index f1fef7be68..ef7a154d51 100644 --- a/cloudformation/resources/aws-cloudformation-waitcondition.go +++ b/cloudformation/cloudformation/aws-cloudformation-waitcondition.go @@ -1,15 +1,16 @@ -package resources +package cloudformation import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCloudFormationWaitCondition AWS CloudFormation Resource (AWS::CloudFormation::WaitCondition) +// WaitCondition AWS CloudFormation Resource (AWS::CloudFormation::WaitCondition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html -type AWSCloudFormationWaitCondition struct { +type WaitCondition struct { // Count AWS CloudFormation Property // Required: false @@ -40,56 +41,56 @@ type AWSCloudFormationWaitCondition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFormationWaitCondition) AWSCloudFormationType() string { +func (r *WaitCondition) AWSCloudFormationType() string { return "AWS::CloudFormation::WaitCondition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationWaitCondition) DependsOn() []string { +func (r *WaitCondition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationWaitCondition) SetDependsOn(dependencies []string) { +func (r *WaitCondition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationWaitCondition) Metadata() map[string]interface{} { +func (r *WaitCondition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationWaitCondition) SetMetadata(metadata map[string]interface{}) { +func (r *WaitCondition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationWaitCondition) DeletionPolicy() policies.DeletionPolicy { +func (r *WaitCondition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationWaitCondition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *WaitCondition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // SetCreationPolicy applies an AWS CloudFormation CreationPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html -func (r *AWSCloudFormationWaitCondition) SetCreationPolicy(policy *policies.CreationPolicy) { +func (r *WaitCondition) SetCreationPolicy(policy *policies.CreationPolicy) { r._creationPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudFormationWaitCondition) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFormationWaitCondition +func (r WaitCondition) MarshalJSON() ([]byte, error) { + type Properties WaitCondition return json.Marshal(&struct { Type string Properties Properties @@ -111,8 +112,8 @@ func (r AWSCloudFormationWaitCondition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudFormationWaitCondition) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFormationWaitCondition +func (r *WaitCondition) UnmarshalJSON(b []byte) error { + type Properties WaitCondition res := &struct { Type string Properties *Properties @@ -131,7 +132,7 @@ func (r *AWSCloudFormationWaitCondition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudFormationWaitCondition(*res.Properties) + *r = WaitCondition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cloudformation/aws-cloudformation-waitconditionhandle.go b/cloudformation/cloudformation/aws-cloudformation-waitconditionhandle.go new file mode 100644 index 0000000000..5400a34655 --- /dev/null +++ b/cloudformation/cloudformation/aws-cloudformation-waitconditionhandle.go @@ -0,0 +1,119 @@ +package cloudformation + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// WaitConditionHandle AWS CloudFormation Resource (AWS::CloudFormation::WaitConditionHandle) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html +type WaitConditionHandle struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *WaitConditionHandle) AWSCloudFormationType() string { + return "AWS::CloudFormation::WaitConditionHandle" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *WaitConditionHandle) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *WaitConditionHandle) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *WaitConditionHandle) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *WaitConditionHandle) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *WaitConditionHandle) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *WaitConditionHandle) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r WaitConditionHandle) MarshalJSON() ([]byte, error) { + type Properties WaitConditionHandle + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *WaitConditionHandle) UnmarshalJSON(b []byte) error { + type Properties WaitConditionHandle + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = WaitConditionHandle(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/cloudformation/tag.go b/cloudformation/cloudformation/tag.go new file mode 100644 index 0000000000..0882fcb079 --- /dev/null +++ b/cloudformation/cloudformation/tag.go @@ -0,0 +1,70 @@ +package cloudformation + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Tag AWS CloudFormation Resource (Tag) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html +type Tag struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Tag) AWSCloudFormationType() string { + return "Tag" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Tag) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Tag) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Tag) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Tag) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Tag) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Tag) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity.go b/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity.go new file mode 100644 index 0000000000..cea01ce47e --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity.go @@ -0,0 +1,124 @@ +package cloudfront + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// CloudFrontOriginAccessIdentity AWS CloudFormation Resource (AWS::CloudFront::CloudFrontOriginAccessIdentity) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html +type CloudFrontOriginAccessIdentity struct { + + // CloudFrontOriginAccessIdentityConfig AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig + CloudFrontOriginAccessIdentityConfig *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig `json:"CloudFrontOriginAccessIdentityConfig,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *CloudFrontOriginAccessIdentity) AWSCloudFormationType() string { + return "AWS::CloudFront::CloudFrontOriginAccessIdentity" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CloudFrontOriginAccessIdentity) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CloudFrontOriginAccessIdentity) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CloudFrontOriginAccessIdentity) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CloudFrontOriginAccessIdentity) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CloudFrontOriginAccessIdentity) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CloudFrontOriginAccessIdentity) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r CloudFrontOriginAccessIdentity) MarshalJSON() ([]byte, error) { + type Properties CloudFrontOriginAccessIdentity + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *CloudFrontOriginAccessIdentity) UnmarshalJSON(b []byte) error { + type Properties CloudFrontOriginAccessIdentity + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = CloudFrontOriginAccessIdentity(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go b/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go new file mode 100644 index 0000000000..b8668d9668 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go @@ -0,0 +1,65 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig AWS CloudFormation Resource (AWS::CloudFront::CloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html +type CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig struct { + + // Comment AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig-comment + Comment string `json:"Comment,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) AWSCloudFormationType() string { + return "AWS::CloudFront::CloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudfront-distribution.go b/cloudformation/cloudfront/aws-cloudfront-distribution.go similarity index 76% rename from cloudformation/resources/aws-cloudfront-distribution.go rename to cloudformation/cloudfront/aws-cloudfront-distribution.go index 250d8827ac..2aa133c89b 100644 --- a/cloudformation/resources/aws-cloudfront-distribution.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution.go @@ -1,25 +1,27 @@ -package resources +package cloudfront import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSCloudFrontDistribution AWS CloudFormation Resource (AWS::CloudFront::Distribution) +// Distribution AWS CloudFormation Resource (AWS::CloudFront::Distribution) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html -type AWSCloudFrontDistribution struct { +type Distribution struct { // DistributionConfig AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-distributionconfig - DistributionConfig *AWSCloudFrontDistribution_DistributionConfig `json:"DistributionConfig,omitempty"` + DistributionConfig *Distribution_DistributionConfig `json:"DistributionConfig,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +34,50 @@ type AWSCloudFrontDistribution struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution) AWSCloudFormationType() string { +func (r *Distribution) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution) DependsOn() []string { +func (r *Distribution) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution) SetDependsOn(dependencies []string) { +func (r *Distribution) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution) Metadata() map[string]interface{} { +func (r *Distribution) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudFrontDistribution) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFrontDistribution +func (r Distribution) MarshalJSON() ([]byte, error) { + type Properties Distribution return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +95,8 @@ func (r AWSCloudFrontDistribution) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudFrontDistribution) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFrontDistribution +func (r *Distribution) UnmarshalJSON(b []byte) error { + type Properties Distribution res := &struct { Type string Properties *Properties @@ -113,7 +115,7 @@ func (r *AWSCloudFrontDistribution) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudFrontDistribution(*res.Properties) + *r = Distribution(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cloudfront-distribution_cachebehavior.go b/cloudformation/cloudfront/aws-cloudfront-distribution_cachebehavior.go similarity index 84% rename from cloudformation/resources/aws-cloudfront-distribution_cachebehavior.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_cachebehavior.go index 57690b09f6..eea154ddf4 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_cachebehavior.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_cachebehavior.go @@ -1,10 +1,12 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_CacheBehavior AWS CloudFormation Resource (AWS::CloudFront::Distribution.CacheBehavior) +// Distribution_CacheBehavior AWS CloudFormation Resource (AWS::CloudFront::Distribution.CacheBehavior) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html -type AWSCloudFrontDistribution_CacheBehavior struct { +type Distribution_CacheBehavior struct { // AllowedMethods AWS CloudFormation Property // Required: false @@ -34,12 +36,12 @@ type AWSCloudFrontDistribution_CacheBehavior struct { // ForwardedValues AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-forwardedvalues - ForwardedValues *AWSCloudFrontDistribution_ForwardedValues `json:"ForwardedValues,omitempty"` + ForwardedValues *Distribution_ForwardedValues `json:"ForwardedValues,omitempty"` // LambdaFunctionAssociations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-lambdafunctionassociations - LambdaFunctionAssociations []AWSCloudFrontDistribution_LambdaFunctionAssociation `json:"LambdaFunctionAssociations,omitempty"` + LambdaFunctionAssociations []Distribution_LambdaFunctionAssociation `json:"LambdaFunctionAssociations,omitempty"` // MaxTTL AWS CloudFormation Property // Required: false @@ -87,42 +89,42 @@ type AWSCloudFrontDistribution_CacheBehavior struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_CacheBehavior) AWSCloudFormationType() string { +func (r *Distribution_CacheBehavior) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.CacheBehavior" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_CacheBehavior) DependsOn() []string { +func (r *Distribution_CacheBehavior) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_CacheBehavior) SetDependsOn(dependencies []string) { +func (r *Distribution_CacheBehavior) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_CacheBehavior) Metadata() map[string]interface{} { +func (r *Distribution_CacheBehavior) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_CacheBehavior) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_CacheBehavior) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_CacheBehavior) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_CacheBehavior) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_CacheBehavior) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_CacheBehavior) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cloudfront/aws-cloudfront-distribution_cookies.go b/cloudformation/cloudfront/aws-cloudfront-distribution_cookies.go new file mode 100644 index 0000000000..d9e4f7df64 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_cookies.go @@ -0,0 +1,70 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Distribution_Cookies AWS CloudFormation Resource (AWS::CloudFront::Distribution.Cookies) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html +type Distribution_Cookies struct { + + // Forward AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-forward + Forward string `json:"Forward,omitempty"` + + // WhitelistedNames AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-whitelistednames + WhitelistedNames []string `json:"WhitelistedNames,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Distribution_Cookies) AWSCloudFormationType() string { + return "AWS::CloudFront::Distribution.Cookies" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_Cookies) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_Cookies) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_Cookies) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_Cookies) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_Cookies) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_Cookies) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudfront-distribution_customerrorresponse.go b/cloudformation/cloudfront/aws-cloudfront-distribution_customerrorresponse.go similarity index 76% rename from cloudformation/resources/aws-cloudfront-distribution_customerrorresponse.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_customerrorresponse.go index 92e019c10d..f4bf790b93 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_customerrorresponse.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_customerrorresponse.go @@ -1,10 +1,12 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_CustomErrorResponse AWS CloudFormation Resource (AWS::CloudFront::Distribution.CustomErrorResponse) +// Distribution_CustomErrorResponse AWS CloudFormation Resource (AWS::CloudFront::Distribution.CustomErrorResponse) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html -type AWSCloudFrontDistribution_CustomErrorResponse struct { +type Distribution_CustomErrorResponse struct { // ErrorCachingMinTTL AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSCloudFrontDistribution_CustomErrorResponse struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_CustomErrorResponse) AWSCloudFormationType() string { +func (r *Distribution_CustomErrorResponse) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.CustomErrorResponse" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_CustomErrorResponse) DependsOn() []string { +func (r *Distribution_CustomErrorResponse) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_CustomErrorResponse) SetDependsOn(dependencies []string) { +func (r *Distribution_CustomErrorResponse) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_CustomErrorResponse) Metadata() map[string]interface{} { +func (r *Distribution_CustomErrorResponse) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_CustomErrorResponse) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_CustomErrorResponse) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_CustomErrorResponse) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_CustomErrorResponse) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_CustomErrorResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_CustomErrorResponse) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-distribution_customoriginconfig.go b/cloudformation/cloudfront/aws-cloudfront-distribution_customoriginconfig.go similarity index 80% rename from cloudformation/resources/aws-cloudfront-distribution_customoriginconfig.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_customoriginconfig.go index c13f8922af..480ff460e6 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_customoriginconfig.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_customoriginconfig.go @@ -1,10 +1,12 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_CustomOriginConfig AWS CloudFormation Resource (AWS::CloudFront::Distribution.CustomOriginConfig) +// Distribution_CustomOriginConfig AWS CloudFormation Resource (AWS::CloudFront::Distribution.CustomOriginConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html -type AWSCloudFrontDistribution_CustomOriginConfig struct { +type Distribution_CustomOriginConfig struct { // HTTPPort AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSCloudFrontDistribution_CustomOriginConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_CustomOriginConfig) AWSCloudFormationType() string { +func (r *Distribution_CustomOriginConfig) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.CustomOriginConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_CustomOriginConfig) DependsOn() []string { +func (r *Distribution_CustomOriginConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_CustomOriginConfig) SetDependsOn(dependencies []string) { +func (r *Distribution_CustomOriginConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_CustomOriginConfig) Metadata() map[string]interface{} { +func (r *Distribution_CustomOriginConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_CustomOriginConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_CustomOriginConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_CustomOriginConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_CustomOriginConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_CustomOriginConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_CustomOriginConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-distribution_defaultcachebehavior.go b/cloudformation/cloudfront/aws-cloudfront-distribution_defaultcachebehavior.go similarity index 83% rename from cloudformation/resources/aws-cloudfront-distribution_defaultcachebehavior.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_defaultcachebehavior.go index 1409da5221..caabdd5ed4 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_defaultcachebehavior.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_defaultcachebehavior.go @@ -1,10 +1,12 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_DefaultCacheBehavior AWS CloudFormation Resource (AWS::CloudFront::Distribution.DefaultCacheBehavior) +// Distribution_DefaultCacheBehavior AWS CloudFormation Resource (AWS::CloudFront::Distribution.DefaultCacheBehavior) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html -type AWSCloudFrontDistribution_DefaultCacheBehavior struct { +type Distribution_DefaultCacheBehavior struct { // AllowedMethods AWS CloudFormation Property // Required: false @@ -34,12 +36,12 @@ type AWSCloudFrontDistribution_DefaultCacheBehavior struct { // ForwardedValues AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-forwardedvalues - ForwardedValues *AWSCloudFrontDistribution_ForwardedValues `json:"ForwardedValues,omitempty"` + ForwardedValues *Distribution_ForwardedValues `json:"ForwardedValues,omitempty"` // LambdaFunctionAssociations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-lambdafunctionassociations - LambdaFunctionAssociations []AWSCloudFrontDistribution_LambdaFunctionAssociation `json:"LambdaFunctionAssociations,omitempty"` + LambdaFunctionAssociations []Distribution_LambdaFunctionAssociation `json:"LambdaFunctionAssociations,omitempty"` // MaxTTL AWS CloudFormation Property // Required: false @@ -82,42 +84,42 @@ type AWSCloudFrontDistribution_DefaultCacheBehavior struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_DefaultCacheBehavior) AWSCloudFormationType() string { +func (r *Distribution_DefaultCacheBehavior) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.DefaultCacheBehavior" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_DefaultCacheBehavior) DependsOn() []string { +func (r *Distribution_DefaultCacheBehavior) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_DefaultCacheBehavior) SetDependsOn(dependencies []string) { +func (r *Distribution_DefaultCacheBehavior) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_DefaultCacheBehavior) Metadata() map[string]interface{} { +func (r *Distribution_DefaultCacheBehavior) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_DefaultCacheBehavior) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_DefaultCacheBehavior) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_DefaultCacheBehavior) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_DefaultCacheBehavior) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_DefaultCacheBehavior) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_DefaultCacheBehavior) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-distribution_distributionconfig.go b/cloudformation/cloudfront/aws-cloudfront-distribution_distributionconfig.go similarity index 79% rename from cloudformation/resources/aws-cloudfront-distribution_distributionconfig.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_distributionconfig.go index 05dbf931de..42be6f7081 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_distributionconfig.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_distributionconfig.go @@ -1,10 +1,12 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_DistributionConfig AWS CloudFormation Resource (AWS::CloudFront::Distribution.DistributionConfig) +// Distribution_DistributionConfig AWS CloudFormation Resource (AWS::CloudFront::Distribution.DistributionConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html -type AWSCloudFrontDistribution_DistributionConfig struct { +type Distribution_DistributionConfig struct { // Aliases AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSCloudFrontDistribution_DistributionConfig struct { // CacheBehaviors AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-cachebehaviors - CacheBehaviors []AWSCloudFrontDistribution_CacheBehavior `json:"CacheBehaviors,omitempty"` + CacheBehaviors []Distribution_CacheBehavior `json:"CacheBehaviors,omitempty"` // Comment AWS CloudFormation Property // Required: false @@ -24,12 +26,12 @@ type AWSCloudFrontDistribution_DistributionConfig struct { // CustomErrorResponses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-customerrorresponses - CustomErrorResponses []AWSCloudFrontDistribution_CustomErrorResponse `json:"CustomErrorResponses,omitempty"` + CustomErrorResponses []Distribution_CustomErrorResponse `json:"CustomErrorResponses,omitempty"` // DefaultCacheBehavior AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-defaultcachebehavior - DefaultCacheBehavior *AWSCloudFrontDistribution_DefaultCacheBehavior `json:"DefaultCacheBehavior,omitempty"` + DefaultCacheBehavior *Distribution_DefaultCacheBehavior `json:"DefaultCacheBehavior,omitempty"` // DefaultRootObject AWS CloudFormation Property // Required: false @@ -54,12 +56,12 @@ type AWSCloudFrontDistribution_DistributionConfig struct { // Logging AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-logging - Logging *AWSCloudFrontDistribution_Logging `json:"Logging,omitempty"` + Logging *Distribution_Logging `json:"Logging,omitempty"` // Origins AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-origins - Origins []AWSCloudFrontDistribution_Origin `json:"Origins,omitempty"` + Origins []Distribution_Origin `json:"Origins,omitempty"` // PriceClass AWS CloudFormation Property // Required: false @@ -69,12 +71,12 @@ type AWSCloudFrontDistribution_DistributionConfig struct { // Restrictions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-restrictions - Restrictions *AWSCloudFrontDistribution_Restrictions `json:"Restrictions,omitempty"` + Restrictions *Distribution_Restrictions `json:"Restrictions,omitempty"` // ViewerCertificate AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-viewercertificate - ViewerCertificate *AWSCloudFrontDistribution_ViewerCertificate `json:"ViewerCertificate,omitempty"` + ViewerCertificate *Distribution_ViewerCertificate `json:"ViewerCertificate,omitempty"` // WebACLId AWS CloudFormation Property // Required: false @@ -92,42 +94,42 @@ type AWSCloudFrontDistribution_DistributionConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_DistributionConfig) AWSCloudFormationType() string { +func (r *Distribution_DistributionConfig) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.DistributionConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_DistributionConfig) DependsOn() []string { +func (r *Distribution_DistributionConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_DistributionConfig) SetDependsOn(dependencies []string) { +func (r *Distribution_DistributionConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_DistributionConfig) Metadata() map[string]interface{} { +func (r *Distribution_DistributionConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_DistributionConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_DistributionConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_DistributionConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_DistributionConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_DistributionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_DistributionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-distribution_forwardedvalues.go b/cloudformation/cloudfront/aws-cloudfront-distribution_forwardedvalues.go similarity index 75% rename from cloudformation/resources/aws-cloudfront-distribution_forwardedvalues.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_forwardedvalues.go index 202f7b58db..bffcad898d 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_forwardedvalues.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_forwardedvalues.go @@ -1,15 +1,17 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_ForwardedValues AWS CloudFormation Resource (AWS::CloudFront::Distribution.ForwardedValues) +// Distribution_ForwardedValues AWS CloudFormation Resource (AWS::CloudFront::Distribution.ForwardedValues) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html -type AWSCloudFrontDistribution_ForwardedValues struct { +type Distribution_ForwardedValues struct { // Cookies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-cookies - Cookies *AWSCloudFrontDistribution_Cookies `json:"Cookies,omitempty"` + Cookies *Distribution_Cookies `json:"Cookies,omitempty"` // Headers AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSCloudFrontDistribution_ForwardedValues struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_ForwardedValues) AWSCloudFormationType() string { +func (r *Distribution_ForwardedValues) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.ForwardedValues" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_ForwardedValues) DependsOn() []string { +func (r *Distribution_ForwardedValues) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_ForwardedValues) SetDependsOn(dependencies []string) { +func (r *Distribution_ForwardedValues) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_ForwardedValues) Metadata() map[string]interface{} { +func (r *Distribution_ForwardedValues) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_ForwardedValues) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_ForwardedValues) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_ForwardedValues) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_ForwardedValues) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_ForwardedValues) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_ForwardedValues) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cloudfront/aws-cloudfront-distribution_georestriction.go b/cloudformation/cloudfront/aws-cloudfront-distribution_georestriction.go new file mode 100644 index 0000000000..ffd350840e --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_georestriction.go @@ -0,0 +1,70 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Distribution_GeoRestriction AWS CloudFormation Resource (AWS::CloudFront::Distribution.GeoRestriction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html +type Distribution_GeoRestriction struct { + + // Locations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-locations + Locations []string `json:"Locations,omitempty"` + + // RestrictionType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-restrictiontype + RestrictionType string `json:"RestrictionType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Distribution_GeoRestriction) AWSCloudFormationType() string { + return "AWS::CloudFront::Distribution.GeoRestriction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_GeoRestriction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_GeoRestriction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_GeoRestriction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_GeoRestriction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_GeoRestriction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_GeoRestriction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudfront/aws-cloudfront-distribution_lambdafunctionassociation.go b/cloudformation/cloudfront/aws-cloudfront-distribution_lambdafunctionassociation.go new file mode 100644 index 0000000000..993b4cada4 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_lambdafunctionassociation.go @@ -0,0 +1,70 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Distribution_LambdaFunctionAssociation AWS CloudFormation Resource (AWS::CloudFront::Distribution.LambdaFunctionAssociation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html +type Distribution_LambdaFunctionAssociation struct { + + // EventType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-eventtype + EventType string `json:"EventType,omitempty"` + + // LambdaFunctionARN AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-lambdafunctionarn + LambdaFunctionARN string `json:"LambdaFunctionARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Distribution_LambdaFunctionAssociation) AWSCloudFormationType() string { + return "AWS::CloudFront::Distribution.LambdaFunctionAssociation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_LambdaFunctionAssociation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_LambdaFunctionAssociation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_LambdaFunctionAssociation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_LambdaFunctionAssociation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_LambdaFunctionAssociation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_LambdaFunctionAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudfront-distribution_logging.go b/cloudformation/cloudfront/aws-cloudfront-distribution_logging.go similarity index 76% rename from cloudformation/resources/aws-cloudfront-distribution_logging.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_logging.go index afd83fc753..f5b7507c79 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_logging.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_logging.go @@ -1,10 +1,12 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_Logging AWS CloudFormation Resource (AWS::CloudFront::Distribution.Logging) +// Distribution_Logging AWS CloudFormation Resource (AWS::CloudFront::Distribution.Logging) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html -type AWSCloudFrontDistribution_Logging struct { +type Distribution_Logging struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSCloudFrontDistribution_Logging struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_Logging) AWSCloudFormationType() string { +func (r *Distribution_Logging) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.Logging" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_Logging) DependsOn() []string { +func (r *Distribution_Logging) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_Logging) SetDependsOn(dependencies []string) { +func (r *Distribution_Logging) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_Logging) Metadata() map[string]interface{} { +func (r *Distribution_Logging) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_Logging) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_Logging) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_Logging) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_Logging) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-distribution_origin.go b/cloudformation/cloudfront/aws-cloudfront-distribution_origin.go similarity index 75% rename from cloudformation/resources/aws-cloudfront-distribution_origin.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_origin.go index e74dbb3961..bfc65ef40f 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_origin.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_origin.go @@ -1,15 +1,17 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_Origin AWS CloudFormation Resource (AWS::CloudFront::Distribution.Origin) +// Distribution_Origin AWS CloudFormation Resource (AWS::CloudFront::Distribution.Origin) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html -type AWSCloudFrontDistribution_Origin struct { +type Distribution_Origin struct { // CustomOriginConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-customoriginconfig - CustomOriginConfig *AWSCloudFrontDistribution_CustomOriginConfig `json:"CustomOriginConfig,omitempty"` + CustomOriginConfig *Distribution_CustomOriginConfig `json:"CustomOriginConfig,omitempty"` // DomainName AWS CloudFormation Property // Required: true @@ -24,7 +26,7 @@ type AWSCloudFrontDistribution_Origin struct { // OriginCustomHeaders AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-origincustomheaders - OriginCustomHeaders []AWSCloudFrontDistribution_OriginCustomHeader `json:"OriginCustomHeaders,omitempty"` + OriginCustomHeaders []Distribution_OriginCustomHeader `json:"OriginCustomHeaders,omitempty"` // OriginPath AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSCloudFrontDistribution_Origin struct { // S3OriginConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-s3originconfig - S3OriginConfig *AWSCloudFrontDistribution_S3OriginConfig `json:"S3OriginConfig,omitempty"` + S3OriginConfig *Distribution_S3OriginConfig `json:"S3OriginConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,42 +49,42 @@ type AWSCloudFrontDistribution_Origin struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_Origin) AWSCloudFormationType() string { +func (r *Distribution_Origin) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.Origin" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_Origin) DependsOn() []string { +func (r *Distribution_Origin) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_Origin) SetDependsOn(dependencies []string) { +func (r *Distribution_Origin) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_Origin) Metadata() map[string]interface{} { +func (r *Distribution_Origin) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_Origin) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_Origin) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_Origin) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_Origin) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_Origin) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_Origin) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cloudfront/aws-cloudfront-distribution_origincustomheader.go b/cloudformation/cloudfront/aws-cloudfront-distribution_origincustomheader.go new file mode 100644 index 0000000000..957b792515 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_origincustomheader.go @@ -0,0 +1,70 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Distribution_OriginCustomHeader AWS CloudFormation Resource (AWS::CloudFront::Distribution.OriginCustomHeader) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html +type Distribution_OriginCustomHeader struct { + + // HeaderName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headername + HeaderName string `json:"HeaderName,omitempty"` + + // HeaderValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headervalue + HeaderValue string `json:"HeaderValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Distribution_OriginCustomHeader) AWSCloudFormationType() string { + return "AWS::CloudFront::Distribution.OriginCustomHeader" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_OriginCustomHeader) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_OriginCustomHeader) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_OriginCustomHeader) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_OriginCustomHeader) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_OriginCustomHeader) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_OriginCustomHeader) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudfront/aws-cloudfront-distribution_restrictions.go b/cloudformation/cloudfront/aws-cloudfront-distribution_restrictions.go new file mode 100644 index 0000000000..515e78ec20 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_restrictions.go @@ -0,0 +1,65 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Distribution_Restrictions AWS CloudFormation Resource (AWS::CloudFront::Distribution.Restrictions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html +type Distribution_Restrictions struct { + + // GeoRestriction AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html#cfn-cloudfront-distribution-restrictions-georestriction + GeoRestriction *Distribution_GeoRestriction `json:"GeoRestriction,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Distribution_Restrictions) AWSCloudFormationType() string { + return "AWS::CloudFront::Distribution.Restrictions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_Restrictions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_Restrictions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_Restrictions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_Restrictions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_Restrictions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_Restrictions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudfront/aws-cloudfront-distribution_s3originconfig.go b/cloudformation/cloudfront/aws-cloudfront-distribution_s3originconfig.go new file mode 100644 index 0000000000..921eeb56f1 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_s3originconfig.go @@ -0,0 +1,65 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Distribution_S3OriginConfig AWS CloudFormation Resource (AWS::CloudFront::Distribution.S3OriginConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html +type Distribution_S3OriginConfig struct { + + // OriginAccessIdentity AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html#cfn-cloudfront-distribution-s3originconfig-originaccessidentity + OriginAccessIdentity string `json:"OriginAccessIdentity,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Distribution_S3OriginConfig) AWSCloudFormationType() string { + return "AWS::CloudFront::Distribution.S3OriginConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_S3OriginConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Distribution_S3OriginConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_S3OriginConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Distribution_S3OriginConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_S3OriginConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Distribution_S3OriginConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudfront-distribution_viewercertificate.go b/cloudformation/cloudfront/aws-cloudfront-distribution_viewercertificate.go similarity index 79% rename from cloudformation/resources/aws-cloudfront-distribution_viewercertificate.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_viewercertificate.go index 9aadbb3e77..b9dbb5edae 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_viewercertificate.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_viewercertificate.go @@ -1,10 +1,12 @@ -package resources +package cloudfront -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudFrontDistribution_ViewerCertificate AWS CloudFormation Resource (AWS::CloudFront::Distribution.ViewerCertificate) +// Distribution_ViewerCertificate AWS CloudFormation Resource (AWS::CloudFront::Distribution.ViewerCertificate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html -type AWSCloudFrontDistribution_ViewerCertificate struct { +type Distribution_ViewerCertificate struct { // AcmCertificateArn AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSCloudFrontDistribution_ViewerCertificate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_ViewerCertificate) AWSCloudFormationType() string { +func (r *Distribution_ViewerCertificate) AWSCloudFormationType() string { return "AWS::CloudFront::Distribution.ViewerCertificate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_ViewerCertificate) DependsOn() []string { +func (r *Distribution_ViewerCertificate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_ViewerCertificate) SetDependsOn(dependencies []string) { +func (r *Distribution_ViewerCertificate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_ViewerCertificate) Metadata() map[string]interface{} { +func (r *Distribution_ViewerCertificate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_ViewerCertificate) SetMetadata(metadata map[string]interface{}) { +func (r *Distribution_ViewerCertificate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_ViewerCertificate) DeletionPolicy() policies.DeletionPolicy { +func (r *Distribution_ViewerCertificate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_ViewerCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_ViewerCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cloudfront/aws-cloudfront-streamingdistribution.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution.go new file mode 100644 index 0000000000..f4b308f88d --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution.go @@ -0,0 +1,130 @@ +package cloudfront + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) + +// StreamingDistribution AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html +type StreamingDistribution struct { + + // StreamingDistributionConfig AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig + StreamingDistributionConfig *StreamingDistribution_StreamingDistributionConfig `json:"StreamingDistributionConfig,omitempty"` + + // Tags AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *StreamingDistribution) AWSCloudFormationType() string { + return "AWS::CloudFront::StreamingDistribution" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r StreamingDistribution) MarshalJSON() ([]byte, error) { + type Properties StreamingDistribution + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *StreamingDistribution) UnmarshalJSON(b []byte) error { + type Properties StreamingDistribution + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = StreamingDistribution(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_logging.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_logging.go new file mode 100644 index 0000000000..4f0f9c9c75 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_logging.go @@ -0,0 +1,75 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// StreamingDistribution_Logging AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.Logging) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html +type StreamingDistribution_Logging struct { + + // Bucket AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-bucket + Bucket string `json:"Bucket,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-enabled + Enabled bool `json:"Enabled"` + + // Prefix AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-prefix + Prefix string `json:"Prefix,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *StreamingDistribution_Logging) AWSCloudFormationType() string { + return "AWS::CloudFront::StreamingDistribution.Logging" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution_Logging) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution_Logging) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution_Logging) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution_Logging) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution_Logging) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_s3origin.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_s3origin.go new file mode 100644 index 0000000000..f6dda786b1 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_s3origin.go @@ -0,0 +1,70 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// StreamingDistribution_S3Origin AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.S3Origin) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html +type StreamingDistribution_S3Origin struct { + + // DomainName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-domainname + DomainName string `json:"DomainName,omitempty"` + + // OriginAccessIdentity AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-originaccessidentity + OriginAccessIdentity string `json:"OriginAccessIdentity,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *StreamingDistribution_S3Origin) AWSCloudFormationType() string { + return "AWS::CloudFront::StreamingDistribution.S3Origin" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution_S3Origin) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution_S3Origin) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution_S3Origin) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution_S3Origin) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution_S3Origin) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution_S3Origin) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go new file mode 100644 index 0000000000..262dcf46ff --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go @@ -0,0 +1,95 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// StreamingDistribution_StreamingDistributionConfig AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.StreamingDistributionConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html +type StreamingDistribution_StreamingDistributionConfig struct { + + // Aliases AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-aliases + Aliases []string `json:"Aliases,omitempty"` + + // Comment AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-comment + Comment string `json:"Comment,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-enabled + Enabled bool `json:"Enabled"` + + // Logging AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-logging + Logging *StreamingDistribution_Logging `json:"Logging,omitempty"` + + // PriceClass AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-priceclass + PriceClass string `json:"PriceClass,omitempty"` + + // S3Origin AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-s3origin + S3Origin *StreamingDistribution_S3Origin `json:"S3Origin,omitempty"` + + // TrustedSigners AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-trustedsigners + TrustedSigners *StreamingDistribution_TrustedSigners `json:"TrustedSigners,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *StreamingDistribution_StreamingDistributionConfig) AWSCloudFormationType() string { + return "AWS::CloudFront::StreamingDistribution.StreamingDistributionConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution_StreamingDistributionConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution_StreamingDistributionConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution_StreamingDistributionConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution_StreamingDistributionConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution_StreamingDistributionConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution_StreamingDistributionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_trustedsigners.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_trustedsigners.go new file mode 100644 index 0000000000..df15e70f10 --- /dev/null +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_trustedsigners.go @@ -0,0 +1,70 @@ +package cloudfront + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// StreamingDistribution_TrustedSigners AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.TrustedSigners) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html +type StreamingDistribution_TrustedSigners struct { + + // AwsAccountNumbers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-awsaccountnumbers + AwsAccountNumbers []string `json:"AwsAccountNumbers,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-enabled + Enabled bool `json:"Enabled"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *StreamingDistribution_TrustedSigners) AWSCloudFormationType() string { + return "AWS::CloudFront::StreamingDistribution.TrustedSigners" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution_TrustedSigners) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StreamingDistribution_TrustedSigners) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution_TrustedSigners) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StreamingDistribution_TrustedSigners) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution_TrustedSigners) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StreamingDistribution_TrustedSigners) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudtrail-trail.go b/cloudformation/cloudtrail/aws-cloudtrail-trail.go similarity index 86% rename from cloudformation/resources/aws-cloudtrail-trail.go rename to cloudformation/cloudtrail/aws-cloudtrail-trail.go index 67b8548924..820f71354a 100644 --- a/cloudformation/resources/aws-cloudtrail-trail.go +++ b/cloudformation/cloudtrail/aws-cloudtrail-trail.go @@ -1,15 +1,17 @@ -package resources +package cloudtrail import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSCloudTrailTrail AWS CloudFormation Resource (AWS::CloudTrail::Trail) +// Trail AWS CloudFormation Resource (AWS::CloudTrail::Trail) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html -type AWSCloudTrailTrail struct { +type Trail struct { // CloudWatchLogsLogGroupArn AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSCloudTrailTrail struct { // EventSelectors AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-eventselectors - EventSelectors []AWSCloudTrailTrail_EventSelector `json:"EventSelectors,omitempty"` + EventSelectors []Trail_EventSelector `json:"EventSelectors,omitempty"` // IncludeGlobalServiceEvents AWS CloudFormation Property // Required: false @@ -69,7 +71,7 @@ type AWSCloudTrailTrail struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TrailName AWS CloudFormation Property // Required: false @@ -87,50 +89,50 @@ type AWSCloudTrailTrail struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudTrailTrail) AWSCloudFormationType() string { +func (r *Trail) AWSCloudFormationType() string { return "AWS::CloudTrail::Trail" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudTrailTrail) DependsOn() []string { +func (r *Trail) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudTrailTrail) SetDependsOn(dependencies []string) { +func (r *Trail) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudTrailTrail) Metadata() map[string]interface{} { +func (r *Trail) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudTrailTrail) SetMetadata(metadata map[string]interface{}) { +func (r *Trail) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudTrailTrail) DeletionPolicy() policies.DeletionPolicy { +func (r *Trail) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudTrailTrail) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Trail) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudTrailTrail) MarshalJSON() ([]byte, error) { - type Properties AWSCloudTrailTrail +func (r Trail) MarshalJSON() ([]byte, error) { + type Properties Trail return json.Marshal(&struct { Type string Properties Properties @@ -148,8 +150,8 @@ func (r AWSCloudTrailTrail) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudTrailTrail) UnmarshalJSON(b []byte) error { - type Properties AWSCloudTrailTrail +func (r *Trail) UnmarshalJSON(b []byte) error { + type Properties Trail res := &struct { Type string Properties *Properties @@ -168,7 +170,7 @@ func (r *AWSCloudTrailTrail) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudTrailTrail(*res.Properties) + *r = Trail(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cloudtrail/aws-cloudtrail-trail_dataresource.go b/cloudformation/cloudtrail/aws-cloudtrail-trail_dataresource.go new file mode 100644 index 0000000000..8504cefca5 --- /dev/null +++ b/cloudformation/cloudtrail/aws-cloudtrail-trail_dataresource.go @@ -0,0 +1,70 @@ +package cloudtrail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Trail_DataResource AWS CloudFormation Resource (AWS::CloudTrail::Trail.DataResource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html +type Trail_DataResource struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html#cfn-cloudtrail-trail-dataresource-type + Type string `json:"Type,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html#cfn-cloudtrail-trail-dataresource-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Trail_DataResource) AWSCloudFormationType() string { + return "AWS::CloudTrail::Trail.DataResource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Trail_DataResource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Trail_DataResource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Trail_DataResource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Trail_DataResource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Trail_DataResource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Trail_DataResource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudtrail/aws-cloudtrail-trail_eventselector.go b/cloudformation/cloudtrail/aws-cloudtrail-trail_eventselector.go new file mode 100644 index 0000000000..7b93757dca --- /dev/null +++ b/cloudformation/cloudtrail/aws-cloudtrail-trail_eventselector.go @@ -0,0 +1,75 @@ +package cloudtrail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Trail_EventSelector AWS CloudFormation Resource (AWS::CloudTrail::Trail.EventSelector) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html +type Trail_EventSelector struct { + + // DataResources AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-dataresources + DataResources []Trail_DataResource `json:"DataResources,omitempty"` + + // IncludeManagementEvents AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-includemanagementevents + IncludeManagementEvents bool `json:"IncludeManagementEvents,omitempty"` + + // ReadWriteType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-readwritetype + ReadWriteType string `json:"ReadWriteType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Trail_EventSelector) AWSCloudFormationType() string { + return "AWS::CloudTrail::Trail.EventSelector" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Trail_EventSelector) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Trail_EventSelector) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Trail_EventSelector) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Trail_EventSelector) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Trail_EventSelector) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Trail_EventSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudwatch-alarm.go b/cloudformation/cloudwatch/aws-cloudwatch-alarm.go similarity index 89% rename from cloudformation/resources/aws-cloudwatch-alarm.go rename to cloudformation/cloudwatch/aws-cloudwatch-alarm.go index b759285506..f900e9c1ae 100644 --- a/cloudformation/resources/aws-cloudwatch-alarm.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-alarm.go @@ -1,15 +1,16 @@ -package resources +package cloudwatch import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCloudWatchAlarm AWS CloudFormation Resource (AWS::CloudWatch::Alarm) +// Alarm AWS CloudFormation Resource (AWS::CloudWatch::Alarm) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html -type AWSCloudWatchAlarm struct { +type Alarm struct { // ActionsEnabled AWS CloudFormation Property // Required: false @@ -44,7 +45,7 @@ type AWSCloudWatchAlarm struct { // Dimensions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-dimension - Dimensions []AWSCloudWatchAlarm_Dimension `json:"Dimensions,omitempty"` + Dimensions []Alarm_Dimension `json:"Dimensions,omitempty"` // EvaluateLowSampleCountPercentile AWS CloudFormation Property // Required: false @@ -74,7 +75,7 @@ type AWSCloudWatchAlarm struct { // Metrics AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarm-metrics - Metrics []AWSCloudWatchAlarm_MetricDataQuery `json:"Metrics,omitempty"` + Metrics []Alarm_MetricDataQuery `json:"Metrics,omitempty"` // Namespace AWS CloudFormation Property // Required: false @@ -127,50 +128,50 @@ type AWSCloudWatchAlarm struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAlarm) AWSCloudFormationType() string { +func (r *Alarm) AWSCloudFormationType() string { return "AWS::CloudWatch::Alarm" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm) DependsOn() []string { +func (r *Alarm) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm) SetDependsOn(dependencies []string) { +func (r *Alarm) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm) Metadata() map[string]interface{} { +func (r *Alarm) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm) SetMetadata(metadata map[string]interface{}) { +func (r *Alarm) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm) DeletionPolicy() policies.DeletionPolicy { +func (r *Alarm) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alarm) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudWatchAlarm) MarshalJSON() ([]byte, error) { - type Properties AWSCloudWatchAlarm +func (r Alarm) MarshalJSON() ([]byte, error) { + type Properties Alarm return json.Marshal(&struct { Type string Properties Properties @@ -188,8 +189,8 @@ func (r AWSCloudWatchAlarm) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudWatchAlarm) UnmarshalJSON(b []byte) error { - type Properties AWSCloudWatchAlarm +func (r *Alarm) UnmarshalJSON(b []byte) error { + type Properties Alarm res := &struct { Type string Properties *Properties @@ -208,7 +209,7 @@ func (r *AWSCloudWatchAlarm) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudWatchAlarm(*res.Properties) + *r = Alarm(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cloudwatch/aws-cloudwatch-alarm_dimension.go b/cloudformation/cloudwatch/aws-cloudwatch-alarm_dimension.go new file mode 100644 index 0000000000..b0d85df192 --- /dev/null +++ b/cloudformation/cloudwatch/aws-cloudwatch-alarm_dimension.go @@ -0,0 +1,70 @@ +package cloudwatch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Alarm_Dimension AWS CloudFormation Resource (AWS::CloudWatch::Alarm.Dimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html +type Alarm_Dimension struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Alarm_Dimension) AWSCloudFormationType() string { + return "AWS::CloudWatch::Alarm.Dimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Alarm_Dimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Alarm_Dimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Alarm_Dimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Alarm_Dimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Alarm_Dimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Alarm_Dimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudwatch-alarm_metric.go b/cloudformation/cloudwatch/aws-cloudwatch-alarm_metric.go similarity index 75% rename from cloudformation/resources/aws-cloudwatch-alarm_metric.go rename to cloudformation/cloudwatch/aws-cloudwatch-alarm_metric.go index cdacc6f330..0ad93d892b 100644 --- a/cloudformation/resources/aws-cloudwatch-alarm_metric.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-alarm_metric.go @@ -1,15 +1,17 @@ -package resources +package cloudwatch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudWatchAlarm_Metric AWS CloudFormation Resource (AWS::CloudWatch::Alarm.Metric) +// Alarm_Metric AWS CloudFormation Resource (AWS::CloudWatch::Alarm.Metric) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html -type AWSCloudWatchAlarm_Metric struct { +type Alarm_Metric struct { // Dimensions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html#cfn-cloudwatch-alarm-metric-dimensions - Dimensions []AWSCloudWatchAlarm_Dimension `json:"Dimensions,omitempty"` + Dimensions []Alarm_Dimension `json:"Dimensions,omitempty"` // MetricName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCloudWatchAlarm_Metric struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAlarm_Metric) AWSCloudFormationType() string { +func (r *Alarm_Metric) AWSCloudFormationType() string { return "AWS::CloudWatch::Alarm.Metric" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm_Metric) DependsOn() []string { +func (r *Alarm_Metric) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm_Metric) SetDependsOn(dependencies []string) { +func (r *Alarm_Metric) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm_Metric) Metadata() map[string]interface{} { +func (r *Alarm_Metric) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm_Metric) SetMetadata(metadata map[string]interface{}) { +func (r *Alarm_Metric) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm_Metric) DeletionPolicy() policies.DeletionPolicy { +func (r *Alarm_Metric) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm_Metric) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alarm_Metric) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudwatch-alarm_metricdataquery.go b/cloudformation/cloudwatch/aws-cloudwatch-alarm_metricdataquery.go similarity index 77% rename from cloudformation/resources/aws-cloudwatch-alarm_metricdataquery.go rename to cloudformation/cloudwatch/aws-cloudwatch-alarm_metricdataquery.go index 636eaf2e91..d47f1e0e3f 100644 --- a/cloudformation/resources/aws-cloudwatch-alarm_metricdataquery.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-alarm_metricdataquery.go @@ -1,10 +1,12 @@ -package resources +package cloudwatch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudWatchAlarm_MetricDataQuery AWS CloudFormation Resource (AWS::CloudWatch::Alarm.MetricDataQuery) +// Alarm_MetricDataQuery AWS CloudFormation Resource (AWS::CloudWatch::Alarm.MetricDataQuery) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html -type AWSCloudWatchAlarm_MetricDataQuery struct { +type Alarm_MetricDataQuery struct { // Expression AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSCloudWatchAlarm_MetricDataQuery struct { // MetricStat AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-metricstat - MetricStat *AWSCloudWatchAlarm_MetricStat `json:"MetricStat,omitempty"` + MetricStat *Alarm_MetricStat `json:"MetricStat,omitempty"` // ReturnData AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSCloudWatchAlarm_MetricDataQuery struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAlarm_MetricDataQuery) AWSCloudFormationType() string { +func (r *Alarm_MetricDataQuery) AWSCloudFormationType() string { return "AWS::CloudWatch::Alarm.MetricDataQuery" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm_MetricDataQuery) DependsOn() []string { +func (r *Alarm_MetricDataQuery) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm_MetricDataQuery) SetDependsOn(dependencies []string) { +func (r *Alarm_MetricDataQuery) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm_MetricDataQuery) Metadata() map[string]interface{} { +func (r *Alarm_MetricDataQuery) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm_MetricDataQuery) SetMetadata(metadata map[string]interface{}) { +func (r *Alarm_MetricDataQuery) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm_MetricDataQuery) DeletionPolicy() policies.DeletionPolicy { +func (r *Alarm_MetricDataQuery) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm_MetricDataQuery) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alarm_MetricDataQuery) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudwatch-alarm_metricstat.go b/cloudformation/cloudwatch/aws-cloudwatch-alarm_metricstat.go similarity index 76% rename from cloudformation/resources/aws-cloudwatch-alarm_metricstat.go rename to cloudformation/cloudwatch/aws-cloudwatch-alarm_metricstat.go index 187af5f286..001ed6e9bb 100644 --- a/cloudformation/resources/aws-cloudwatch-alarm_metricstat.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-alarm_metricstat.go @@ -1,15 +1,17 @@ -package resources +package cloudwatch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudWatchAlarm_MetricStat AWS CloudFormation Resource (AWS::CloudWatch::Alarm.MetricStat) +// Alarm_MetricStat AWS CloudFormation Resource (AWS::CloudWatch::Alarm.MetricStat) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html -type AWSCloudWatchAlarm_MetricStat struct { +type Alarm_MetricStat struct { // Metric AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-metric - Metric *AWSCloudWatchAlarm_Metric `json:"Metric,omitempty"` + Metric *Alarm_Metric `json:"Metric,omitempty"` // Period AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSCloudWatchAlarm_MetricStat struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAlarm_MetricStat) AWSCloudFormationType() string { +func (r *Alarm_MetricStat) AWSCloudFormationType() string { return "AWS::CloudWatch::Alarm.MetricStat" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm_MetricStat) DependsOn() []string { +func (r *Alarm_MetricStat) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm_MetricStat) SetDependsOn(dependencies []string) { +func (r *Alarm_MetricStat) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm_MetricStat) Metadata() map[string]interface{} { +func (r *Alarm_MetricStat) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm_MetricStat) SetMetadata(metadata map[string]interface{}) { +func (r *Alarm_MetricStat) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm_MetricStat) DeletionPolicy() policies.DeletionPolicy { +func (r *Alarm_MetricStat) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm_MetricStat) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alarm_MetricStat) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudwatch-anomalydetector.go b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector.go similarity index 78% rename from cloudformation/resources/aws-cloudwatch-anomalydetector.go rename to cloudformation/cloudwatch/aws-cloudwatch-anomalydetector.go index e363c8276c..ee68923fe4 100644 --- a/cloudformation/resources/aws-cloudwatch-anomalydetector.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector.go @@ -1,25 +1,26 @@ -package resources +package cloudwatch import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCloudWatchAnomalyDetector AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector) +// AnomalyDetector AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html -type AWSCloudWatchAnomalyDetector struct { +type AnomalyDetector struct { // Configuration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-configuration - Configuration *AWSCloudWatchAnomalyDetector_Configuration `json:"Configuration,omitempty"` + Configuration *AnomalyDetector_Configuration `json:"Configuration,omitempty"` // Dimensions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-dimensions - Dimensions []AWSCloudWatchAnomalyDetector_Dimension `json:"Dimensions,omitempty"` + Dimensions []AnomalyDetector_Dimension `json:"Dimensions,omitempty"` // MetricName AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSCloudWatchAnomalyDetector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAnomalyDetector) AWSCloudFormationType() string { +func (r *AnomalyDetector) AWSCloudFormationType() string { return "AWS::CloudWatch::AnomalyDetector" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAnomalyDetector) DependsOn() []string { +func (r *AnomalyDetector) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAnomalyDetector) SetDependsOn(dependencies []string) { +func (r *AnomalyDetector) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAnomalyDetector) Metadata() map[string]interface{} { +func (r *AnomalyDetector) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAnomalyDetector) SetMetadata(metadata map[string]interface{}) { +func (r *AnomalyDetector) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAnomalyDetector) DeletionPolicy() policies.DeletionPolicy { +func (r *AnomalyDetector) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAnomalyDetector) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AnomalyDetector) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudWatchAnomalyDetector) MarshalJSON() ([]byte, error) { - type Properties AWSCloudWatchAnomalyDetector +func (r AnomalyDetector) MarshalJSON() ([]byte, error) { + type Properties AnomalyDetector return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSCloudWatchAnomalyDetector) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudWatchAnomalyDetector) UnmarshalJSON(b []byte) error { - type Properties AWSCloudWatchAnomalyDetector +func (r *AnomalyDetector) UnmarshalJSON(b []byte) error { + type Properties AnomalyDetector res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSCloudWatchAnomalyDetector) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudWatchAnomalyDetector(*res.Properties) + *r = AnomalyDetector(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_configuration.go b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_configuration.go new file mode 100644 index 0000000000..fb6eb19c48 --- /dev/null +++ b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_configuration.go @@ -0,0 +1,70 @@ +package cloudwatch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AnomalyDetector_Configuration AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Configuration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html +type AnomalyDetector_Configuration struct { + + // ExcludedTimeRanges AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html#cfn-cloudwatch-anomalydetector-configuration-excludedtimeranges + ExcludedTimeRanges []AnomalyDetector_Range `json:"ExcludedTimeRanges,omitempty"` + + // MetricTimeZone AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html#cfn-cloudwatch-anomalydetector-configuration-metrictimezone + MetricTimeZone string `json:"MetricTimeZone,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AnomalyDetector_Configuration) AWSCloudFormationType() string { + return "AWS::CloudWatch::AnomalyDetector.Configuration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AnomalyDetector_Configuration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AnomalyDetector_Configuration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AnomalyDetector_Configuration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AnomalyDetector_Configuration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AnomalyDetector_Configuration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AnomalyDetector_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_dimension.go b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_dimension.go new file mode 100644 index 0000000000..8380047d52 --- /dev/null +++ b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_dimension.go @@ -0,0 +1,70 @@ +package cloudwatch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AnomalyDetector_Dimension AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Dimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html +type AnomalyDetector_Dimension struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html#cfn-cloudwatch-anomalydetector-dimension-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html#cfn-cloudwatch-anomalydetector-dimension-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AnomalyDetector_Dimension) AWSCloudFormationType() string { + return "AWS::CloudWatch::AnomalyDetector.Dimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AnomalyDetector_Dimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AnomalyDetector_Dimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AnomalyDetector_Dimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AnomalyDetector_Dimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AnomalyDetector_Dimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AnomalyDetector_Dimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_range.go b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_range.go new file mode 100644 index 0000000000..a627d45f32 --- /dev/null +++ b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_range.go @@ -0,0 +1,70 @@ +package cloudwatch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// AnomalyDetector_Range AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Range) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html +type AnomalyDetector_Range struct { + + // EndTime AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html#cfn-cloudwatch-anomalydetector-range-endtime + EndTime string `json:"EndTime,omitempty"` + + // StartTime AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html#cfn-cloudwatch-anomalydetector-range-starttime + StartTime string `json:"StartTime,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *AnomalyDetector_Range) AWSCloudFormationType() string { + return "AWS::CloudWatch::AnomalyDetector.Range" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AnomalyDetector_Range) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *AnomalyDetector_Range) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AnomalyDetector_Range) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *AnomalyDetector_Range) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AnomalyDetector_Range) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *AnomalyDetector_Range) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cloudwatch-dashboard.go b/cloudformation/cloudwatch/aws-cloudwatch-dashboard.go similarity index 80% rename from cloudformation/resources/aws-cloudwatch-dashboard.go rename to cloudformation/cloudwatch/aws-cloudwatch-dashboard.go index 28ad8ecd9d..117d138df6 100644 --- a/cloudformation/resources/aws-cloudwatch-dashboard.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-dashboard.go @@ -1,15 +1,16 @@ -package resources +package cloudwatch import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCloudWatchDashboard AWS CloudFormation Resource (AWS::CloudWatch::Dashboard) +// Dashboard AWS CloudFormation Resource (AWS::CloudWatch::Dashboard) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html -type AWSCloudWatchDashboard struct { +type Dashboard struct { // DashboardBody AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSCloudWatchDashboard struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchDashboard) AWSCloudFormationType() string { +func (r *Dashboard) AWSCloudFormationType() string { return "AWS::CloudWatch::Dashboard" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchDashboard) DependsOn() []string { +func (r *Dashboard) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchDashboard) SetDependsOn(dependencies []string) { +func (r *Dashboard) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchDashboard) Metadata() map[string]interface{} { +func (r *Dashboard) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchDashboard) SetMetadata(metadata map[string]interface{}) { +func (r *Dashboard) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchDashboard) DeletionPolicy() policies.DeletionPolicy { +func (r *Dashboard) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchDashboard) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dashboard) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudWatchDashboard) MarshalJSON() ([]byte, error) { - type Properties AWSCloudWatchDashboard +func (r Dashboard) MarshalJSON() ([]byte, error) { + type Properties Dashboard return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSCloudWatchDashboard) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudWatchDashboard) UnmarshalJSON(b []byte) error { - type Properties AWSCloudWatchDashboard +func (r *Dashboard) UnmarshalJSON(b []byte) error { + type Properties Dashboard res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSCloudWatchDashboard) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudWatchDashboard(*res.Properties) + *r = Dashboard(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-codebuild-project.go b/cloudformation/codebuild/aws-codebuild-project.go similarity index 81% rename from cloudformation/resources/aws-codebuild-project.go rename to cloudformation/codebuild/aws-codebuild-project.go index 7bc9fe0fed..1fbb55888e 100644 --- a/cloudformation/resources/aws-codebuild-project.go +++ b/cloudformation/codebuild/aws-codebuild-project.go @@ -1,20 +1,22 @@ -package resources +package codebuild import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSCodeBuildProject AWS CloudFormation Resource (AWS::CodeBuild::Project) +// Project AWS CloudFormation Resource (AWS::CodeBuild::Project) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html -type AWSCodeBuildProject struct { +type Project struct { // Artifacts AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-artifacts - Artifacts *AWSCodeBuildProject_Artifacts `json:"Artifacts,omitempty"` + Artifacts *Project_Artifacts `json:"Artifacts,omitempty"` // BadgeEnabled AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSCodeBuildProject struct { // Cache AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-cache - Cache *AWSCodeBuildProject_ProjectCache `json:"Cache,omitempty"` + Cache *Project_ProjectCache `json:"Cache,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -39,12 +41,12 @@ type AWSCodeBuildProject struct { // Environment AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-environment - Environment *AWSCodeBuildProject_Environment `json:"Environment,omitempty"` + Environment *Project_Environment `json:"Environment,omitempty"` // LogsConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-logsconfig - LogsConfig *AWSCodeBuildProject_LogsConfig `json:"LogsConfig,omitempty"` + LogsConfig *Project_LogsConfig `json:"LogsConfig,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -59,17 +61,17 @@ type AWSCodeBuildProject struct { // SecondaryArtifacts AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondaryartifacts - SecondaryArtifacts []AWSCodeBuildProject_Artifacts `json:"SecondaryArtifacts,omitempty"` + SecondaryArtifacts []Project_Artifacts `json:"SecondaryArtifacts,omitempty"` // SecondarySourceVersions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondarysourceversions - SecondarySourceVersions []AWSCodeBuildProject_ProjectSourceVersion `json:"SecondarySourceVersions,omitempty"` + SecondarySourceVersions []Project_ProjectSourceVersion `json:"SecondarySourceVersions,omitempty"` // SecondarySources AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondarysources - SecondarySources []AWSCodeBuildProject_Source `json:"SecondarySources,omitempty"` + SecondarySources []Project_Source `json:"SecondarySources,omitempty"` // ServiceRole AWS CloudFormation Property // Required: true @@ -79,7 +81,7 @@ type AWSCodeBuildProject struct { // Source AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-source - Source *AWSCodeBuildProject_Source `json:"Source,omitempty"` + Source *Project_Source `json:"Source,omitempty"` // SourceVersion AWS CloudFormation Property // Required: false @@ -89,7 +91,7 @@ type AWSCodeBuildProject struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TimeoutInMinutes AWS CloudFormation Property // Required: false @@ -99,12 +101,12 @@ type AWSCodeBuildProject struct { // Triggers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-triggers - Triggers *AWSCodeBuildProject_ProjectTriggers `json:"Triggers,omitempty"` + Triggers *Project_ProjectTriggers `json:"Triggers,omitempty"` // VpcConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-vpcconfig - VpcConfig *AWSCodeBuildProject_VpcConfig `json:"VpcConfig,omitempty"` + VpcConfig *Project_VpcConfig `json:"VpcConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -117,50 +119,50 @@ type AWSCodeBuildProject struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject) AWSCloudFormationType() string { +func (r *Project) AWSCloudFormationType() string { return "AWS::CodeBuild::Project" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject) DependsOn() []string { +func (r *Project) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject) SetDependsOn(dependencies []string) { +func (r *Project) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject) Metadata() map[string]interface{} { +func (r *Project) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject) SetMetadata(metadata map[string]interface{}) { +func (r *Project) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject) DeletionPolicy() policies.DeletionPolicy { +func (r *Project) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodeBuildProject) MarshalJSON() ([]byte, error) { - type Properties AWSCodeBuildProject +func (r Project) MarshalJSON() ([]byte, error) { + type Properties Project return json.Marshal(&struct { Type string Properties Properties @@ -178,8 +180,8 @@ func (r AWSCodeBuildProject) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodeBuildProject) UnmarshalJSON(b []byte) error { - type Properties AWSCodeBuildProject +func (r *Project) UnmarshalJSON(b []byte) error { + type Properties Project res := &struct { Type string Properties *Properties @@ -198,7 +200,7 @@ func (r *AWSCodeBuildProject) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodeBuildProject(*res.Properties) + *r = Project(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-codebuild-project_artifacts.go b/cloudformation/codebuild/aws-codebuild-project_artifacts.go similarity index 84% rename from cloudformation/resources/aws-codebuild-project_artifacts.go rename to cloudformation/codebuild/aws-codebuild-project_artifacts.go index 3d8d97db27..6a6b6b14c9 100644 --- a/cloudformation/resources/aws-codebuild-project_artifacts.go +++ b/cloudformation/codebuild/aws-codebuild-project_artifacts.go @@ -1,10 +1,12 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_Artifacts AWS CloudFormation Resource (AWS::CodeBuild::Project.Artifacts) +// Project_Artifacts AWS CloudFormation Resource (AWS::CodeBuild::Project.Artifacts) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html -type AWSCodeBuildProject_Artifacts struct { +type Project_Artifacts struct { // ArtifactIdentifier AWS CloudFormation Property // Required: false @@ -62,42 +64,42 @@ type AWSCodeBuildProject_Artifacts struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_Artifacts) AWSCloudFormationType() string { +func (r *Project_Artifacts) AWSCloudFormationType() string { return "AWS::CodeBuild::Project.Artifacts" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_Artifacts) DependsOn() []string { +func (r *Project_Artifacts) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_Artifacts) SetDependsOn(dependencies []string) { +func (r *Project_Artifacts) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_Artifacts) Metadata() map[string]interface{} { +func (r *Project_Artifacts) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_Artifacts) SetMetadata(metadata map[string]interface{}) { +func (r *Project_Artifacts) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_Artifacts) DeletionPolicy() policies.DeletionPolicy { +func (r *Project_Artifacts) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_Artifacts) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_Artifacts) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_cloudwatchlogsconfig.go b/cloudformation/codebuild/aws-codebuild-project_cloudwatchlogsconfig.go similarity index 75% rename from cloudformation/resources/aws-codebuild-project_cloudwatchlogsconfig.go rename to cloudformation/codebuild/aws-codebuild-project_cloudwatchlogsconfig.go index fac3808713..85b30de1cc 100644 --- a/cloudformation/resources/aws-codebuild-project_cloudwatchlogsconfig.go +++ b/cloudformation/codebuild/aws-codebuild-project_cloudwatchlogsconfig.go @@ -1,10 +1,12 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_CloudWatchLogsConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.CloudWatchLogsConfig) +// Project_CloudWatchLogsConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.CloudWatchLogsConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html -type AWSCodeBuildProject_CloudWatchLogsConfig struct { +type Project_CloudWatchLogsConfig struct { // GroupName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeBuildProject_CloudWatchLogsConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_CloudWatchLogsConfig) AWSCloudFormationType() string { +func (r *Project_CloudWatchLogsConfig) AWSCloudFormationType() string { return "AWS::CodeBuild::Project.CloudWatchLogsConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_CloudWatchLogsConfig) DependsOn() []string { +func (r *Project_CloudWatchLogsConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_CloudWatchLogsConfig) SetDependsOn(dependencies []string) { +func (r *Project_CloudWatchLogsConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_CloudWatchLogsConfig) Metadata() map[string]interface{} { +func (r *Project_CloudWatchLogsConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_CloudWatchLogsConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Project_CloudWatchLogsConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_CloudWatchLogsConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Project_CloudWatchLogsConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_CloudWatchLogsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_CloudWatchLogsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_environment.go b/cloudformation/codebuild/aws-codebuild-project_environment.go similarity index 79% rename from cloudformation/resources/aws-codebuild-project_environment.go rename to cloudformation/codebuild/aws-codebuild-project_environment.go index 5d49718aab..6ac4d92b3b 100644 --- a/cloudformation/resources/aws-codebuild-project_environment.go +++ b/cloudformation/codebuild/aws-codebuild-project_environment.go @@ -1,10 +1,12 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_Environment AWS CloudFormation Resource (AWS::CodeBuild::Project.Environment) +// Project_Environment AWS CloudFormation Resource (AWS::CodeBuild::Project.Environment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html -type AWSCodeBuildProject_Environment struct { +type Project_Environment struct { // Certificate AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSCodeBuildProject_Environment struct { // EnvironmentVariables AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-environmentvariables - EnvironmentVariables []AWSCodeBuildProject_EnvironmentVariable `json:"EnvironmentVariables,omitempty"` + EnvironmentVariables []Project_EnvironmentVariable `json:"EnvironmentVariables,omitempty"` // Image AWS CloudFormation Property // Required: true @@ -39,7 +41,7 @@ type AWSCodeBuildProject_Environment struct { // RegistryCredential AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-registrycredential - RegistryCredential *AWSCodeBuildProject_RegistryCredential `json:"RegistryCredential,omitempty"` + RegistryCredential *Project_RegistryCredential `json:"RegistryCredential,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -57,42 +59,42 @@ type AWSCodeBuildProject_Environment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_Environment) AWSCloudFormationType() string { +func (r *Project_Environment) AWSCloudFormationType() string { return "AWS::CodeBuild::Project.Environment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_Environment) DependsOn() []string { +func (r *Project_Environment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_Environment) SetDependsOn(dependencies []string) { +func (r *Project_Environment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_Environment) Metadata() map[string]interface{} { +func (r *Project_Environment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_Environment) SetMetadata(metadata map[string]interface{}) { +func (r *Project_Environment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_Environment) DeletionPolicy() policies.DeletionPolicy { +func (r *Project_Environment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/codebuild/aws-codebuild-project_environmentvariable.go b/cloudformation/codebuild/aws-codebuild-project_environmentvariable.go new file mode 100644 index 0000000000..91a1aa6a51 --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-project_environmentvariable.go @@ -0,0 +1,75 @@ +package codebuild + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_EnvironmentVariable AWS CloudFormation Resource (AWS::CodeBuild::Project.EnvironmentVariable) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html +type Project_EnvironmentVariable struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-name + Name string `json:"Name,omitempty"` + + // Type AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-type + Type string `json:"Type,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_EnvironmentVariable) AWSCloudFormationType() string { + return "AWS::CodeBuild::Project.EnvironmentVariable" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_EnvironmentVariable) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_EnvironmentVariable) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_EnvironmentVariable) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codebuild/aws-codebuild-project_filtergroup.go b/cloudformation/codebuild/aws-codebuild-project_filtergroup.go new file mode 100644 index 0000000000..79ad11034c --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-project_filtergroup.go @@ -0,0 +1,60 @@ +package codebuild + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_FilterGroup AWS CloudFormation Resource (AWS::CodeBuild::Project.FilterGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-filtergroup.html +type Project_FilterGroup struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_FilterGroup) AWSCloudFormationType() string { + return "AWS::CodeBuild::Project.FilterGroup" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_FilterGroup) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_FilterGroup) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_FilterGroup) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_FilterGroup) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_FilterGroup) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_FilterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codebuild/aws-codebuild-project_gitsubmodulesconfig.go b/cloudformation/codebuild/aws-codebuild-project_gitsubmodulesconfig.go new file mode 100644 index 0000000000..078f9e63e3 --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-project_gitsubmodulesconfig.go @@ -0,0 +1,65 @@ +package codebuild + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_GitSubmodulesConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.GitSubmodulesConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-gitsubmodulesconfig.html +type Project_GitSubmodulesConfig struct { + + // FetchSubmodules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-gitsubmodulesconfig.html#cfn-codebuild-project-gitsubmodulesconfig-fetchsubmodules + FetchSubmodules bool `json:"FetchSubmodules"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_GitSubmodulesConfig) AWSCloudFormationType() string { + return "AWS::CodeBuild::Project.GitSubmodulesConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_GitSubmodulesConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_GitSubmodulesConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_GitSubmodulesConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_GitSubmodulesConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_GitSubmodulesConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_GitSubmodulesConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codebuild/aws-codebuild-project_logsconfig.go b/cloudformation/codebuild/aws-codebuild-project_logsconfig.go new file mode 100644 index 0000000000..f1e54a6a93 --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-project_logsconfig.go @@ -0,0 +1,70 @@ +package codebuild + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_LogsConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.LogsConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html +type Project_LogsConfig struct { + + // CloudWatchLogs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html#cfn-codebuild-project-logsconfig-cloudwatchlogs + CloudWatchLogs *Project_CloudWatchLogsConfig `json:"CloudWatchLogs,omitempty"` + + // S3Logs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html#cfn-codebuild-project-logsconfig-s3logs + S3Logs *Project_S3LogsConfig `json:"S3Logs,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_LogsConfig) AWSCloudFormationType() string { + return "AWS::CodeBuild::Project.LogsConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_LogsConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_LogsConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_LogsConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_LogsConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_LogsConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_LogsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codebuild-project_projectcache.go b/cloudformation/codebuild/aws-codebuild-project_projectcache.go similarity index 76% rename from cloudformation/resources/aws-codebuild-project_projectcache.go rename to cloudformation/codebuild/aws-codebuild-project_projectcache.go index f861e2b2ec..896d84a32a 100644 --- a/cloudformation/resources/aws-codebuild-project_projectcache.go +++ b/cloudformation/codebuild/aws-codebuild-project_projectcache.go @@ -1,10 +1,12 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_ProjectCache AWS CloudFormation Resource (AWS::CodeBuild::Project.ProjectCache) +// Project_ProjectCache AWS CloudFormation Resource (AWS::CodeBuild::Project.ProjectCache) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html -type AWSCodeBuildProject_ProjectCache struct { +type Project_ProjectCache struct { // Location AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeBuildProject_ProjectCache struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_ProjectCache) AWSCloudFormationType() string { +func (r *Project_ProjectCache) AWSCloudFormationType() string { return "AWS::CodeBuild::Project.ProjectCache" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_ProjectCache) DependsOn() []string { +func (r *Project_ProjectCache) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_ProjectCache) SetDependsOn(dependencies []string) { +func (r *Project_ProjectCache) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_ProjectCache) Metadata() map[string]interface{} { +func (r *Project_ProjectCache) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_ProjectCache) SetMetadata(metadata map[string]interface{}) { +func (r *Project_ProjectCache) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_ProjectCache) DeletionPolicy() policies.DeletionPolicy { +func (r *Project_ProjectCache) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_ProjectCache) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_ProjectCache) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/codebuild/aws-codebuild-project_projectsourceversion.go b/cloudformation/codebuild/aws-codebuild-project_projectsourceversion.go new file mode 100644 index 0000000000..425f40bd7d --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-project_projectsourceversion.go @@ -0,0 +1,70 @@ +package codebuild + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_ProjectSourceVersion AWS CloudFormation Resource (AWS::CodeBuild::Project.ProjectSourceVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html +type Project_ProjectSourceVersion struct { + + // SourceIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html#cfn-codebuild-project-projectsourceversion-sourceidentifier + SourceIdentifier string `json:"SourceIdentifier,omitempty"` + + // SourceVersion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html#cfn-codebuild-project-projectsourceversion-sourceversion + SourceVersion string `json:"SourceVersion,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_ProjectSourceVersion) AWSCloudFormationType() string { + return "AWS::CodeBuild::Project.ProjectSourceVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_ProjectSourceVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_ProjectSourceVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_ProjectSourceVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_ProjectSourceVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_ProjectSourceVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_ProjectSourceVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codebuild/aws-codebuild-project_projecttriggers.go b/cloudformation/codebuild/aws-codebuild-project_projecttriggers.go new file mode 100644 index 0000000000..cabf6f783f --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-project_projecttriggers.go @@ -0,0 +1,70 @@ +package codebuild + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_ProjectTriggers AWS CloudFormation Resource (AWS::CodeBuild::Project.ProjectTriggers) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html +type Project_ProjectTriggers struct { + + // FilterGroups AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-filtergroups + FilterGroups []Project_FilterGroup `json:"FilterGroups,omitempty"` + + // Webhook AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-webhook + Webhook bool `json:"Webhook,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_ProjectTriggers) AWSCloudFormationType() string { + return "AWS::CodeBuild::Project.ProjectTriggers" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_ProjectTriggers) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_ProjectTriggers) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_ProjectTriggers) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_ProjectTriggers) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_ProjectTriggers) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_ProjectTriggers) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codebuild/aws-codebuild-project_registrycredential.go b/cloudformation/codebuild/aws-codebuild-project_registrycredential.go new file mode 100644 index 0000000000..473775aaca --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-project_registrycredential.go @@ -0,0 +1,70 @@ +package codebuild + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_RegistryCredential AWS CloudFormation Resource (AWS::CodeBuild::Project.RegistryCredential) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html +type Project_RegistryCredential struct { + + // Credential AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html#cfn-codebuild-project-registrycredential-credential + Credential string `json:"Credential,omitempty"` + + // CredentialProvider AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html#cfn-codebuild-project-registrycredential-credentialprovider + CredentialProvider string `json:"CredentialProvider,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_RegistryCredential) AWSCloudFormationType() string { + return "AWS::CodeBuild::Project.RegistryCredential" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_RegistryCredential) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_RegistryCredential) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_RegistryCredential) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_RegistryCredential) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_RegistryCredential) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_RegistryCredential) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codebuild-project_s3logsconfig.go b/cloudformation/codebuild/aws-codebuild-project_s3logsconfig.go similarity index 76% rename from cloudformation/resources/aws-codebuild-project_s3logsconfig.go rename to cloudformation/codebuild/aws-codebuild-project_s3logsconfig.go index 75b58cbf59..594c04d277 100644 --- a/cloudformation/resources/aws-codebuild-project_s3logsconfig.go +++ b/cloudformation/codebuild/aws-codebuild-project_s3logsconfig.go @@ -1,10 +1,12 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_S3LogsConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.S3LogsConfig) +// Project_S3LogsConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.S3LogsConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html -type AWSCodeBuildProject_S3LogsConfig struct { +type Project_S3LogsConfig struct { // EncryptionDisabled AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeBuildProject_S3LogsConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_S3LogsConfig) AWSCloudFormationType() string { +func (r *Project_S3LogsConfig) AWSCloudFormationType() string { return "AWS::CodeBuild::Project.S3LogsConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_S3LogsConfig) DependsOn() []string { +func (r *Project_S3LogsConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_S3LogsConfig) SetDependsOn(dependencies []string) { +func (r *Project_S3LogsConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_S3LogsConfig) Metadata() map[string]interface{} { +func (r *Project_S3LogsConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_S3LogsConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Project_S3LogsConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_S3LogsConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Project_S3LogsConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_S3LogsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_S3LogsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_source.go b/cloudformation/codebuild/aws-codebuild-project_source.go similarity index 81% rename from cloudformation/resources/aws-codebuild-project_source.go rename to cloudformation/codebuild/aws-codebuild-project_source.go index 020d1563df..b801a0a95f 100644 --- a/cloudformation/resources/aws-codebuild-project_source.go +++ b/cloudformation/codebuild/aws-codebuild-project_source.go @@ -1,15 +1,17 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_Source AWS CloudFormation Resource (AWS::CodeBuild::Project.Source) +// Project_Source AWS CloudFormation Resource (AWS::CodeBuild::Project.Source) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html -type AWSCodeBuildProject_Source struct { +type Project_Source struct { // Auth AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-auth - Auth *AWSCodeBuildProject_SourceAuth `json:"Auth,omitempty"` + Auth *Project_SourceAuth `json:"Auth,omitempty"` // BuildSpec AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSCodeBuildProject_Source struct { // GitSubmodulesConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-gitsubmodulesconfig - GitSubmodulesConfig *AWSCodeBuildProject_GitSubmodulesConfig `json:"GitSubmodulesConfig,omitempty"` + GitSubmodulesConfig *Project_GitSubmodulesConfig `json:"GitSubmodulesConfig,omitempty"` // InsecureSsl AWS CloudFormation Property // Required: false @@ -62,42 +64,42 @@ type AWSCodeBuildProject_Source struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_Source) AWSCloudFormationType() string { +func (r *Project_Source) AWSCloudFormationType() string { return "AWS::CodeBuild::Project.Source" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_Source) DependsOn() []string { +func (r *Project_Source) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_Source) SetDependsOn(dependencies []string) { +func (r *Project_Source) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_Source) Metadata() map[string]interface{} { +func (r *Project_Source) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_Source) SetMetadata(metadata map[string]interface{}) { +func (r *Project_Source) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_Source) DeletionPolicy() policies.DeletionPolicy { +func (r *Project_Source) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_Source) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_Source) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/codebuild/aws-codebuild-project_sourceauth.go b/cloudformation/codebuild/aws-codebuild-project_sourceauth.go new file mode 100644 index 0000000000..4f6866665e --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-project_sourceauth.go @@ -0,0 +1,70 @@ +package codebuild + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_SourceAuth AWS CloudFormation Resource (AWS::CodeBuild::Project.SourceAuth) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html +type Project_SourceAuth struct { + + // Resource AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-resource + Resource string `json:"Resource,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_SourceAuth) AWSCloudFormationType() string { + return "AWS::CodeBuild::Project.SourceAuth" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_SourceAuth) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_SourceAuth) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_SourceAuth) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_SourceAuth) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_SourceAuth) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_SourceAuth) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codebuild-project_vpcconfig.go b/cloudformation/codebuild/aws-codebuild-project_vpcconfig.go similarity index 77% rename from cloudformation/resources/aws-codebuild-project_vpcconfig.go rename to cloudformation/codebuild/aws-codebuild-project_vpcconfig.go index b2c4d14438..207480aad1 100644 --- a/cloudformation/resources/aws-codebuild-project_vpcconfig.go +++ b/cloudformation/codebuild/aws-codebuild-project_vpcconfig.go @@ -1,10 +1,12 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_VpcConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.VpcConfig) +// Project_VpcConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.VpcConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html -type AWSCodeBuildProject_VpcConfig struct { +type Project_VpcConfig struct { // SecurityGroupIds AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeBuildProject_VpcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_VpcConfig) AWSCloudFormationType() string { +func (r *Project_VpcConfig) AWSCloudFormationType() string { return "AWS::CodeBuild::Project.VpcConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_VpcConfig) DependsOn() []string { +func (r *Project_VpcConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_VpcConfig) SetDependsOn(dependencies []string) { +func (r *Project_VpcConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_VpcConfig) Metadata() map[string]interface{} { +func (r *Project_VpcConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_VpcConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Project_VpcConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_VpcConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Project_VpcConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_webhookfilter.go b/cloudformation/codebuild/aws-codebuild-project_webhookfilter.go similarity index 76% rename from cloudformation/resources/aws-codebuild-project_webhookfilter.go rename to cloudformation/codebuild/aws-codebuild-project_webhookfilter.go index 6b365392b3..e4e676dead 100644 --- a/cloudformation/resources/aws-codebuild-project_webhookfilter.go +++ b/cloudformation/codebuild/aws-codebuild-project_webhookfilter.go @@ -1,10 +1,12 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_WebhookFilter AWS CloudFormation Resource (AWS::CodeBuild::Project.WebhookFilter) +// Project_WebhookFilter AWS CloudFormation Resource (AWS::CodeBuild::Project.WebhookFilter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html -type AWSCodeBuildProject_WebhookFilter struct { +type Project_WebhookFilter struct { // ExcludeMatchedPattern AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeBuildProject_WebhookFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_WebhookFilter) AWSCloudFormationType() string { +func (r *Project_WebhookFilter) AWSCloudFormationType() string { return "AWS::CodeBuild::Project.WebhookFilter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_WebhookFilter) DependsOn() []string { +func (r *Project_WebhookFilter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_WebhookFilter) SetDependsOn(dependencies []string) { +func (r *Project_WebhookFilter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_WebhookFilter) Metadata() map[string]interface{} { +func (r *Project_WebhookFilter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_WebhookFilter) SetMetadata(metadata map[string]interface{}) { +func (r *Project_WebhookFilter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_WebhookFilter) DeletionPolicy() policies.DeletionPolicy { +func (r *Project_WebhookFilter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_WebhookFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_WebhookFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-sourcecredential.go b/cloudformation/codebuild/aws-codebuild-sourcecredential.go similarity index 80% rename from cloudformation/resources/aws-codebuild-sourcecredential.go rename to cloudformation/codebuild/aws-codebuild-sourcecredential.go index 58a6d2768c..e2ad2b7211 100644 --- a/cloudformation/resources/aws-codebuild-sourcecredential.go +++ b/cloudformation/codebuild/aws-codebuild-sourcecredential.go @@ -1,15 +1,16 @@ -package resources +package codebuild import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCodeBuildSourceCredential AWS CloudFormation Resource (AWS::CodeBuild::SourceCredential) +// SourceCredential AWS CloudFormation Resource (AWS::CodeBuild::SourceCredential) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html -type AWSCodeBuildSourceCredential struct { +type SourceCredential struct { // AuthType AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSCodeBuildSourceCredential struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildSourceCredential) AWSCloudFormationType() string { +func (r *SourceCredential) AWSCloudFormationType() string { return "AWS::CodeBuild::SourceCredential" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildSourceCredential) DependsOn() []string { +func (r *SourceCredential) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildSourceCredential) SetDependsOn(dependencies []string) { +func (r *SourceCredential) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildSourceCredential) Metadata() map[string]interface{} { +func (r *SourceCredential) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildSourceCredential) SetMetadata(metadata map[string]interface{}) { +func (r *SourceCredential) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildSourceCredential) DeletionPolicy() policies.DeletionPolicy { +func (r *SourceCredential) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildSourceCredential) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SourceCredential) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodeBuildSourceCredential) MarshalJSON() ([]byte, error) { - type Properties AWSCodeBuildSourceCredential +func (r SourceCredential) MarshalJSON() ([]byte, error) { + type Properties SourceCredential return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSCodeBuildSourceCredential) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodeBuildSourceCredential) UnmarshalJSON(b []byte) error { - type Properties AWSCodeBuildSourceCredential +func (r *SourceCredential) UnmarshalJSON(b []byte) error { + type Properties SourceCredential res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSCodeBuildSourceCredential) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodeBuildSourceCredential(*res.Properties) + *r = SourceCredential(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-codecommit-repository.go b/cloudformation/codecommit/aws-codecommit-repository.go similarity index 79% rename from cloudformation/resources/aws-codecommit-repository.go rename to cloudformation/codecommit/aws-codecommit-repository.go index 19fba0e6db..d969d6b3b7 100644 --- a/cloudformation/resources/aws-codecommit-repository.go +++ b/cloudformation/codecommit/aws-codecommit-repository.go @@ -1,20 +1,22 @@ -package resources +package codecommit import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSCodeCommitRepository AWS CloudFormation Resource (AWS::CodeCommit::Repository) +// Repository AWS CloudFormation Resource (AWS::CodeCommit::Repository) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html -type AWSCodeCommitRepository struct { +type Repository struct { // Code AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-code - Code *AWSCodeCommitRepository_Code `json:"Code,omitempty"` + Code *Repository_Code `json:"Code,omitempty"` // RepositoryDescription AWS CloudFormation Property // Required: false @@ -29,12 +31,12 @@ type AWSCodeCommitRepository struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Triggers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-triggers - Triggers []AWSCodeCommitRepository_RepositoryTrigger `json:"Triggers,omitempty"` + Triggers []Repository_RepositoryTrigger `json:"Triggers,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSCodeCommitRepository struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeCommitRepository) AWSCloudFormationType() string { +func (r *Repository) AWSCloudFormationType() string { return "AWS::CodeCommit::Repository" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeCommitRepository) DependsOn() []string { +func (r *Repository) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeCommitRepository) SetDependsOn(dependencies []string) { +func (r *Repository) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeCommitRepository) Metadata() map[string]interface{} { +func (r *Repository) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeCommitRepository) SetMetadata(metadata map[string]interface{}) { +func (r *Repository) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeCommitRepository) DeletionPolicy() policies.DeletionPolicy { +func (r *Repository) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeCommitRepository) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Repository) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodeCommitRepository) MarshalJSON() ([]byte, error) { - type Properties AWSCodeCommitRepository +func (r Repository) MarshalJSON() ([]byte, error) { + type Properties Repository return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSCodeCommitRepository) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodeCommitRepository) UnmarshalJSON(b []byte) error { - type Properties AWSCodeCommitRepository +func (r *Repository) UnmarshalJSON(b []byte) error { + type Properties Repository res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSCodeCommitRepository) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodeCommitRepository(*res.Properties) + *r = Repository(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/codecommit/aws-codecommit-repository_code.go b/cloudformation/codecommit/aws-codecommit-repository_code.go new file mode 100644 index 0000000000..d1f97c2dc1 --- /dev/null +++ b/cloudformation/codecommit/aws-codecommit-repository_code.go @@ -0,0 +1,65 @@ +package codecommit + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Repository_Code AWS CloudFormation Resource (AWS::CodeCommit::Repository.Code) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html +type Repository_Code struct { + + // S3 AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html#cfn-codecommit-repository-code-s3 + S3 *Repository_S3 `json:"S3,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Repository_Code) AWSCloudFormationType() string { + return "AWS::CodeCommit::Repository.Code" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Repository_Code) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Repository_Code) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Repository_Code) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Repository_Code) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Repository_Code) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Repository_Code) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codecommit-repository_repositorytrigger.go b/cloudformation/codecommit/aws-codecommit-repository_repositorytrigger.go similarity index 78% rename from cloudformation/resources/aws-codecommit-repository_repositorytrigger.go rename to cloudformation/codecommit/aws-codecommit-repository_repositorytrigger.go index 96a8825a78..4de45fda47 100644 --- a/cloudformation/resources/aws-codecommit-repository_repositorytrigger.go +++ b/cloudformation/codecommit/aws-codecommit-repository_repositorytrigger.go @@ -1,10 +1,12 @@ -package resources +package codecommit -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeCommitRepository_RepositoryTrigger AWS CloudFormation Resource (AWS::CodeCommit::Repository.RepositoryTrigger) +// Repository_RepositoryTrigger AWS CloudFormation Resource (AWS::CodeCommit::Repository.RepositoryTrigger) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html -type AWSCodeCommitRepository_RepositoryTrigger struct { +type Repository_RepositoryTrigger struct { // Branches AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSCodeCommitRepository_RepositoryTrigger struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeCommitRepository_RepositoryTrigger) AWSCloudFormationType() string { +func (r *Repository_RepositoryTrigger) AWSCloudFormationType() string { return "AWS::CodeCommit::Repository.RepositoryTrigger" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeCommitRepository_RepositoryTrigger) DependsOn() []string { +func (r *Repository_RepositoryTrigger) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeCommitRepository_RepositoryTrigger) SetDependsOn(dependencies []string) { +func (r *Repository_RepositoryTrigger) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeCommitRepository_RepositoryTrigger) Metadata() map[string]interface{} { +func (r *Repository_RepositoryTrigger) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeCommitRepository_RepositoryTrigger) SetMetadata(metadata map[string]interface{}) { +func (r *Repository_RepositoryTrigger) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeCommitRepository_RepositoryTrigger) DeletionPolicy() policies.DeletionPolicy { +func (r *Repository_RepositoryTrigger) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeCommitRepository_RepositoryTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Repository_RepositoryTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codecommit-repository_s3.go b/cloudformation/codecommit/aws-codecommit-repository_s3.go similarity index 77% rename from cloudformation/resources/aws-codecommit-repository_s3.go rename to cloudformation/codecommit/aws-codecommit-repository_s3.go index 1ca8584674..35ce12a915 100644 --- a/cloudformation/resources/aws-codecommit-repository_s3.go +++ b/cloudformation/codecommit/aws-codecommit-repository_s3.go @@ -1,10 +1,12 @@ -package resources +package codecommit -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeCommitRepository_S3 AWS CloudFormation Resource (AWS::CodeCommit::Repository.S3) +// Repository_S3 AWS CloudFormation Resource (AWS::CodeCommit::Repository.S3) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html -type AWSCodeCommitRepository_S3 struct { +type Repository_S3 struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSCodeCommitRepository_S3 struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeCommitRepository_S3) AWSCloudFormationType() string { +func (r *Repository_S3) AWSCloudFormationType() string { return "AWS::CodeCommit::Repository.S3" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeCommitRepository_S3) DependsOn() []string { +func (r *Repository_S3) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeCommitRepository_S3) SetDependsOn(dependencies []string) { +func (r *Repository_S3) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeCommitRepository_S3) Metadata() map[string]interface{} { +func (r *Repository_S3) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeCommitRepository_S3) SetMetadata(metadata map[string]interface{}) { +func (r *Repository_S3) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeCommitRepository_S3) DeletionPolicy() policies.DeletionPolicy { +func (r *Repository_S3) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeCommitRepository_S3) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Repository_S3) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-application.go b/cloudformation/codedeploy/aws-codedeploy-application.go similarity index 79% rename from cloudformation/resources/aws-codedeploy-application.go rename to cloudformation/codedeploy/aws-codedeploy-application.go index 91d1ffb7de..f990a5a448 100644 --- a/cloudformation/resources/aws-codedeploy-application.go +++ b/cloudformation/codedeploy/aws-codedeploy-application.go @@ -1,15 +1,16 @@ -package resources +package codedeploy import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCodeDeployApplication AWS CloudFormation Resource (AWS::CodeDeploy::Application) +// Application AWS CloudFormation Resource (AWS::CodeDeploy::Application) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html -type AWSCodeDeployApplication struct { +type Application struct { // ApplicationName AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSCodeDeployApplication struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployApplication) AWSCloudFormationType() string { +func (r *Application) AWSCloudFormationType() string { return "AWS::CodeDeploy::Application" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployApplication) DependsOn() []string { +func (r *Application) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployApplication) SetDependsOn(dependencies []string) { +func (r *Application) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployApplication) Metadata() map[string]interface{} { +func (r *Application) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployApplication) SetMetadata(metadata map[string]interface{}) { +func (r *Application) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployApplication) DeletionPolicy() policies.DeletionPolicy { +func (r *Application) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployApplication) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodeDeployApplication) MarshalJSON() ([]byte, error) { - type Properties AWSCodeDeployApplication +func (r Application) MarshalJSON() ([]byte, error) { + type Properties Application return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSCodeDeployApplication) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodeDeployApplication) UnmarshalJSON(b []byte) error { - type Properties AWSCodeDeployApplication +func (r *Application) UnmarshalJSON(b []byte) error { + type Properties Application res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSCodeDeployApplication) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodeDeployApplication(*res.Properties) + *r = Application(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-codedeploy-deploymentconfig.go b/cloudformation/codedeploy/aws-codedeploy-deploymentconfig.go similarity index 76% rename from cloudformation/resources/aws-codedeploy-deploymentconfig.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentconfig.go index 89818a1f89..5dcd658a5f 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentconfig.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentconfig.go @@ -1,15 +1,16 @@ -package resources +package codedeploy import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCodeDeployDeploymentConfig AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentConfig) +// DeploymentConfig AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html -type AWSCodeDeployDeploymentConfig struct { +type DeploymentConfig struct { // DeploymentConfigName AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSCodeDeployDeploymentConfig struct { // MinimumHealthyHosts AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts - MinimumHealthyHosts *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts `json:"MinimumHealthyHosts,omitempty"` + MinimumHealthyHosts *DeploymentConfig_MinimumHealthyHosts `json:"MinimumHealthyHosts,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSCodeDeployDeploymentConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentConfig) AWSCloudFormationType() string { +func (r *DeploymentConfig) AWSCloudFormationType() string { return "AWS::CodeDeploy::DeploymentConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentConfig) DependsOn() []string { +func (r *DeploymentConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentConfig) SetDependsOn(dependencies []string) { +func (r *DeploymentConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentConfig) Metadata() map[string]interface{} { +func (r *DeploymentConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentConfig) SetMetadata(metadata map[string]interface{}) { +func (r *DeploymentConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *DeploymentConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodeDeployDeploymentConfig) MarshalJSON() ([]byte, error) { - type Properties AWSCodeDeployDeploymentConfig +func (r DeploymentConfig) MarshalJSON() ([]byte, error) { + type Properties DeploymentConfig return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSCodeDeployDeploymentConfig) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodeDeployDeploymentConfig) UnmarshalJSON(b []byte) error { - type Properties AWSCodeDeployDeploymentConfig +func (r *DeploymentConfig) UnmarshalJSON(b []byte) error { + type Properties DeploymentConfig res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSCodeDeployDeploymentConfig) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodeDeployDeploymentConfig(*res.Properties) + *r = DeploymentConfig(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go b/cloudformation/codedeploy/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go new file mode 100644 index 0000000000..162fe588fb --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go @@ -0,0 +1,70 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentConfig_MinimumHealthyHosts AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html +type DeploymentConfig_MinimumHealthyHosts struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-type + Type string `json:"Type,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-value + Value int `json:"Value"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentConfig_MinimumHealthyHosts) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentConfig_MinimumHealthyHosts) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentConfig_MinimumHealthyHosts) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentConfig_MinimumHealthyHosts) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentConfig_MinimumHealthyHosts) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentConfig_MinimumHealthyHosts) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentConfig_MinimumHealthyHosts) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup.go similarity index 77% rename from cloudformation/resources/aws-codedeploy-deploymentgroup.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup.go index 7dfd7e3e5d..50115a1b3d 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup.go @@ -1,20 +1,21 @@ -package resources +package codedeploy import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCodeDeployDeploymentGroup AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup) +// DeploymentGroup AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html -type AWSCodeDeployDeploymentGroup struct { +type DeploymentGroup struct { // AlarmConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-alarmconfiguration - AlarmConfiguration *AWSCodeDeployDeploymentGroup_AlarmConfiguration `json:"AlarmConfiguration,omitempty"` + AlarmConfiguration *DeploymentGroup_AlarmConfiguration `json:"AlarmConfiguration,omitempty"` // ApplicationName AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSCodeDeployDeploymentGroup struct { // AutoRollbackConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration - AutoRollbackConfiguration *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration `json:"AutoRollbackConfiguration,omitempty"` + AutoRollbackConfiguration *DeploymentGroup_AutoRollbackConfiguration `json:"AutoRollbackConfiguration,omitempty"` // AutoScalingGroups AWS CloudFormation Property // Required: false @@ -34,7 +35,7 @@ type AWSCodeDeployDeploymentGroup struct { // Deployment AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deployment - Deployment *AWSCodeDeployDeploymentGroup_Deployment `json:"Deployment,omitempty"` + Deployment *DeploymentGroup_Deployment `json:"Deployment,omitempty"` // DeploymentConfigName AWS CloudFormation Property // Required: false @@ -49,32 +50,32 @@ type AWSCodeDeployDeploymentGroup struct { // DeploymentStyle AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentstyle - DeploymentStyle *AWSCodeDeployDeploymentGroup_DeploymentStyle `json:"DeploymentStyle,omitempty"` + DeploymentStyle *DeploymentGroup_DeploymentStyle `json:"DeploymentStyle,omitempty"` // Ec2TagFilters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-ec2tagfilters - Ec2TagFilters []AWSCodeDeployDeploymentGroup_EC2TagFilter `json:"Ec2TagFilters,omitempty"` + Ec2TagFilters []DeploymentGroup_EC2TagFilter `json:"Ec2TagFilters,omitempty"` // Ec2TagSet AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-ec2tagset - Ec2TagSet *AWSCodeDeployDeploymentGroup_EC2TagSet `json:"Ec2TagSet,omitempty"` + Ec2TagSet *DeploymentGroup_EC2TagSet `json:"Ec2TagSet,omitempty"` // LoadBalancerInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo - LoadBalancerInfo *AWSCodeDeployDeploymentGroup_LoadBalancerInfo `json:"LoadBalancerInfo,omitempty"` + LoadBalancerInfo *DeploymentGroup_LoadBalancerInfo `json:"LoadBalancerInfo,omitempty"` // OnPremisesInstanceTagFilters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-onpremisesinstancetagfilters - OnPremisesInstanceTagFilters []AWSCodeDeployDeploymentGroup_TagFilter `json:"OnPremisesInstanceTagFilters,omitempty"` + OnPremisesInstanceTagFilters []DeploymentGroup_TagFilter `json:"OnPremisesInstanceTagFilters,omitempty"` // OnPremisesTagSet AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-onpremisestagset - OnPremisesTagSet *AWSCodeDeployDeploymentGroup_OnPremisesTagSet `json:"OnPremisesTagSet,omitempty"` + OnPremisesTagSet *DeploymentGroup_OnPremisesTagSet `json:"OnPremisesTagSet,omitempty"` // ServiceRoleArn AWS CloudFormation Property // Required: true @@ -84,7 +85,7 @@ type AWSCodeDeployDeploymentGroup struct { // TriggerConfigurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-triggerconfigurations - TriggerConfigurations []AWSCodeDeployDeploymentGroup_TriggerConfig `json:"TriggerConfigurations,omitempty"` + TriggerConfigurations []DeploymentGroup_TriggerConfig `json:"TriggerConfigurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -97,50 +98,50 @@ type AWSCodeDeployDeploymentGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup) AWSCloudFormationType() string { +func (r *DeploymentGroup) AWSCloudFormationType() string { return "AWS::CodeDeploy::DeploymentGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup) DependsOn() []string { +func (r *DeploymentGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup) SetDependsOn(dependencies []string) { +func (r *DeploymentGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup) Metadata() map[string]interface{} { +func (r *DeploymentGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DeploymentGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DeploymentGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodeDeployDeploymentGroup) MarshalJSON() ([]byte, error) { - type Properties AWSCodeDeployDeploymentGroup +func (r DeploymentGroup) MarshalJSON() ([]byte, error) { + type Properties DeploymentGroup return json.Marshal(&struct { Type string Properties Properties @@ -158,8 +159,8 @@ func (r AWSCodeDeployDeploymentGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodeDeployDeploymentGroup) UnmarshalJSON(b []byte) error { - type Properties AWSCodeDeployDeploymentGroup +func (r *DeploymentGroup) UnmarshalJSON(b []byte) error { + type Properties DeploymentGroup res := &struct { Type string Properties *Properties @@ -178,7 +179,7 @@ func (r *AWSCodeDeployDeploymentGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodeDeployDeploymentGroup(*res.Properties) + *r = DeploymentGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarm.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarm.go new file mode 100644 index 0000000000..06806feb99 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarm.go @@ -0,0 +1,65 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_Alarm AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.Alarm) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html +type DeploymentGroup_Alarm struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html#cfn-codedeploy-deploymentgroup-alarm-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_Alarm) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.Alarm" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_Alarm) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_Alarm) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_Alarm) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_Alarm) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_Alarm) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_Alarm) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarmconfiguration.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarmconfiguration.go new file mode 100644 index 0000000000..9822dc8ceb --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarmconfiguration.go @@ -0,0 +1,75 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_AlarmConfiguration AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.AlarmConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html +type DeploymentGroup_AlarmConfiguration struct { + + // Alarms AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-alarms + Alarms []DeploymentGroup_Alarm `json:"Alarms,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-enabled + Enabled bool `json:"Enabled,omitempty"` + + // IgnorePollAlarmFailure AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-ignorepollalarmfailure + IgnorePollAlarmFailure bool `json:"IgnorePollAlarmFailure,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_AlarmConfiguration) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.AlarmConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_AlarmConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_AlarmConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_AlarmConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_AlarmConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_AlarmConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_AlarmConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go new file mode 100644 index 0000000000..2c2d524c47 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go @@ -0,0 +1,70 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_AutoRollbackConfiguration AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html +type DeploymentGroup_AutoRollbackConfiguration struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration-enabled + Enabled bool `json:"Enabled,omitempty"` + + // Events AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration-events + Events []string `json:"Events,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_AutoRollbackConfiguration) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_AutoRollbackConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_AutoRollbackConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_AutoRollbackConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_AutoRollbackConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_AutoRollbackConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_AutoRollbackConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deployment.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deployment.go new file mode 100644 index 0000000000..e11505529a --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deployment.go @@ -0,0 +1,75 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_Deployment AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.Deployment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html +type DeploymentGroup_Deployment struct { + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-description + Description string `json:"Description,omitempty"` + + // IgnoreApplicationStopFailures AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-ignoreapplicationstopfailures + IgnoreApplicationStopFailures bool `json:"IgnoreApplicationStopFailures,omitempty"` + + // Revision AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision + Revision *DeploymentGroup_RevisionLocation `json:"Revision,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_Deployment) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.Deployment" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_Deployment) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_Deployment) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_Deployment) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_Deployment) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_Deployment) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_Deployment) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deploymentstyle.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deploymentstyle.go new file mode 100644 index 0000000000..f1f5a4dc96 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deploymentstyle.go @@ -0,0 +1,70 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_DeploymentStyle AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.DeploymentStyle) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html +type DeploymentGroup_DeploymentStyle struct { + + // DeploymentOption AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html#cfn-codedeploy-deploymentgroup-deploymentstyle-deploymentoption + DeploymentOption string `json:"DeploymentOption,omitempty"` + + // DeploymentType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html#cfn-codedeploy-deploymentgroup-deploymentstyle-deploymenttype + DeploymentType string `json:"DeploymentType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_DeploymentStyle) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.DeploymentStyle" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_DeploymentStyle) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_DeploymentStyle) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_DeploymentStyle) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_DeploymentStyle) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_DeploymentStyle) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_DeploymentStyle) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagfilter.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagfilter.go new file mode 100644 index 0000000000..c202c439db --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagfilter.go @@ -0,0 +1,75 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_EC2TagFilter AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html +type DeploymentGroup_EC2TagFilter struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-key + Key string `json:"Key,omitempty"` + + // Type AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-type + Type string `json:"Type,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_EC2TagFilter) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.EC2TagFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_EC2TagFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_EC2TagFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_EC2TagFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_EC2TagFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_EC2TagFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_EC2TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagset.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagset.go new file mode 100644 index 0000000000..bbce5f0ebc --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagset.go @@ -0,0 +1,65 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_EC2TagSet AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagSet) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagset.html +type DeploymentGroup_EC2TagSet struct { + + // Ec2TagSetList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagset.html#cfn-codedeploy-deploymentgroup-ec2tagset-ec2tagsetlist + Ec2TagSetList []DeploymentGroup_EC2TagSetListObject `json:"Ec2TagSetList,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_EC2TagSet) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.EC2TagSet" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_EC2TagSet) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_EC2TagSet) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_EC2TagSet) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_EC2TagSet) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_EC2TagSet) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_EC2TagSet) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go new file mode 100644 index 0000000000..94db48d2d6 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go @@ -0,0 +1,65 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_EC2TagSetListObject AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagSetListObject) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagsetlistobject.html +type DeploymentGroup_EC2TagSetListObject struct { + + // Ec2TagGroup AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagsetlistobject.html#cfn-codedeploy-deploymentgroup-ec2tagsetlistobject-ec2taggroup + Ec2TagGroup []DeploymentGroup_EC2TagFilter `json:"Ec2TagGroup,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_EC2TagSetListObject) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.EC2TagSetListObject" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_EC2TagSetListObject) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_EC2TagSetListObject) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_EC2TagSetListObject) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_EC2TagSetListObject) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_EC2TagSetListObject) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_EC2TagSetListObject) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_elbinfo.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_elbinfo.go new file mode 100644 index 0000000000..928b0f3320 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_elbinfo.go @@ -0,0 +1,65 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_ELBInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.ELBInfo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-elbinfo.html +type DeploymentGroup_ELBInfo struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-elbinfo.html#cfn-codedeploy-deploymentgroup-elbinfo-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_ELBInfo) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.ELBInfo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_ELBInfo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_ELBInfo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_ELBInfo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_ELBInfo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_ELBInfo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_ELBInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_githublocation.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_githublocation.go new file mode 100644 index 0000000000..b089e6fbf7 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_githublocation.go @@ -0,0 +1,70 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_GitHubLocation AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.GitHubLocation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html +type DeploymentGroup_GitHubLocation struct { + + // CommitId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-commitid + CommitId string `json:"CommitId,omitempty"` + + // Repository AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-repository + Repository string `json:"Repository,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_GitHubLocation) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.GitHubLocation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_GitHubLocation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_GitHubLocation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_GitHubLocation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_GitHubLocation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_GitHubLocation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_GitHubLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_loadbalancerinfo.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_loadbalancerinfo.go new file mode 100644 index 0000000000..4ee9bf5ea0 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_loadbalancerinfo.go @@ -0,0 +1,70 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_LoadBalancerInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.LoadBalancerInfo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html +type DeploymentGroup_LoadBalancerInfo struct { + + // ElbInfoList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo-elbinfolist + ElbInfoList []DeploymentGroup_ELBInfo `json:"ElbInfoList,omitempty"` + + // TargetGroupInfoList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo-targetgroupinfolist + TargetGroupInfoList []DeploymentGroup_TargetGroupInfo `json:"TargetGroupInfoList,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_LoadBalancerInfo) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.LoadBalancerInfo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_LoadBalancerInfo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_LoadBalancerInfo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_LoadBalancerInfo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_LoadBalancerInfo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_LoadBalancerInfo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_LoadBalancerInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagset.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagset.go new file mode 100644 index 0000000000..4119bb1ef9 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagset.go @@ -0,0 +1,65 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_OnPremisesTagSet AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSet) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagset.html +type DeploymentGroup_OnPremisesTagSet struct { + + // OnPremisesTagSetList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagset.html#cfn-codedeploy-deploymentgroup-onpremisestagset-onpremisestagsetlist + OnPremisesTagSetList []DeploymentGroup_OnPremisesTagSetListObject `json:"OnPremisesTagSetList,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_OnPremisesTagSet) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSet" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_OnPremisesTagSet) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_OnPremisesTagSet) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_OnPremisesTagSet) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_OnPremisesTagSet) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_OnPremisesTagSet) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_OnPremisesTagSet) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go new file mode 100644 index 0000000000..e91625f403 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go @@ -0,0 +1,65 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_OnPremisesTagSetListObject AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSetListObject) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagsetlistobject.html +type DeploymentGroup_OnPremisesTagSetListObject struct { + + // OnPremisesTagGroup AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagsetlistobject.html#cfn-codedeploy-deploymentgroup-onpremisestagsetlistobject-onpremisestaggroup + OnPremisesTagGroup []DeploymentGroup_TagFilter `json:"OnPremisesTagGroup,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_OnPremisesTagSetListObject) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSetListObject" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_OnPremisesTagSetListObject) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_OnPremisesTagSetListObject) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_OnPremisesTagSetListObject) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_OnPremisesTagSetListObject) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_OnPremisesTagSetListObject) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_OnPremisesTagSetListObject) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_revisionlocation.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_revisionlocation.go new file mode 100644 index 0000000000..31118b03ac --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_revisionlocation.go @@ -0,0 +1,75 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_RevisionLocation AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.RevisionLocation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html +type DeploymentGroup_RevisionLocation struct { + + // GitHubLocation AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation + GitHubLocation *DeploymentGroup_GitHubLocation `json:"GitHubLocation,omitempty"` + + // RevisionType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-revisiontype + RevisionType string `json:"RevisionType,omitempty"` + + // S3Location AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location + S3Location *DeploymentGroup_S3Location `json:"S3Location,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_RevisionLocation) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.RevisionLocation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_RevisionLocation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_RevisionLocation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_RevisionLocation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_RevisionLocation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_RevisionLocation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_RevisionLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_s3location.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_s3location.go similarity index 79% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_s3location.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_s3location.go index 4b4bcdc089..26bb5dfcd6 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_s3location.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_s3location.go @@ -1,10 +1,12 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_S3Location AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.S3Location) +// DeploymentGroup_S3Location AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.S3Location) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html -type AWSCodeDeployDeploymentGroup_S3Location struct { +type DeploymentGroup_S3Location struct { // Bucket AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSCodeDeployDeploymentGroup_S3Location struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_S3Location) AWSCloudFormationType() string { +func (r *DeploymentGroup_S3Location) AWSCloudFormationType() string { return "AWS::CodeDeploy::DeploymentGroup.S3Location" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_S3Location) DependsOn() []string { +func (r *DeploymentGroup_S3Location) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_S3Location) SetDependsOn(dependencies []string) { +func (r *DeploymentGroup_S3Location) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_S3Location) Metadata() map[string]interface{} { +func (r *DeploymentGroup_S3Location) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_S3Location) SetMetadata(metadata map[string]interface{}) { +func (r *DeploymentGroup_S3Location) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_S3Location) DeletionPolicy() policies.DeletionPolicy { +func (r *DeploymentGroup_S3Location) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_tagfilter.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_tagfilter.go similarity index 75% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_tagfilter.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_tagfilter.go index 9b7878c860..5aadcf86c5 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_tagfilter.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_tagfilter.go @@ -1,10 +1,12 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_TagFilter AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.TagFilter) +// DeploymentGroup_TagFilter AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.TagFilter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html -type AWSCodeDeployDeploymentGroup_TagFilter struct { +type DeploymentGroup_TagFilter struct { // Key AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeDeployDeploymentGroup_TagFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_TagFilter) AWSCloudFormationType() string { +func (r *DeploymentGroup_TagFilter) AWSCloudFormationType() string { return "AWS::CodeDeploy::DeploymentGroup.TagFilter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_TagFilter) DependsOn() []string { +func (r *DeploymentGroup_TagFilter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_TagFilter) SetDependsOn(dependencies []string) { +func (r *DeploymentGroup_TagFilter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_TagFilter) Metadata() map[string]interface{} { +func (r *DeploymentGroup_TagFilter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_TagFilter) SetMetadata(metadata map[string]interface{}) { +func (r *DeploymentGroup_TagFilter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_TagFilter) DeletionPolicy() policies.DeletionPolicy { +func (r *DeploymentGroup_TagFilter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_targetgroupinfo.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_targetgroupinfo.go new file mode 100644 index 0000000000..c4fa5cc376 --- /dev/null +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_targetgroupinfo.go @@ -0,0 +1,65 @@ +package codedeploy + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeploymentGroup_TargetGroupInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.TargetGroupInfo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-targetgroupinfo.html +type DeploymentGroup_TargetGroupInfo struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-targetgroupinfo.html#cfn-codedeploy-deploymentgroup-targetgroupinfo-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeploymentGroup_TargetGroupInfo) AWSCloudFormationType() string { + return "AWS::CodeDeploy::DeploymentGroup.TargetGroupInfo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_TargetGroupInfo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeploymentGroup_TargetGroupInfo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_TargetGroupInfo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeploymentGroup_TargetGroupInfo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_TargetGroupInfo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeploymentGroup_TargetGroupInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_triggerconfig.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_triggerconfig.go similarity index 75% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_triggerconfig.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_triggerconfig.go index 98b35e9f41..0378c978b2 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_triggerconfig.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_triggerconfig.go @@ -1,10 +1,12 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_TriggerConfig AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.TriggerConfig) +// DeploymentGroup_TriggerConfig AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.TriggerConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html -type AWSCodeDeployDeploymentGroup_TriggerConfig struct { +type DeploymentGroup_TriggerConfig struct { // TriggerEvents AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeDeployDeploymentGroup_TriggerConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_TriggerConfig) AWSCloudFormationType() string { +func (r *DeploymentGroup_TriggerConfig) AWSCloudFormationType() string { return "AWS::CodeDeploy::DeploymentGroup.TriggerConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_TriggerConfig) DependsOn() []string { +func (r *DeploymentGroup_TriggerConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_TriggerConfig) SetDependsOn(dependencies []string) { +func (r *DeploymentGroup_TriggerConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_TriggerConfig) Metadata() map[string]interface{} { +func (r *DeploymentGroup_TriggerConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_TriggerConfig) SetMetadata(metadata map[string]interface{}) { +func (r *DeploymentGroup_TriggerConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_TriggerConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *DeploymentGroup_TriggerConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_TriggerConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_TriggerConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-customactiontype.go b/cloudformation/codepipeline/aws-codepipeline-customactiontype.go similarity index 77% rename from cloudformation/resources/aws-codepipeline-customactiontype.go rename to cloudformation/codepipeline/aws-codepipeline-customactiontype.go index e78c801786..54a7a82c8d 100644 --- a/cloudformation/resources/aws-codepipeline-customactiontype.go +++ b/cloudformation/codepipeline/aws-codepipeline-customactiontype.go @@ -1,15 +1,16 @@ -package resources +package codepipeline import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCodePipelineCustomActionType AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType) +// CustomActionType AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html -type AWSCodePipelineCustomActionType struct { +type CustomActionType struct { // Category AWS CloudFormation Property // Required: true @@ -19,17 +20,17 @@ type AWSCodePipelineCustomActionType struct { // ConfigurationProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-configurationproperties - ConfigurationProperties []AWSCodePipelineCustomActionType_ConfigurationProperties `json:"ConfigurationProperties,omitempty"` + ConfigurationProperties []CustomActionType_ConfigurationProperties `json:"ConfigurationProperties,omitempty"` // InputArtifactDetails AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-inputartifactdetails - InputArtifactDetails *AWSCodePipelineCustomActionType_ArtifactDetails `json:"InputArtifactDetails,omitempty"` + InputArtifactDetails *CustomActionType_ArtifactDetails `json:"InputArtifactDetails,omitempty"` // OutputArtifactDetails AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-outputartifactdetails - OutputArtifactDetails *AWSCodePipelineCustomActionType_ArtifactDetails `json:"OutputArtifactDetails,omitempty"` + OutputArtifactDetails *CustomActionType_ArtifactDetails `json:"OutputArtifactDetails,omitempty"` // Provider AWS CloudFormation Property // Required: true @@ -39,7 +40,7 @@ type AWSCodePipelineCustomActionType struct { // Settings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-settings - Settings *AWSCodePipelineCustomActionType_Settings `json:"Settings,omitempty"` + Settings *CustomActionType_Settings `json:"Settings,omitempty"` // Version AWS CloudFormation Property // Required: true @@ -57,50 +58,50 @@ type AWSCodePipelineCustomActionType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineCustomActionType) AWSCloudFormationType() string { +func (r *CustomActionType) AWSCloudFormationType() string { return "AWS::CodePipeline::CustomActionType" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineCustomActionType) DependsOn() []string { +func (r *CustomActionType) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineCustomActionType) SetDependsOn(dependencies []string) { +func (r *CustomActionType) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineCustomActionType) Metadata() map[string]interface{} { +func (r *CustomActionType) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineCustomActionType) SetMetadata(metadata map[string]interface{}) { +func (r *CustomActionType) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineCustomActionType) DeletionPolicy() policies.DeletionPolicy { +func (r *CustomActionType) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineCustomActionType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CustomActionType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodePipelineCustomActionType) MarshalJSON() ([]byte, error) { - type Properties AWSCodePipelineCustomActionType +func (r CustomActionType) MarshalJSON() ([]byte, error) { + type Properties CustomActionType return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSCodePipelineCustomActionType) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodePipelineCustomActionType) UnmarshalJSON(b []byte) error { - type Properties AWSCodePipelineCustomActionType +func (r *CustomActionType) UnmarshalJSON(b []byte) error { + type Properties CustomActionType res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSCodePipelineCustomActionType) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodePipelineCustomActionType(*res.Properties) + *r = CustomActionType(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/codepipeline/aws-codepipeline-customactiontype_artifactdetails.go b/cloudformation/codepipeline/aws-codepipeline-customactiontype_artifactdetails.go new file mode 100644 index 0000000000..b694660993 --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-customactiontype_artifactdetails.go @@ -0,0 +1,70 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// CustomActionType_ArtifactDetails AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType.ArtifactDetails) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html +type CustomActionType_ArtifactDetails struct { + + // MaximumCount AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-maximumcount + MaximumCount int `json:"MaximumCount"` + + // MinimumCount AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-minimumcount + MinimumCount int `json:"MinimumCount"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *CustomActionType_ArtifactDetails) AWSCloudFormationType() string { + return "AWS::CodePipeline::CustomActionType.ArtifactDetails" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CustomActionType_ArtifactDetails) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CustomActionType_ArtifactDetails) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CustomActionType_ArtifactDetails) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CustomActionType_ArtifactDetails) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CustomActionType_ArtifactDetails) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CustomActionType_ArtifactDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codepipeline-customactiontype_configurationproperties.go b/cloudformation/codepipeline/aws-codepipeline-customactiontype_configurationproperties.go similarity index 79% rename from cloudformation/resources/aws-codepipeline-customactiontype_configurationproperties.go rename to cloudformation/codepipeline/aws-codepipeline-customactiontype_configurationproperties.go index 94afc1b7c4..ad2cb37b27 100644 --- a/cloudformation/resources/aws-codepipeline-customactiontype_configurationproperties.go +++ b/cloudformation/codepipeline/aws-codepipeline-customactiontype_configurationproperties.go @@ -1,10 +1,12 @@ -package resources +package codepipeline -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodePipelineCustomActionType_ConfigurationProperties AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType.ConfigurationProperties) +// CustomActionType_ConfigurationProperties AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType.ConfigurationProperties) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html -type AWSCodePipelineCustomActionType_ConfigurationProperties struct { +type CustomActionType_ConfigurationProperties struct { // Description AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSCodePipelineCustomActionType_ConfigurationProperties struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineCustomActionType_ConfigurationProperties) AWSCloudFormationType() string { +func (r *CustomActionType_ConfigurationProperties) AWSCloudFormationType() string { return "AWS::CodePipeline::CustomActionType.ConfigurationProperties" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineCustomActionType_ConfigurationProperties) DependsOn() []string { +func (r *CustomActionType_ConfigurationProperties) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineCustomActionType_ConfigurationProperties) SetDependsOn(dependencies []string) { +func (r *CustomActionType_ConfigurationProperties) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineCustomActionType_ConfigurationProperties) Metadata() map[string]interface{} { +func (r *CustomActionType_ConfigurationProperties) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineCustomActionType_ConfigurationProperties) SetMetadata(metadata map[string]interface{}) { +func (r *CustomActionType_ConfigurationProperties) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineCustomActionType_ConfigurationProperties) DeletionPolicy() policies.DeletionPolicy { +func (r *CustomActionType_ConfigurationProperties) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineCustomActionType_ConfigurationProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CustomActionType_ConfigurationProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-customactiontype_settings.go b/cloudformation/codepipeline/aws-codepipeline-customactiontype_settings.go similarity index 78% rename from cloudformation/resources/aws-codepipeline-customactiontype_settings.go rename to cloudformation/codepipeline/aws-codepipeline-customactiontype_settings.go index 989ccea2bc..73442a8800 100644 --- a/cloudformation/resources/aws-codepipeline-customactiontype_settings.go +++ b/cloudformation/codepipeline/aws-codepipeline-customactiontype_settings.go @@ -1,10 +1,12 @@ -package resources +package codepipeline -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodePipelineCustomActionType_Settings AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType.Settings) +// CustomActionType_Settings AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType.Settings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html -type AWSCodePipelineCustomActionType_Settings struct { +type CustomActionType_Settings struct { // EntityUrlTemplate AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSCodePipelineCustomActionType_Settings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineCustomActionType_Settings) AWSCloudFormationType() string { +func (r *CustomActionType_Settings) AWSCloudFormationType() string { return "AWS::CodePipeline::CustomActionType.Settings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineCustomActionType_Settings) DependsOn() []string { +func (r *CustomActionType_Settings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineCustomActionType_Settings) SetDependsOn(dependencies []string) { +func (r *CustomActionType_Settings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineCustomActionType_Settings) Metadata() map[string]interface{} { +func (r *CustomActionType_Settings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineCustomActionType_Settings) SetMetadata(metadata map[string]interface{}) { +func (r *CustomActionType_Settings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineCustomActionType_Settings) DeletionPolicy() policies.DeletionPolicy { +func (r *CustomActionType_Settings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineCustomActionType_Settings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CustomActionType_Settings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline.go b/cloudformation/codepipeline/aws-codepipeline-pipeline.go similarity index 78% rename from cloudformation/resources/aws-codepipeline-pipeline.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline.go index 14c1df6980..fa0d17fa0c 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline.go @@ -1,30 +1,31 @@ -package resources +package codepipeline import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCodePipelinePipeline AWS CloudFormation Resource (AWS::CodePipeline::Pipeline) +// Pipeline AWS CloudFormation Resource (AWS::CodePipeline::Pipeline) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html -type AWSCodePipelinePipeline struct { +type Pipeline struct { // ArtifactStore AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-artifactstore - ArtifactStore *AWSCodePipelinePipeline_ArtifactStore `json:"ArtifactStore,omitempty"` + ArtifactStore *Pipeline_ArtifactStore `json:"ArtifactStore,omitempty"` // ArtifactStores AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-artifactstores - ArtifactStores []AWSCodePipelinePipeline_ArtifactStoreMap `json:"ArtifactStores,omitempty"` + ArtifactStores []Pipeline_ArtifactStoreMap `json:"ArtifactStores,omitempty"` // DisableInboundStageTransitions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-disableinboundstagetransitions - DisableInboundStageTransitions []AWSCodePipelinePipeline_StageTransition `json:"DisableInboundStageTransitions,omitempty"` + DisableInboundStageTransitions []Pipeline_StageTransition `json:"DisableInboundStageTransitions,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -44,7 +45,7 @@ type AWSCodePipelinePipeline struct { // Stages AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-stages - Stages []AWSCodePipelinePipeline_StageDeclaration `json:"Stages,omitempty"` + Stages []Pipeline_StageDeclaration `json:"Stages,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +58,50 @@ type AWSCodePipelinePipeline struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline) AWSCloudFormationType() string { +func (r *Pipeline) AWSCloudFormationType() string { return "AWS::CodePipeline::Pipeline" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline) DependsOn() []string { +func (r *Pipeline) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline) SetDependsOn(dependencies []string) { +func (r *Pipeline) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline) Metadata() map[string]interface{} { +func (r *Pipeline) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodePipelinePipeline) MarshalJSON() ([]byte, error) { - type Properties AWSCodePipelinePipeline +func (r Pipeline) MarshalJSON() ([]byte, error) { + type Properties Pipeline return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSCodePipelinePipeline) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodePipelinePipeline) UnmarshalJSON(b []byte) error { - type Properties AWSCodePipelinePipeline +func (r *Pipeline) UnmarshalJSON(b []byte) error { + type Properties Pipeline res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSCodePipelinePipeline) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodePipelinePipeline(*res.Properties) + *r = Pipeline(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-codepipeline-pipeline_actiondeclaration.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_actiondeclaration.go similarity index 77% rename from cloudformation/resources/aws-codepipeline-pipeline_actiondeclaration.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_actiondeclaration.go index be8f2507f7..37cf7fbbd8 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_actiondeclaration.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_actiondeclaration.go @@ -1,15 +1,17 @@ -package resources +package codepipeline -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodePipelinePipeline_ActionDeclaration AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ActionDeclaration) +// Pipeline_ActionDeclaration AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ActionDeclaration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html -type AWSCodePipelinePipeline_ActionDeclaration struct { +type Pipeline_ActionDeclaration struct { // ActionTypeId AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid - ActionTypeId *AWSCodePipelinePipeline_ActionTypeId `json:"ActionTypeId,omitempty"` + ActionTypeId *Pipeline_ActionTypeId `json:"ActionTypeId,omitempty"` // Configuration AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSCodePipelinePipeline_ActionDeclaration struct { // InputArtifacts AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts - InputArtifacts []AWSCodePipelinePipeline_InputArtifact `json:"InputArtifacts,omitempty"` + InputArtifacts []Pipeline_InputArtifact `json:"InputArtifacts,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSCodePipelinePipeline_ActionDeclaration struct { // OutputArtifacts AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts - OutputArtifacts []AWSCodePipelinePipeline_OutputArtifact `json:"OutputArtifacts,omitempty"` + OutputArtifacts []Pipeline_OutputArtifact `json:"OutputArtifacts,omitempty"` // Region AWS CloudFormation Property // Required: false @@ -57,42 +59,42 @@ type AWSCodePipelinePipeline_ActionDeclaration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_ActionDeclaration) AWSCloudFormationType() string { +func (r *Pipeline_ActionDeclaration) AWSCloudFormationType() string { return "AWS::CodePipeline::Pipeline.ActionDeclaration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_ActionDeclaration) DependsOn() []string { +func (r *Pipeline_ActionDeclaration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_ActionDeclaration) SetDependsOn(dependencies []string) { +func (r *Pipeline_ActionDeclaration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_ActionDeclaration) Metadata() map[string]interface{} { +func (r *Pipeline_ActionDeclaration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_ActionDeclaration) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_ActionDeclaration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_ActionDeclaration) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_ActionDeclaration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_ActionDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_ActionDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline_actiontypeid.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_actiontypeid.go similarity index 78% rename from cloudformation/resources/aws-codepipeline-pipeline_actiontypeid.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_actiontypeid.go index 27d22ad68b..2494685fd0 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_actiontypeid.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_actiontypeid.go @@ -1,10 +1,12 @@ -package resources +package codepipeline -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodePipelinePipeline_ActionTypeId AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ActionTypeId) +// Pipeline_ActionTypeId AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ActionTypeId) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html -type AWSCodePipelinePipeline_ActionTypeId struct { +type Pipeline_ActionTypeId struct { // Category AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSCodePipelinePipeline_ActionTypeId struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_ActionTypeId) AWSCloudFormationType() string { +func (r *Pipeline_ActionTypeId) AWSCloudFormationType() string { return "AWS::CodePipeline::Pipeline.ActionTypeId" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_ActionTypeId) DependsOn() []string { +func (r *Pipeline_ActionTypeId) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_ActionTypeId) SetDependsOn(dependencies []string) { +func (r *Pipeline_ActionTypeId) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_ActionTypeId) Metadata() map[string]interface{} { +func (r *Pipeline_ActionTypeId) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_ActionTypeId) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_ActionTypeId) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_ActionTypeId) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_ActionTypeId) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_ActionTypeId) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_ActionTypeId) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstore.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstore.go new file mode 100644 index 0000000000..d27db97687 --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstore.go @@ -0,0 +1,75 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_ArtifactStore AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ArtifactStore) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html +type Pipeline_ArtifactStore struct { + + // EncryptionKey AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey + EncryptionKey *Pipeline_EncryptionKey `json:"EncryptionKey,omitempty"` + + // Location AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-location + Location string `json:"Location,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_ArtifactStore) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.ArtifactStore" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ArtifactStore) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ArtifactStore) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ArtifactStore) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ArtifactStore) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ArtifactStore) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ArtifactStore) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstoremap.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstoremap.go new file mode 100644 index 0000000000..d252bda168 --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstoremap.go @@ -0,0 +1,70 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_ArtifactStoreMap AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ArtifactStoreMap) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html +type Pipeline_ArtifactStoreMap struct { + + // ArtifactStore AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-artifactstore + ArtifactStore *Pipeline_ArtifactStore `json:"ArtifactStore,omitempty"` + + // Region AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-region + Region string `json:"Region,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_ArtifactStoreMap) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.ArtifactStoreMap" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ArtifactStoreMap) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ArtifactStoreMap) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ArtifactStoreMap) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ArtifactStoreMap) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ArtifactStoreMap) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ArtifactStoreMap) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_blockerdeclaration.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_blockerdeclaration.go new file mode 100644 index 0000000000..60d693fd69 --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_blockerdeclaration.go @@ -0,0 +1,70 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_BlockerDeclaration AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.BlockerDeclaration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html +type Pipeline_BlockerDeclaration struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-name + Name string `json:"Name,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_BlockerDeclaration) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.BlockerDeclaration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_BlockerDeclaration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_BlockerDeclaration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_BlockerDeclaration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_BlockerDeclaration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_BlockerDeclaration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_BlockerDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_encryptionkey.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_encryptionkey.go new file mode 100644 index 0000000000..6118b3b6fb --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_encryptionkey.go @@ -0,0 +1,70 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_EncryptionKey AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.EncryptionKey) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html +type Pipeline_EncryptionKey struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-id + Id string `json:"Id,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_EncryptionKey) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.EncryptionKey" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_EncryptionKey) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_EncryptionKey) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_EncryptionKey) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_EncryptionKey) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_EncryptionKey) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_EncryptionKey) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_inputartifact.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_inputartifact.go new file mode 100644 index 0000000000..a403bfcf25 --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_inputartifact.go @@ -0,0 +1,65 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_InputArtifact AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.InputArtifact) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html +type Pipeline_InputArtifact struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_InputArtifact) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.InputArtifact" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_InputArtifact) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_InputArtifact) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_InputArtifact) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_InputArtifact) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_InputArtifact) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_InputArtifact) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_outputartifact.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_outputartifact.go new file mode 100644 index 0000000000..abc37722d4 --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_outputartifact.go @@ -0,0 +1,65 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_OutputArtifact AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.OutputArtifact) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html +type Pipeline_OutputArtifact struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_OutputArtifact) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.OutputArtifact" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_OutputArtifact) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_OutputArtifact) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_OutputArtifact) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_OutputArtifact) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_OutputArtifact) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_OutputArtifact) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go new file mode 100644 index 0000000000..57fc6ab3ef --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go @@ -0,0 +1,75 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_StageDeclaration AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.StageDeclaration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html +type Pipeline_StageDeclaration struct { + + // Actions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-actions + Actions []Pipeline_ActionDeclaration `json:"Actions,omitempty"` + + // Blockers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-blockers + Blockers []Pipeline_BlockerDeclaration `json:"Blockers,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_StageDeclaration) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.StageDeclaration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_StageDeclaration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_StageDeclaration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_StageDeclaration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_StageDeclaration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_StageDeclaration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_StageDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_stagetransition.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagetransition.go new file mode 100644 index 0000000000..25974f72d7 --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagetransition.go @@ -0,0 +1,70 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_StageTransition AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.StageTransition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html +type Pipeline_StageTransition struct { + + // Reason AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-reason + Reason string `json:"Reason,omitempty"` + + // StageName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-stagename + StageName string `json:"StageName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_StageTransition) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.StageTransition" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_StageTransition) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_StageTransition) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_StageTransition) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_StageTransition) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_StageTransition) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_StageTransition) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codepipeline-webhook.go b/cloudformation/codepipeline/aws-codepipeline-webhook.go similarity index 82% rename from cloudformation/resources/aws-codepipeline-webhook.go rename to cloudformation/codepipeline/aws-codepipeline-webhook.go index 6ce4702187..cfb2866c00 100644 --- a/cloudformation/resources/aws-codepipeline-webhook.go +++ b/cloudformation/codepipeline/aws-codepipeline-webhook.go @@ -1,15 +1,16 @@ -package resources +package codepipeline import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCodePipelineWebhook AWS CloudFormation Resource (AWS::CodePipeline::Webhook) +// Webhook AWS CloudFormation Resource (AWS::CodePipeline::Webhook) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html -type AWSCodePipelineWebhook struct { +type Webhook struct { // Authentication AWS CloudFormation Property // Required: true @@ -19,12 +20,12 @@ type AWSCodePipelineWebhook struct { // AuthenticationConfiguration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-authenticationconfiguration - AuthenticationConfiguration *AWSCodePipelineWebhook_WebhookAuthConfiguration `json:"AuthenticationConfiguration,omitempty"` + AuthenticationConfiguration *Webhook_WebhookAuthConfiguration `json:"AuthenticationConfiguration,omitempty"` // Filters AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-filters - Filters []AWSCodePipelineWebhook_WebhookFilterRule `json:"Filters,omitempty"` + Filters []Webhook_WebhookFilterRule `json:"Filters,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -62,50 +63,50 @@ type AWSCodePipelineWebhook struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineWebhook) AWSCloudFormationType() string { +func (r *Webhook) AWSCloudFormationType() string { return "AWS::CodePipeline::Webhook" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineWebhook) DependsOn() []string { +func (r *Webhook) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineWebhook) SetDependsOn(dependencies []string) { +func (r *Webhook) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineWebhook) Metadata() map[string]interface{} { +func (r *Webhook) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineWebhook) SetMetadata(metadata map[string]interface{}) { +func (r *Webhook) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineWebhook) DeletionPolicy() policies.DeletionPolicy { +func (r *Webhook) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineWebhook) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Webhook) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodePipelineWebhook) MarshalJSON() ([]byte, error) { - type Properties AWSCodePipelineWebhook +func (r Webhook) MarshalJSON() ([]byte, error) { + type Properties Webhook return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSCodePipelineWebhook) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodePipelineWebhook) UnmarshalJSON(b []byte) error { - type Properties AWSCodePipelineWebhook +func (r *Webhook) UnmarshalJSON(b []byte) error { + type Properties Webhook res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSCodePipelineWebhook) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodePipelineWebhook(*res.Properties) + *r = Webhook(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/codepipeline/aws-codepipeline-webhook_webhookauthconfiguration.go b/cloudformation/codepipeline/aws-codepipeline-webhook_webhookauthconfiguration.go new file mode 100644 index 0000000000..a158e80f5e --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-webhook_webhookauthconfiguration.go @@ -0,0 +1,70 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Webhook_WebhookAuthConfiguration AWS CloudFormation Resource (AWS::CodePipeline::Webhook.WebhookAuthConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html +type Webhook_WebhookAuthConfiguration struct { + + // AllowedIPRange AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html#cfn-codepipeline-webhook-webhookauthconfiguration-allowediprange + AllowedIPRange string `json:"AllowedIPRange,omitempty"` + + // SecretToken AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html#cfn-codepipeline-webhook-webhookauthconfiguration-secrettoken + SecretToken string `json:"SecretToken,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Webhook_WebhookAuthConfiguration) AWSCloudFormationType() string { + return "AWS::CodePipeline::Webhook.WebhookAuthConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Webhook_WebhookAuthConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Webhook_WebhookAuthConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Webhook_WebhookAuthConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Webhook_WebhookAuthConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Webhook_WebhookAuthConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Webhook_WebhookAuthConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/codepipeline/aws-codepipeline-webhook_webhookfilterrule.go b/cloudformation/codepipeline/aws-codepipeline-webhook_webhookfilterrule.go new file mode 100644 index 0000000000..671f059ee3 --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-webhook_webhookfilterrule.go @@ -0,0 +1,70 @@ +package codepipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Webhook_WebhookFilterRule AWS CloudFormation Resource (AWS::CodePipeline::Webhook.WebhookFilterRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html +type Webhook_WebhookFilterRule struct { + + // JsonPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html#cfn-codepipeline-webhook-webhookfilterrule-jsonpath + JsonPath string `json:"JsonPath,omitempty"` + + // MatchEquals AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html#cfn-codepipeline-webhook-webhookfilterrule-matchequals + MatchEquals string `json:"MatchEquals,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Webhook_WebhookFilterRule) AWSCloudFormationType() string { + return "AWS::CodePipeline::Webhook.WebhookFilterRule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Webhook_WebhookFilterRule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Webhook_WebhookFilterRule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Webhook_WebhookFilterRule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Webhook_WebhookFilterRule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Webhook_WebhookFilterRule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Webhook_WebhookFilterRule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codestar-githubrepository.go b/cloudformation/codestar/aws-codestar-githubrepository.go similarity index 82% rename from cloudformation/resources/aws-codestar-githubrepository.go rename to cloudformation/codestar/aws-codestar-githubrepository.go index 2ace2b5119..e305249253 100644 --- a/cloudformation/resources/aws-codestar-githubrepository.go +++ b/cloudformation/codestar/aws-codestar-githubrepository.go @@ -1,20 +1,21 @@ -package resources +package codestar import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCodeStarGitHubRepository AWS CloudFormation Resource (AWS::CodeStar::GitHubRepository) +// GitHubRepository AWS CloudFormation Resource (AWS::CodeStar::GitHubRepository) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html -type AWSCodeStarGitHubRepository struct { +type GitHubRepository struct { // Code AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-code - Code *AWSCodeStarGitHubRepository_Code `json:"Code,omitempty"` + Code *GitHubRepository_Code `json:"Code,omitempty"` // EnableIssues AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSCodeStarGitHubRepository struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeStarGitHubRepository) AWSCloudFormationType() string { +func (r *GitHubRepository) AWSCloudFormationType() string { return "AWS::CodeStar::GitHubRepository" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeStarGitHubRepository) DependsOn() []string { +func (r *GitHubRepository) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeStarGitHubRepository) SetDependsOn(dependencies []string) { +func (r *GitHubRepository) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeStarGitHubRepository) Metadata() map[string]interface{} { +func (r *GitHubRepository) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeStarGitHubRepository) SetMetadata(metadata map[string]interface{}) { +func (r *GitHubRepository) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeStarGitHubRepository) DeletionPolicy() policies.DeletionPolicy { +func (r *GitHubRepository) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeStarGitHubRepository) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GitHubRepository) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCodeStarGitHubRepository) MarshalJSON() ([]byte, error) { - type Properties AWSCodeStarGitHubRepository +func (r GitHubRepository) MarshalJSON() ([]byte, error) { + type Properties GitHubRepository return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSCodeStarGitHubRepository) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCodeStarGitHubRepository) UnmarshalJSON(b []byte) error { - type Properties AWSCodeStarGitHubRepository +func (r *GitHubRepository) UnmarshalJSON(b []byte) error { + type Properties GitHubRepository res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSCodeStarGitHubRepository) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCodeStarGitHubRepository(*res.Properties) + *r = GitHubRepository(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/codestar/aws-codestar-githubrepository_code.go b/cloudformation/codestar/aws-codestar-githubrepository_code.go new file mode 100644 index 0000000000..d189bdbd6f --- /dev/null +++ b/cloudformation/codestar/aws-codestar-githubrepository_code.go @@ -0,0 +1,65 @@ +package codestar + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// GitHubRepository_Code AWS CloudFormation Resource (AWS::CodeStar::GitHubRepository.Code) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-code.html +type GitHubRepository_Code struct { + + // S3 AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-code.html#cfn-codestar-githubrepository-code-s3 + S3 *GitHubRepository_S3 `json:"S3,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *GitHubRepository_Code) AWSCloudFormationType() string { + return "AWS::CodeStar::GitHubRepository.Code" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GitHubRepository_Code) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GitHubRepository_Code) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GitHubRepository_Code) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GitHubRepository_Code) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GitHubRepository_Code) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GitHubRepository_Code) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-codestar-githubrepository_s3.go b/cloudformation/codestar/aws-codestar-githubrepository_s3.go similarity index 76% rename from cloudformation/resources/aws-codestar-githubrepository_s3.go rename to cloudformation/codestar/aws-codestar-githubrepository_s3.go index 0bd58e0af0..533700fe04 100644 --- a/cloudformation/resources/aws-codestar-githubrepository_s3.go +++ b/cloudformation/codestar/aws-codestar-githubrepository_s3.go @@ -1,10 +1,12 @@ -package resources +package codestar -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeStarGitHubRepository_S3 AWS CloudFormation Resource (AWS::CodeStar::GitHubRepository.S3) +// GitHubRepository_S3 AWS CloudFormation Resource (AWS::CodeStar::GitHubRepository.S3) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html -type AWSCodeStarGitHubRepository_S3 struct { +type GitHubRepository_S3 struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSCodeStarGitHubRepository_S3 struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeStarGitHubRepository_S3) AWSCloudFormationType() string { +func (r *GitHubRepository_S3) AWSCloudFormationType() string { return "AWS::CodeStar::GitHubRepository.S3" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeStarGitHubRepository_S3) DependsOn() []string { +func (r *GitHubRepository_S3) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeStarGitHubRepository_S3) SetDependsOn(dependencies []string) { +func (r *GitHubRepository_S3) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeStarGitHubRepository_S3) Metadata() map[string]interface{} { +func (r *GitHubRepository_S3) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeStarGitHubRepository_S3) SetMetadata(metadata map[string]interface{}) { +func (r *GitHubRepository_S3) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeStarGitHubRepository_S3) DeletionPolicy() policies.DeletionPolicy { +func (r *GitHubRepository_S3) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeStarGitHubRepository_S3) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GitHubRepository_S3) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-identitypool.go b/cloudformation/cognito/aws-cognito-identitypool.go similarity index 83% rename from cloudformation/resources/aws-cognito-identitypool.go rename to cloudformation/cognito/aws-cognito-identitypool.go index 1535faa3da..3a2154b4d4 100644 --- a/cloudformation/resources/aws-cognito-identitypool.go +++ b/cloudformation/cognito/aws-cognito-identitypool.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoIdentityPool AWS CloudFormation Resource (AWS::Cognito::IdentityPool) +// IdentityPool AWS CloudFormation Resource (AWS::Cognito::IdentityPool) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html -type AWSCognitoIdentityPool struct { +type IdentityPool struct { // AllowUnauthenticatedIdentities AWS CloudFormation Property // Required: true @@ -24,12 +25,12 @@ type AWSCognitoIdentityPool struct { // CognitoIdentityProviders AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitoidentityproviders - CognitoIdentityProviders []AWSCognitoIdentityPool_CognitoIdentityProvider `json:"CognitoIdentityProviders,omitempty"` + CognitoIdentityProviders []IdentityPool_CognitoIdentityProvider `json:"CognitoIdentityProviders,omitempty"` // CognitoStreams AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitostreams - CognitoStreams *AWSCognitoIdentityPool_CognitoStreams `json:"CognitoStreams,omitempty"` + CognitoStreams *IdentityPool_CognitoStreams `json:"CognitoStreams,omitempty"` // DeveloperProviderName AWS CloudFormation Property // Required: false @@ -49,7 +50,7 @@ type AWSCognitoIdentityPool struct { // PushSync AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-pushsync - PushSync *AWSCognitoIdentityPool_PushSync `json:"PushSync,omitempty"` + PushSync *IdentityPool_PushSync `json:"PushSync,omitempty"` // SamlProviderARNs AWS CloudFormation Property // Required: false @@ -72,50 +73,50 @@ type AWSCognitoIdentityPool struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPool) AWSCloudFormationType() string { +func (r *IdentityPool) AWSCloudFormationType() string { return "AWS::Cognito::IdentityPool" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPool) DependsOn() []string { +func (r *IdentityPool) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPool) SetDependsOn(dependencies []string) { +func (r *IdentityPool) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPool) Metadata() map[string]interface{} { +func (r *IdentityPool) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPool) SetMetadata(metadata map[string]interface{}) { +func (r *IdentityPool) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPool) DeletionPolicy() policies.DeletionPolicy { +func (r *IdentityPool) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPool) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IdentityPool) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoIdentityPool) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoIdentityPool +func (r IdentityPool) MarshalJSON() ([]byte, error) { + type Properties IdentityPool return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSCognitoIdentityPool) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoIdentityPool) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoIdentityPool +func (r *IdentityPool) UnmarshalJSON(b []byte) error { + type Properties IdentityPool res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSCognitoIdentityPool) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoIdentityPool(*res.Properties) + *r = IdentityPool(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cognito/aws-cognito-identitypool_cognitoidentityprovider.go b/cloudformation/cognito/aws-cognito-identitypool_cognitoidentityprovider.go new file mode 100644 index 0000000000..507c57a243 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-identitypool_cognitoidentityprovider.go @@ -0,0 +1,75 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// IdentityPool_CognitoIdentityProvider AWS CloudFormation Resource (AWS::Cognito::IdentityPool.CognitoIdentityProvider) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html +type IdentityPool_CognitoIdentityProvider struct { + + // ClientId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-clientid + ClientId string `json:"ClientId,omitempty"` + + // ProviderName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-providername + ProviderName string `json:"ProviderName,omitempty"` + + // ServerSideTokenCheck AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-serversidetokencheck + ServerSideTokenCheck bool `json:"ServerSideTokenCheck,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *IdentityPool_CognitoIdentityProvider) AWSCloudFormationType() string { + return "AWS::Cognito::IdentityPool.CognitoIdentityProvider" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IdentityPool_CognitoIdentityProvider) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IdentityPool_CognitoIdentityProvider) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IdentityPool_CognitoIdentityProvider) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IdentityPool_CognitoIdentityProvider) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IdentityPool_CognitoIdentityProvider) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IdentityPool_CognitoIdentityProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-identitypool_cognitostreams.go b/cloudformation/cognito/aws-cognito-identitypool_cognitostreams.go similarity index 75% rename from cloudformation/resources/aws-cognito-identitypool_cognitostreams.go rename to cloudformation/cognito/aws-cognito-identitypool_cognitostreams.go index 5a7db6ff15..2b0afb1aec 100644 --- a/cloudformation/resources/aws-cognito-identitypool_cognitostreams.go +++ b/cloudformation/cognito/aws-cognito-identitypool_cognitostreams.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoIdentityPool_CognitoStreams AWS CloudFormation Resource (AWS::Cognito::IdentityPool.CognitoStreams) +// IdentityPool_CognitoStreams AWS CloudFormation Resource (AWS::Cognito::IdentityPool.CognitoStreams) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html -type AWSCognitoIdentityPool_CognitoStreams struct { +type IdentityPool_CognitoStreams struct { // RoleArn AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCognitoIdentityPool_CognitoStreams struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPool_CognitoStreams) AWSCloudFormationType() string { +func (r *IdentityPool_CognitoStreams) AWSCloudFormationType() string { return "AWS::Cognito::IdentityPool.CognitoStreams" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPool_CognitoStreams) DependsOn() []string { +func (r *IdentityPool_CognitoStreams) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPool_CognitoStreams) SetDependsOn(dependencies []string) { +func (r *IdentityPool_CognitoStreams) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPool_CognitoStreams) Metadata() map[string]interface{} { +func (r *IdentityPool_CognitoStreams) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPool_CognitoStreams) SetMetadata(metadata map[string]interface{}) { +func (r *IdentityPool_CognitoStreams) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPool_CognitoStreams) DeletionPolicy() policies.DeletionPolicy { +func (r *IdentityPool_CognitoStreams) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPool_CognitoStreams) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IdentityPool_CognitoStreams) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cognito/aws-cognito-identitypool_pushsync.go b/cloudformation/cognito/aws-cognito-identitypool_pushsync.go new file mode 100644 index 0000000000..efa5168611 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-identitypool_pushsync.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// IdentityPool_PushSync AWS CloudFormation Resource (AWS::Cognito::IdentityPool.PushSync) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html +type IdentityPool_PushSync struct { + + // ApplicationArns AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-applicationarns + ApplicationArns []string `json:"ApplicationArns,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-rolearn + RoleArn string `json:"RoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *IdentityPool_PushSync) AWSCloudFormationType() string { + return "AWS::Cognito::IdentityPool.PushSync" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IdentityPool_PushSync) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IdentityPool_PushSync) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IdentityPool_PushSync) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IdentityPool_PushSync) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IdentityPool_PushSync) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IdentityPool_PushSync) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-identitypoolroleattachment.go b/cloudformation/cognito/aws-cognito-identitypoolroleattachment.go similarity index 78% rename from cloudformation/resources/aws-cognito-identitypoolroleattachment.go rename to cloudformation/cognito/aws-cognito-identitypoolroleattachment.go index 2e2ea67ee6..fae3ff6ad2 100644 --- a/cloudformation/resources/aws-cognito-identitypoolroleattachment.go +++ b/cloudformation/cognito/aws-cognito-identitypoolroleattachment.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoIdentityPoolRoleAttachment AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment) +// IdentityPoolRoleAttachment AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html -type AWSCognitoIdentityPoolRoleAttachment struct { +type IdentityPoolRoleAttachment struct { // IdentityPoolId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSCognitoIdentityPoolRoleAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPoolRoleAttachment) AWSCloudFormationType() string { +func (r *IdentityPoolRoleAttachment) AWSCloudFormationType() string { return "AWS::Cognito::IdentityPoolRoleAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPoolRoleAttachment) DependsOn() []string { +func (r *IdentityPoolRoleAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPoolRoleAttachment) SetDependsOn(dependencies []string) { +func (r *IdentityPoolRoleAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPoolRoleAttachment) Metadata() map[string]interface{} { +func (r *IdentityPoolRoleAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPoolRoleAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *IdentityPoolRoleAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPoolRoleAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *IdentityPoolRoleAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPoolRoleAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IdentityPoolRoleAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoIdentityPoolRoleAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoIdentityPoolRoleAttachment +func (r IdentityPoolRoleAttachment) MarshalJSON() ([]byte, error) { + type Properties IdentityPoolRoleAttachment return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSCognitoIdentityPoolRoleAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoIdentityPoolRoleAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoIdentityPoolRoleAttachment +func (r *IdentityPoolRoleAttachment) UnmarshalJSON(b []byte) error { + type Properties IdentityPoolRoleAttachment res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSCognitoIdentityPoolRoleAttachment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoIdentityPoolRoleAttachment(*res.Properties) + *r = IdentityPoolRoleAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cognito-identitypoolroleattachment_mappingrule.go b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_mappingrule.go similarity index 75% rename from cloudformation/resources/aws-cognito-identitypoolroleattachment_mappingrule.go rename to cloudformation/cognito/aws-cognito-identitypoolroleattachment_mappingrule.go index 486ec8b4a3..3c81dd950e 100644 --- a/cloudformation/resources/aws-cognito-identitypoolroleattachment_mappingrule.go +++ b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_mappingrule.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoIdentityPoolRoleAttachment_MappingRule AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment.MappingRule) +// IdentityPoolRoleAttachment_MappingRule AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment.MappingRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html -type AWSCognitoIdentityPoolRoleAttachment_MappingRule struct { +type IdentityPoolRoleAttachment_MappingRule struct { // Claim AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSCognitoIdentityPoolRoleAttachment_MappingRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPoolRoleAttachment_MappingRule) AWSCloudFormationType() string { +func (r *IdentityPoolRoleAttachment_MappingRule) AWSCloudFormationType() string { return "AWS::Cognito::IdentityPoolRoleAttachment.MappingRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPoolRoleAttachment_MappingRule) DependsOn() []string { +func (r *IdentityPoolRoleAttachment_MappingRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPoolRoleAttachment_MappingRule) SetDependsOn(dependencies []string) { +func (r *IdentityPoolRoleAttachment_MappingRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPoolRoleAttachment_MappingRule) Metadata() map[string]interface{} { +func (r *IdentityPoolRoleAttachment_MappingRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPoolRoleAttachment_MappingRule) SetMetadata(metadata map[string]interface{}) { +func (r *IdentityPoolRoleAttachment_MappingRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPoolRoleAttachment_MappingRule) DeletionPolicy() policies.DeletionPolicy { +func (r *IdentityPoolRoleAttachment_MappingRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPoolRoleAttachment_MappingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IdentityPoolRoleAttachment_MappingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rolemapping.go b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rolemapping.go new file mode 100644 index 0000000000..ffde2815a1 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rolemapping.go @@ -0,0 +1,80 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// IdentityPoolRoleAttachment_RoleMapping AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment.RoleMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html +type IdentityPoolRoleAttachment_RoleMapping struct { + + // AmbiguousRoleResolution AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-ambiguousroleresolution + AmbiguousRoleResolution string `json:"AmbiguousRoleResolution,omitempty"` + + // IdentityProvider AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-identityprovider + IdentityProvider string `json:"IdentityProvider,omitempty"` + + // RulesConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-rulesconfiguration + RulesConfiguration *IdentityPoolRoleAttachment_RulesConfigurationType `json:"RulesConfiguration,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *IdentityPoolRoleAttachment_RoleMapping) AWSCloudFormationType() string { + return "AWS::Cognito::IdentityPoolRoleAttachment.RoleMapping" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IdentityPoolRoleAttachment_RoleMapping) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IdentityPoolRoleAttachment_RoleMapping) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IdentityPoolRoleAttachment_RoleMapping) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IdentityPoolRoleAttachment_RoleMapping) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IdentityPoolRoleAttachment_RoleMapping) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IdentityPoolRoleAttachment_RoleMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go new file mode 100644 index 0000000000..d05fe48555 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go @@ -0,0 +1,65 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// IdentityPoolRoleAttachment_RulesConfigurationType AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment.RulesConfigurationType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rulesconfigurationtype.html +type IdentityPoolRoleAttachment_RulesConfigurationType struct { + + // Rules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rulesconfigurationtype.html#cfn-cognito-identitypoolroleattachment-rulesconfigurationtype-rules + Rules []IdentityPoolRoleAttachment_MappingRule `json:"Rules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *IdentityPoolRoleAttachment_RulesConfigurationType) AWSCloudFormationType() string { + return "AWS::Cognito::IdentityPoolRoleAttachment.RulesConfigurationType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IdentityPoolRoleAttachment_RulesConfigurationType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IdentityPoolRoleAttachment_RulesConfigurationType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IdentityPoolRoleAttachment_RulesConfigurationType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IdentityPoolRoleAttachment_RulesConfigurationType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IdentityPoolRoleAttachment_RulesConfigurationType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IdentityPoolRoleAttachment_RulesConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-userpool.go b/cloudformation/cognito/aws-cognito-userpool.go similarity index 82% rename from cloudformation/resources/aws-cognito-userpool.go rename to cloudformation/cognito/aws-cognito-userpool.go index f27b707f1c..6d6feeb304 100644 --- a/cloudformation/resources/aws-cognito-userpool.go +++ b/cloudformation/cognito/aws-cognito-userpool.go @@ -1,20 +1,21 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPool AWS CloudFormation Resource (AWS::Cognito::UserPool) +// UserPool AWS CloudFormation Resource (AWS::Cognito::UserPool) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html -type AWSCognitoUserPool struct { +type UserPool struct { // AdminCreateUserConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-admincreateuserconfig - AdminCreateUserConfig *AWSCognitoUserPool_AdminCreateUserConfig `json:"AdminCreateUserConfig,omitempty"` + AdminCreateUserConfig *UserPool_AdminCreateUserConfig `json:"AdminCreateUserConfig,omitempty"` // AliasAttributes AWS CloudFormation Property // Required: false @@ -29,12 +30,12 @@ type AWSCognitoUserPool struct { // DeviceConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-deviceconfiguration - DeviceConfiguration *AWSCognitoUserPool_DeviceConfiguration `json:"DeviceConfiguration,omitempty"` + DeviceConfiguration *UserPool_DeviceConfiguration `json:"DeviceConfiguration,omitempty"` // EmailConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailconfiguration - EmailConfiguration *AWSCognitoUserPool_EmailConfiguration `json:"EmailConfiguration,omitempty"` + EmailConfiguration *UserPool_EmailConfiguration `json:"EmailConfiguration,omitempty"` // EmailVerificationMessage AWS CloudFormation Property // Required: false @@ -54,7 +55,7 @@ type AWSCognitoUserPool struct { // LambdaConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-lambdaconfig - LambdaConfig *AWSCognitoUserPool_LambdaConfig `json:"LambdaConfig,omitempty"` + LambdaConfig *UserPool_LambdaConfig `json:"LambdaConfig,omitempty"` // MfaConfiguration AWS CloudFormation Property // Required: false @@ -64,12 +65,12 @@ type AWSCognitoUserPool struct { // Policies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-policies - Policies *AWSCognitoUserPool_Policies `json:"Policies,omitempty"` + Policies *UserPool_Policies `json:"Policies,omitempty"` // Schema AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-schema - Schema []AWSCognitoUserPool_SchemaAttribute `json:"Schema,omitempty"` + Schema []UserPool_SchemaAttribute `json:"Schema,omitempty"` // SmsAuthenticationMessage AWS CloudFormation Property // Required: false @@ -79,7 +80,7 @@ type AWSCognitoUserPool struct { // SmsConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsconfiguration - SmsConfiguration *AWSCognitoUserPool_SmsConfiguration `json:"SmsConfiguration,omitempty"` + SmsConfiguration *UserPool_SmsConfiguration `json:"SmsConfiguration,omitempty"` // SmsVerificationMessage AWS CloudFormation Property // Required: false @@ -89,7 +90,7 @@ type AWSCognitoUserPool struct { // UserPoolAddOns AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpooladdons - UserPoolAddOns *AWSCognitoUserPool_UserPoolAddOns `json:"UserPoolAddOns,omitempty"` + UserPoolAddOns *UserPool_UserPoolAddOns `json:"UserPoolAddOns,omitempty"` // UserPoolName AWS CloudFormation Property // Required: false @@ -109,7 +110,7 @@ type AWSCognitoUserPool struct { // VerificationMessageTemplate AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-verificationmessagetemplate - VerificationMessageTemplate *AWSCognitoUserPool_VerificationMessageTemplate `json:"VerificationMessageTemplate,omitempty"` + VerificationMessageTemplate *UserPool_VerificationMessageTemplate `json:"VerificationMessageTemplate,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -122,50 +123,50 @@ type AWSCognitoUserPool struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool) AWSCloudFormationType() string { +func (r *UserPool) AWSCloudFormationType() string { return "AWS::Cognito::UserPool" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool) DependsOn() []string { +func (r *UserPool) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool) SetDependsOn(dependencies []string) { +func (r *UserPool) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool) Metadata() map[string]interface{} { +func (r *UserPool) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool) SetMetadata(metadata map[string]interface{}) { +func (r *UserPool) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPool) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPool) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPool +func (r UserPool) MarshalJSON() ([]byte, error) { + type Properties UserPool return json.Marshal(&struct { Type string Properties Properties @@ -183,8 +184,8 @@ func (r AWSCognitoUserPool) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPool) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPool +func (r *UserPool) UnmarshalJSON(b []byte) error { + type Properties UserPool res := &struct { Type string Properties *Properties @@ -203,7 +204,7 @@ func (r *AWSCognitoUserPool) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPool(*res.Properties) + *r = UserPool(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cognito/aws-cognito-userpool_admincreateuserconfig.go b/cloudformation/cognito/aws-cognito-userpool_admincreateuserconfig.go new file mode 100644 index 0000000000..e7b1c09cfc --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpool_admincreateuserconfig.go @@ -0,0 +1,75 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPool_AdminCreateUserConfig AWS CloudFormation Resource (AWS::Cognito::UserPool.AdminCreateUserConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html +type UserPool_AdminCreateUserConfig struct { + + // AllowAdminCreateUserOnly AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-allowadmincreateuseronly + AllowAdminCreateUserOnly bool `json:"AllowAdminCreateUserOnly,omitempty"` + + // InviteMessageTemplate AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-invitemessagetemplate + InviteMessageTemplate *UserPool_InviteMessageTemplate `json:"InviteMessageTemplate,omitempty"` + + // UnusedAccountValidityDays AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-unusedaccountvaliditydays + UnusedAccountValidityDays int `json:"UnusedAccountValidityDays,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPool_AdminCreateUserConfig) AWSCloudFormationType() string { + return "AWS::Cognito::UserPool.AdminCreateUserConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_AdminCreateUserConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_AdminCreateUserConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_AdminCreateUserConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_AdminCreateUserConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_AdminCreateUserConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_AdminCreateUserConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpool_deviceconfiguration.go b/cloudformation/cognito/aws-cognito-userpool_deviceconfiguration.go new file mode 100644 index 0000000000..8fa3348c41 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpool_deviceconfiguration.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPool_DeviceConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPool.DeviceConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html +type UserPool_DeviceConfiguration struct { + + // ChallengeRequiredOnNewDevice AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-challengerequiredonnewdevice + ChallengeRequiredOnNewDevice bool `json:"ChallengeRequiredOnNewDevice,omitempty"` + + // DeviceOnlyRememberedOnUserPrompt AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-deviceonlyrememberedonuserprompt + DeviceOnlyRememberedOnUserPrompt bool `json:"DeviceOnlyRememberedOnUserPrompt,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPool_DeviceConfiguration) AWSCloudFormationType() string { + return "AWS::Cognito::UserPool.DeviceConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_DeviceConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_DeviceConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_DeviceConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_DeviceConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_DeviceConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_DeviceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-userpool_emailconfiguration.go b/cloudformation/cognito/aws-cognito-userpool_emailconfiguration.go similarity index 76% rename from cloudformation/resources/aws-cognito-userpool_emailconfiguration.go rename to cloudformation/cognito/aws-cognito-userpool_emailconfiguration.go index 2ab9f754b2..617c121e68 100644 --- a/cloudformation/resources/aws-cognito-userpool_emailconfiguration.go +++ b/cloudformation/cognito/aws-cognito-userpool_emailconfiguration.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPool_EmailConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPool.EmailConfiguration) +// UserPool_EmailConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPool.EmailConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html -type AWSCognitoUserPool_EmailConfiguration struct { +type UserPool_EmailConfiguration struct { // EmailSendingAccount AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCognitoUserPool_EmailConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_EmailConfiguration) AWSCloudFormationType() string { +func (r *UserPool_EmailConfiguration) AWSCloudFormationType() string { return "AWS::Cognito::UserPool.EmailConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_EmailConfiguration) DependsOn() []string { +func (r *UserPool_EmailConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_EmailConfiguration) SetDependsOn(dependencies []string) { +func (r *UserPool_EmailConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_EmailConfiguration) Metadata() map[string]interface{} { +func (r *UserPool_EmailConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_EmailConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *UserPool_EmailConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_EmailConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPool_EmailConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_EmailConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_EmailConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpool_invitemessagetemplate.go b/cloudformation/cognito/aws-cognito-userpool_invitemessagetemplate.go similarity index 75% rename from cloudformation/resources/aws-cognito-userpool_invitemessagetemplate.go rename to cloudformation/cognito/aws-cognito-userpool_invitemessagetemplate.go index 28ff9ba975..f2b9125244 100644 --- a/cloudformation/resources/aws-cognito-userpool_invitemessagetemplate.go +++ b/cloudformation/cognito/aws-cognito-userpool_invitemessagetemplate.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPool_InviteMessageTemplate AWS CloudFormation Resource (AWS::Cognito::UserPool.InviteMessageTemplate) +// UserPool_InviteMessageTemplate AWS CloudFormation Resource (AWS::Cognito::UserPool.InviteMessageTemplate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html -type AWSCognitoUserPool_InviteMessageTemplate struct { +type UserPool_InviteMessageTemplate struct { // EmailMessage AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCognitoUserPool_InviteMessageTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_InviteMessageTemplate) AWSCloudFormationType() string { +func (r *UserPool_InviteMessageTemplate) AWSCloudFormationType() string { return "AWS::Cognito::UserPool.InviteMessageTemplate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_InviteMessageTemplate) DependsOn() []string { +func (r *UserPool_InviteMessageTemplate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_InviteMessageTemplate) SetDependsOn(dependencies []string) { +func (r *UserPool_InviteMessageTemplate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_InviteMessageTemplate) Metadata() map[string]interface{} { +func (r *UserPool_InviteMessageTemplate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_InviteMessageTemplate) SetMetadata(metadata map[string]interface{}) { +func (r *UserPool_InviteMessageTemplate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_InviteMessageTemplate) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPool_InviteMessageTemplate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_InviteMessageTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_InviteMessageTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpool_lambdaconfig.go b/cloudformation/cognito/aws-cognito-userpool_lambdaconfig.go similarity index 85% rename from cloudformation/resources/aws-cognito-userpool_lambdaconfig.go rename to cloudformation/cognito/aws-cognito-userpool_lambdaconfig.go index 3d87a8f8f2..03f526524a 100644 --- a/cloudformation/resources/aws-cognito-userpool_lambdaconfig.go +++ b/cloudformation/cognito/aws-cognito-userpool_lambdaconfig.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPool_LambdaConfig AWS CloudFormation Resource (AWS::Cognito::UserPool.LambdaConfig) +// UserPool_LambdaConfig AWS CloudFormation Resource (AWS::Cognito::UserPool.LambdaConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html -type AWSCognitoUserPool_LambdaConfig struct { +type UserPool_LambdaConfig struct { // CreateAuthChallenge AWS CloudFormation Property // Required: false @@ -67,42 +69,42 @@ type AWSCognitoUserPool_LambdaConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_LambdaConfig) AWSCloudFormationType() string { +func (r *UserPool_LambdaConfig) AWSCloudFormationType() string { return "AWS::Cognito::UserPool.LambdaConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_LambdaConfig) DependsOn() []string { +func (r *UserPool_LambdaConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_LambdaConfig) SetDependsOn(dependencies []string) { +func (r *UserPool_LambdaConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_LambdaConfig) Metadata() map[string]interface{} { +func (r *UserPool_LambdaConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_LambdaConfig) SetMetadata(metadata map[string]interface{}) { +func (r *UserPool_LambdaConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_LambdaConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPool_LambdaConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_LambdaConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_LambdaConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cognito/aws-cognito-userpool_numberattributeconstraints.go b/cloudformation/cognito/aws-cognito-userpool_numberattributeconstraints.go new file mode 100644 index 0000000000..5eb1987ca7 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpool_numberattributeconstraints.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPool_NumberAttributeConstraints AWS CloudFormation Resource (AWS::Cognito::UserPool.NumberAttributeConstraints) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html +type UserPool_NumberAttributeConstraints struct { + + // MaxValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-maxvalue + MaxValue string `json:"MaxValue,omitempty"` + + // MinValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-minvalue + MinValue string `json:"MinValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPool_NumberAttributeConstraints) AWSCloudFormationType() string { + return "AWS::Cognito::UserPool.NumberAttributeConstraints" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_NumberAttributeConstraints) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_NumberAttributeConstraints) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_NumberAttributeConstraints) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_NumberAttributeConstraints) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_NumberAttributeConstraints) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_NumberAttributeConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-userpool_passwordpolicy.go b/cloudformation/cognito/aws-cognito-userpool_passwordpolicy.go similarity index 81% rename from cloudformation/resources/aws-cognito-userpool_passwordpolicy.go rename to cloudformation/cognito/aws-cognito-userpool_passwordpolicy.go index 32f6088b9e..a57d36f435 100644 --- a/cloudformation/resources/aws-cognito-userpool_passwordpolicy.go +++ b/cloudformation/cognito/aws-cognito-userpool_passwordpolicy.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPool_PasswordPolicy AWS CloudFormation Resource (AWS::Cognito::UserPool.PasswordPolicy) +// UserPool_PasswordPolicy AWS CloudFormation Resource (AWS::Cognito::UserPool.PasswordPolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html -type AWSCognitoUserPool_PasswordPolicy struct { +type UserPool_PasswordPolicy struct { // MinimumLength AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSCognitoUserPool_PasswordPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_PasswordPolicy) AWSCloudFormationType() string { +func (r *UserPool_PasswordPolicy) AWSCloudFormationType() string { return "AWS::Cognito::UserPool.PasswordPolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_PasswordPolicy) DependsOn() []string { +func (r *UserPool_PasswordPolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_PasswordPolicy) SetDependsOn(dependencies []string) { +func (r *UserPool_PasswordPolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_PasswordPolicy) Metadata() map[string]interface{} { +func (r *UserPool_PasswordPolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_PasswordPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *UserPool_PasswordPolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_PasswordPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPool_PasswordPolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_PasswordPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_PasswordPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cognito/aws-cognito-userpool_policies.go b/cloudformation/cognito/aws-cognito-userpool_policies.go new file mode 100644 index 0000000000..54a2cfc48e --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpool_policies.go @@ -0,0 +1,65 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPool_Policies AWS CloudFormation Resource (AWS::Cognito::UserPool.Policies) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html +type UserPool_Policies struct { + + // PasswordPolicy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html#cfn-cognito-userpool-policies-passwordpolicy + PasswordPolicy *UserPool_PasswordPolicy `json:"PasswordPolicy,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPool_Policies) AWSCloudFormationType() string { + return "AWS::Cognito::UserPool.Policies" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_Policies) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_Policies) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_Policies) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_Policies) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_Policies) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_Policies) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-userpool_schemaattribute.go b/cloudformation/cognito/aws-cognito-userpool_schemaattribute.go similarity index 78% rename from cloudformation/resources/aws-cognito-userpool_schemaattribute.go rename to cloudformation/cognito/aws-cognito-userpool_schemaattribute.go index 9488bc1a94..cd947fd36d 100644 --- a/cloudformation/resources/aws-cognito-userpool_schemaattribute.go +++ b/cloudformation/cognito/aws-cognito-userpool_schemaattribute.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPool_SchemaAttribute AWS CloudFormation Resource (AWS::Cognito::UserPool.SchemaAttribute) +// UserPool_SchemaAttribute AWS CloudFormation Resource (AWS::Cognito::UserPool.SchemaAttribute) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html -type AWSCognitoUserPool_SchemaAttribute struct { +type UserPool_SchemaAttribute struct { // AttributeDataType AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSCognitoUserPool_SchemaAttribute struct { // NumberAttributeConstraints AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-numberattributeconstraints - NumberAttributeConstraints *AWSCognitoUserPool_NumberAttributeConstraints `json:"NumberAttributeConstraints,omitempty"` + NumberAttributeConstraints *UserPool_NumberAttributeConstraints `json:"NumberAttributeConstraints,omitempty"` // Required AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSCognitoUserPool_SchemaAttribute struct { // StringAttributeConstraints AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-stringattributeconstraints - StringAttributeConstraints *AWSCognitoUserPool_StringAttributeConstraints `json:"StringAttributeConstraints,omitempty"` + StringAttributeConstraints *UserPool_StringAttributeConstraints `json:"StringAttributeConstraints,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,42 +54,42 @@ type AWSCognitoUserPool_SchemaAttribute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_SchemaAttribute) AWSCloudFormationType() string { +func (r *UserPool_SchemaAttribute) AWSCloudFormationType() string { return "AWS::Cognito::UserPool.SchemaAttribute" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_SchemaAttribute) DependsOn() []string { +func (r *UserPool_SchemaAttribute) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_SchemaAttribute) SetDependsOn(dependencies []string) { +func (r *UserPool_SchemaAttribute) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_SchemaAttribute) Metadata() map[string]interface{} { +func (r *UserPool_SchemaAttribute) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_SchemaAttribute) SetMetadata(metadata map[string]interface{}) { +func (r *UserPool_SchemaAttribute) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_SchemaAttribute) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPool_SchemaAttribute) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_SchemaAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_SchemaAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/cognito/aws-cognito-userpool_smsconfiguration.go b/cloudformation/cognito/aws-cognito-userpool_smsconfiguration.go new file mode 100644 index 0000000000..e9145f5436 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpool_smsconfiguration.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPool_SmsConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPool.SmsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html +type UserPool_SmsConfiguration struct { + + // ExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-externalid + ExternalId string `json:"ExternalId,omitempty"` + + // SnsCallerArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-snscallerarn + SnsCallerArn string `json:"SnsCallerArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPool_SmsConfiguration) AWSCloudFormationType() string { + return "AWS::Cognito::UserPool.SmsConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_SmsConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_SmsConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_SmsConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_SmsConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_SmsConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_SmsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpool_stringattributeconstraints.go b/cloudformation/cognito/aws-cognito-userpool_stringattributeconstraints.go new file mode 100644 index 0000000000..97f4c71924 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpool_stringattributeconstraints.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPool_StringAttributeConstraints AWS CloudFormation Resource (AWS::Cognito::UserPool.StringAttributeConstraints) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html +type UserPool_StringAttributeConstraints struct { + + // MaxLength AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-maxlength + MaxLength string `json:"MaxLength,omitempty"` + + // MinLength AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-minlength + MinLength string `json:"MinLength,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPool_StringAttributeConstraints) AWSCloudFormationType() string { + return "AWS::Cognito::UserPool.StringAttributeConstraints" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_StringAttributeConstraints) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_StringAttributeConstraints) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_StringAttributeConstraints) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_StringAttributeConstraints) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_StringAttributeConstraints) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_StringAttributeConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpool_userpooladdons.go b/cloudformation/cognito/aws-cognito-userpool_userpooladdons.go new file mode 100644 index 0000000000..43b510909b --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpool_userpooladdons.go @@ -0,0 +1,65 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPool_UserPoolAddOns AWS CloudFormation Resource (AWS::Cognito::UserPool.UserPoolAddOns) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html +type UserPool_UserPoolAddOns struct { + + // AdvancedSecurityMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html#cfn-cognito-userpool-userpooladdons-advancedsecuritymode + AdvancedSecurityMode string `json:"AdvancedSecurityMode,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPool_UserPoolAddOns) AWSCloudFormationType() string { + return "AWS::Cognito::UserPool.UserPoolAddOns" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_UserPoolAddOns) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPool_UserPoolAddOns) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_UserPoolAddOns) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPool_UserPoolAddOns) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_UserPoolAddOns) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPool_UserPoolAddOns) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-userpool_verificationmessagetemplate.go b/cloudformation/cognito/aws-cognito-userpool_verificationmessagetemplate.go similarity index 79% rename from cloudformation/resources/aws-cognito-userpool_verificationmessagetemplate.go rename to cloudformation/cognito/aws-cognito-userpool_verificationmessagetemplate.go index b36b0ed656..2689e08e0b 100644 --- a/cloudformation/resources/aws-cognito-userpool_verificationmessagetemplate.go +++ b/cloudformation/cognito/aws-cognito-userpool_verificationmessagetemplate.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPool_VerificationMessageTemplate AWS CloudFormation Resource (AWS::Cognito::UserPool.VerificationMessageTemplate) +// UserPool_VerificationMessageTemplate AWS CloudFormation Resource (AWS::Cognito::UserPool.VerificationMessageTemplate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html -type AWSCognitoUserPool_VerificationMessageTemplate struct { +type UserPool_VerificationMessageTemplate struct { // DefaultEmailOption AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSCognitoUserPool_VerificationMessageTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_VerificationMessageTemplate) AWSCloudFormationType() string { +func (r *UserPool_VerificationMessageTemplate) AWSCloudFormationType() string { return "AWS::Cognito::UserPool.VerificationMessageTemplate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_VerificationMessageTemplate) DependsOn() []string { +func (r *UserPool_VerificationMessageTemplate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_VerificationMessageTemplate) SetDependsOn(dependencies []string) { +func (r *UserPool_VerificationMessageTemplate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_VerificationMessageTemplate) Metadata() map[string]interface{} { +func (r *UserPool_VerificationMessageTemplate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_VerificationMessageTemplate) SetMetadata(metadata map[string]interface{}) { +func (r *UserPool_VerificationMessageTemplate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_VerificationMessageTemplate) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPool_VerificationMessageTemplate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_VerificationMessageTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_VerificationMessageTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolclient.go b/cloudformation/cognito/aws-cognito-userpoolclient.go similarity index 87% rename from cloudformation/resources/aws-cognito-userpoolclient.go rename to cloudformation/cognito/aws-cognito-userpoolclient.go index fc73f743de..a983ea74f5 100644 --- a/cloudformation/resources/aws-cognito-userpoolclient.go +++ b/cloudformation/cognito/aws-cognito-userpoolclient.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPoolClient AWS CloudFormation Resource (AWS::Cognito::UserPoolClient) +// UserPoolClient AWS CloudFormation Resource (AWS::Cognito::UserPoolClient) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html -type AWSCognitoUserPoolClient struct { +type UserPoolClient struct { // AllowedOAuthFlows AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSCognitoUserPoolClient struct { // AnalyticsConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-analyticsconfiguration - AnalyticsConfiguration *AWSCognitoUserPoolClient_AnalyticsConfiguration `json:"AnalyticsConfiguration,omitempty"` + AnalyticsConfiguration *UserPoolClient_AnalyticsConfiguration `json:"AnalyticsConfiguration,omitempty"` // CallbackURLs AWS CloudFormation Property // Required: false @@ -97,50 +98,50 @@ type AWSCognitoUserPoolClient struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolClient) AWSCloudFormationType() string { +func (r *UserPoolClient) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolClient" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolClient) DependsOn() []string { +func (r *UserPoolClient) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolClient) SetDependsOn(dependencies []string) { +func (r *UserPoolClient) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolClient) Metadata() map[string]interface{} { +func (r *UserPoolClient) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolClient) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolClient) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolClient) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolClient) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolClient) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolClient) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolClient) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolClient +func (r UserPoolClient) MarshalJSON() ([]byte, error) { + type Properties UserPoolClient return json.Marshal(&struct { Type string Properties Properties @@ -158,8 +159,8 @@ func (r AWSCognitoUserPoolClient) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolClient) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolClient +func (r *UserPoolClient) UnmarshalJSON(b []byte) error { + type Properties UserPoolClient res := &struct { Type string Properties *Properties @@ -178,7 +179,7 @@ func (r *AWSCognitoUserPoolClient) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolClient(*res.Properties) + *r = UserPoolClient(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cognito-userpoolclient_analyticsconfiguration.go b/cloudformation/cognito/aws-cognito-userpoolclient_analyticsconfiguration.go similarity index 76% rename from cloudformation/resources/aws-cognito-userpoolclient_analyticsconfiguration.go rename to cloudformation/cognito/aws-cognito-userpoolclient_analyticsconfiguration.go index fd780ce460..6b6a7b0c18 100644 --- a/cloudformation/resources/aws-cognito-userpoolclient_analyticsconfiguration.go +++ b/cloudformation/cognito/aws-cognito-userpoolclient_analyticsconfiguration.go @@ -1,10 +1,12 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPoolClient_AnalyticsConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPoolClient.AnalyticsConfiguration) +// UserPoolClient_AnalyticsConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPoolClient.AnalyticsConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html -type AWSCognitoUserPoolClient_AnalyticsConfiguration struct { +type UserPoolClient_AnalyticsConfiguration struct { // ApplicationId AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSCognitoUserPoolClient_AnalyticsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolClient_AnalyticsConfiguration) AWSCloudFormationType() string { +func (r *UserPoolClient_AnalyticsConfiguration) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolClient.AnalyticsConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolClient_AnalyticsConfiguration) DependsOn() []string { +func (r *UserPoolClient_AnalyticsConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolClient_AnalyticsConfiguration) SetDependsOn(dependencies []string) { +func (r *UserPoolClient_AnalyticsConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolClient_AnalyticsConfiguration) Metadata() map[string]interface{} { +func (r *UserPoolClient_AnalyticsConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolClient_AnalyticsConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolClient_AnalyticsConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolClient_AnalyticsConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolClient_AnalyticsConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolClient_AnalyticsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolClient_AnalyticsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpooldomain.go b/cloudformation/cognito/aws-cognito-userpooldomain.go similarity index 78% rename from cloudformation/resources/aws-cognito-userpooldomain.go rename to cloudformation/cognito/aws-cognito-userpooldomain.go index f44f8091c8..97a57ed13d 100644 --- a/cloudformation/resources/aws-cognito-userpooldomain.go +++ b/cloudformation/cognito/aws-cognito-userpooldomain.go @@ -1,20 +1,21 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPoolDomain AWS CloudFormation Resource (AWS::Cognito::UserPoolDomain) +// UserPoolDomain AWS CloudFormation Resource (AWS::Cognito::UserPoolDomain) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html -type AWSCognitoUserPoolDomain struct { +type UserPoolDomain struct { // CustomDomainConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html#cfn-cognito-userpooldomain-customdomainconfig - CustomDomainConfig *AWSCognitoUserPoolDomain_CustomDomainConfigType `json:"CustomDomainConfig,omitempty"` + CustomDomainConfig *UserPoolDomain_CustomDomainConfigType `json:"CustomDomainConfig,omitempty"` // Domain AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSCognitoUserPoolDomain struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolDomain) AWSCloudFormationType() string { +func (r *UserPoolDomain) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolDomain" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolDomain) DependsOn() []string { +func (r *UserPoolDomain) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolDomain) SetDependsOn(dependencies []string) { +func (r *UserPoolDomain) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolDomain) Metadata() map[string]interface{} { +func (r *UserPoolDomain) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolDomain) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolDomain) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolDomain) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolDomain) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolDomain) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolDomain) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolDomain) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolDomain +func (r UserPoolDomain) MarshalJSON() ([]byte, error) { + type Properties UserPoolDomain return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSCognitoUserPoolDomain) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolDomain) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolDomain +func (r *UserPoolDomain) UnmarshalJSON(b []byte) error { + type Properties UserPoolDomain res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSCognitoUserPoolDomain) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolDomain(*res.Properties) + *r = UserPoolDomain(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cognito/aws-cognito-userpooldomain_customdomainconfigtype.go b/cloudformation/cognito/aws-cognito-userpooldomain_customdomainconfigtype.go new file mode 100644 index 0000000000..2e4f966f8c --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpooldomain_customdomainconfigtype.go @@ -0,0 +1,65 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolDomain_CustomDomainConfigType AWS CloudFormation Resource (AWS::Cognito::UserPoolDomain.CustomDomainConfigType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html +type UserPoolDomain_CustomDomainConfigType struct { + + // CertificateArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html#cfn-cognito-userpooldomain-customdomainconfigtype-certificatearn + CertificateArn string `json:"CertificateArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolDomain_CustomDomainConfigType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolDomain.CustomDomainConfigType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolDomain_CustomDomainConfigType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolDomain_CustomDomainConfigType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolDomain_CustomDomainConfigType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolDomain_CustomDomainConfigType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolDomain_CustomDomainConfigType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolDomain_CustomDomainConfigType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-userpoolgroup.go b/cloudformation/cognito/aws-cognito-userpoolgroup.go similarity index 82% rename from cloudformation/resources/aws-cognito-userpoolgroup.go rename to cloudformation/cognito/aws-cognito-userpoolgroup.go index 837d858f8a..4f1d9fc6c2 100644 --- a/cloudformation/resources/aws-cognito-userpoolgroup.go +++ b/cloudformation/cognito/aws-cognito-userpoolgroup.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPoolGroup AWS CloudFormation Resource (AWS::Cognito::UserPoolGroup) +// UserPoolGroup AWS CloudFormation Resource (AWS::Cognito::UserPoolGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html -type AWSCognitoUserPoolGroup struct { +type UserPoolGroup struct { // Description AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSCognitoUserPoolGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolGroup) AWSCloudFormationType() string { +func (r *UserPoolGroup) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolGroup) DependsOn() []string { +func (r *UserPoolGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolGroup) SetDependsOn(dependencies []string) { +func (r *UserPoolGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolGroup) Metadata() map[string]interface{} { +func (r *UserPoolGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolGroup) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolGroup) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolGroup +func (r UserPoolGroup) MarshalJSON() ([]byte, error) { + type Properties UserPoolGroup return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSCognitoUserPoolGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolGroup) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolGroup +func (r *UserPoolGroup) UnmarshalJSON(b []byte) error { + type Properties UserPoolGroup res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSCognitoUserPoolGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolGroup(*res.Properties) + *r = UserPoolGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cognito-userpoolidentityprovider.go b/cloudformation/cognito/aws-cognito-userpoolidentityprovider.go similarity index 81% rename from cloudformation/resources/aws-cognito-userpoolidentityprovider.go rename to cloudformation/cognito/aws-cognito-userpoolidentityprovider.go index 3ffe365f81..3fa990e23b 100644 --- a/cloudformation/resources/aws-cognito-userpoolidentityprovider.go +++ b/cloudformation/cognito/aws-cognito-userpoolidentityprovider.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPoolIdentityProvider AWS CloudFormation Resource (AWS::Cognito::UserPoolIdentityProvider) +// UserPoolIdentityProvider AWS CloudFormation Resource (AWS::Cognito::UserPoolIdentityProvider) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html -type AWSCognitoUserPoolIdentityProvider struct { +type UserPoolIdentityProvider struct { // AttributeMapping AWS CloudFormation Property // Required: false @@ -52,50 +53,50 @@ type AWSCognitoUserPoolIdentityProvider struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolIdentityProvider) AWSCloudFormationType() string { +func (r *UserPoolIdentityProvider) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolIdentityProvider" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolIdentityProvider) DependsOn() []string { +func (r *UserPoolIdentityProvider) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolIdentityProvider) SetDependsOn(dependencies []string) { +func (r *UserPoolIdentityProvider) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolIdentityProvider) Metadata() map[string]interface{} { +func (r *UserPoolIdentityProvider) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolIdentityProvider) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolIdentityProvider) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolIdentityProvider) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolIdentityProvider) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolIdentityProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolIdentityProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolIdentityProvider) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolIdentityProvider +func (r UserPoolIdentityProvider) MarshalJSON() ([]byte, error) { + type Properties UserPoolIdentityProvider return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSCognitoUserPoolIdentityProvider) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolIdentityProvider) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolIdentityProvider +func (r *UserPoolIdentityProvider) UnmarshalJSON(b []byte) error { + type Properties UserPoolIdentityProvider res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSCognitoUserPoolIdentityProvider) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolIdentityProvider(*res.Properties) + *r = UserPoolIdentityProvider(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cognito-userpoolresourceserver.go b/cloudformation/cognito/aws-cognito-userpoolresourceserver.go similarity index 78% rename from cloudformation/resources/aws-cognito-userpoolresourceserver.go rename to cloudformation/cognito/aws-cognito-userpoolresourceserver.go index b36b92dcd3..e82b7dfc43 100644 --- a/cloudformation/resources/aws-cognito-userpoolresourceserver.go +++ b/cloudformation/cognito/aws-cognito-userpoolresourceserver.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPoolResourceServer AWS CloudFormation Resource (AWS::Cognito::UserPoolResourceServer) +// UserPoolResourceServer AWS CloudFormation Resource (AWS::Cognito::UserPoolResourceServer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html -type AWSCognitoUserPoolResourceServer struct { +type UserPoolResourceServer struct { // Identifier AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSCognitoUserPoolResourceServer struct { // Scopes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-scopes - Scopes []AWSCognitoUserPoolResourceServer_ResourceServerScopeType `json:"Scopes,omitempty"` + Scopes []UserPoolResourceServer_ResourceServerScopeType `json:"Scopes,omitempty"` // UserPoolId AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSCognitoUserPoolResourceServer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolResourceServer) AWSCloudFormationType() string { +func (r *UserPoolResourceServer) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolResourceServer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolResourceServer) DependsOn() []string { +func (r *UserPoolResourceServer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolResourceServer) SetDependsOn(dependencies []string) { +func (r *UserPoolResourceServer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolResourceServer) Metadata() map[string]interface{} { +func (r *UserPoolResourceServer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolResourceServer) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolResourceServer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolResourceServer) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolResourceServer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolResourceServer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolResourceServer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolResourceServer) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolResourceServer +func (r UserPoolResourceServer) MarshalJSON() ([]byte, error) { + type Properties UserPoolResourceServer return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSCognitoUserPoolResourceServer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolResourceServer) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolResourceServer +func (r *UserPoolResourceServer) UnmarshalJSON(b []byte) error { + type Properties UserPoolResourceServer res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSCognitoUserPoolResourceServer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolResourceServer(*res.Properties) + *r = UserPoolResourceServer(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cognito/aws-cognito-userpoolresourceserver_resourceserverscopetype.go b/cloudformation/cognito/aws-cognito-userpoolresourceserver_resourceserverscopetype.go new file mode 100644 index 0000000000..d0a7a4963c --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolresourceserver_resourceserverscopetype.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolResourceServer_ResourceServerScopeType AWS CloudFormation Resource (AWS::Cognito::UserPoolResourceServer.ResourceServerScopeType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html +type UserPoolResourceServer_ResourceServerScopeType struct { + + // ScopeDescription AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html#cfn-cognito-userpoolresourceserver-resourceserverscopetype-scopedescription + ScopeDescription string `json:"ScopeDescription,omitempty"` + + // ScopeName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html#cfn-cognito-userpoolresourceserver-resourceserverscopetype-scopename + ScopeName string `json:"ScopeName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolResourceServer_ResourceServerScopeType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolResourceServer.ResourceServerScopeType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolResourceServer_ResourceServerScopeType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolResourceServer_ResourceServerScopeType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolResourceServer_ResourceServerScopeType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolResourceServer_ResourceServerScopeType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolResourceServer_ResourceServerScopeType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolResourceServer_ResourceServerScopeType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment.go new file mode 100644 index 0000000000..ff04dbb7be --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment.go @@ -0,0 +1,144 @@ +package cognito + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html +type UserPoolRiskConfigurationAttachment struct { + + // AccountTakeoverRiskConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfiguration + AccountTakeoverRiskConfiguration *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType `json:"AccountTakeoverRiskConfiguration,omitempty"` + + // ClientId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-clientid + ClientId string `json:"ClientId,omitempty"` + + // CompromisedCredentialsRiskConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfiguration + CompromisedCredentialsRiskConfiguration *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType `json:"CompromisedCredentialsRiskConfiguration,omitempty"` + + // RiskExceptionConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfiguration + RiskExceptionConfiguration *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType `json:"RiskExceptionConfiguration,omitempty"` + + // UserPoolId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-userpoolid + UserPoolId string `json:"UserPoolId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r UserPoolRiskConfigurationAttachment) MarshalJSON() ([]byte, error) { + type Properties UserPoolRiskConfigurationAttachment + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *UserPoolRiskConfigurationAttachment) UnmarshalJSON(b []byte) error { + type Properties UserPoolRiskConfigurationAttachment + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = UserPoolRiskConfigurationAttachment(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go new file mode 100644 index 0000000000..9f8b547e7e --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go @@ -0,0 +1,75 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionsType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html +type UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType struct { + + // HighAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-highaction + HighAction *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"HighAction,omitempty"` + + // LowAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-lowaction + LowAction *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"LowAction,omitempty"` + + // MediumAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-mediumaction + MediumAction *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"MediumAction,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionsType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go new file mode 100644 index 0000000000..96b827bfb3 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment_AccountTakeoverActionType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html +type UserPoolRiskConfigurationAttachment_AccountTakeoverActionType struct { + + // EventAction AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype-eventaction + EventAction string `json:"EventAction,omitempty"` + + // Notify AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype-notify + Notify bool `json:"Notify"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go new file mode 100644 index 0000000000..b261f000ea --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverRiskConfigurationType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html +type UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType struct { + + // Actions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype-actions + Actions *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType `json:"Actions,omitempty"` + + // NotifyConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype-notifyconfiguration + NotifyConfiguration *UserPoolRiskConfigurationAttachment_NotifyConfigurationType `json:"NotifyConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverRiskConfigurationType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go new file mode 100644 index 0000000000..9990f94909 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go @@ -0,0 +1,65 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsActionsType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype.html +type UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType struct { + + // EventAction AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype-eventaction + EventAction string `json:"EventAction,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsActionsType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go new file mode 100644 index 0000000000..543d7c02c6 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsRiskConfigurationType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html +type UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType struct { + + // Actions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype-actions + Actions *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType `json:"Actions,omitempty"` + + // EventFilter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype-eventfilter + EventFilter []string `json:"EventFilter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsRiskConfigurationType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go new file mode 100644 index 0000000000..0af2c240c8 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go @@ -0,0 +1,90 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment_NotifyConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyConfigurationType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html +type UserPoolRiskConfigurationAttachment_NotifyConfigurationType struct { + + // BlockEmail AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-blockemail + BlockEmail *UserPoolRiskConfigurationAttachment_NotifyEmailType `json:"BlockEmail,omitempty"` + + // From AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-from + From string `json:"From,omitempty"` + + // MfaEmail AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-mfaemail + MfaEmail *UserPoolRiskConfigurationAttachment_NotifyEmailType `json:"MfaEmail,omitempty"` + + // NoActionEmail AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-noactionemail + NoActionEmail *UserPoolRiskConfigurationAttachment_NotifyEmailType `json:"NoActionEmail,omitempty"` + + // ReplyTo AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-replyto + ReplyTo string `json:"ReplyTo,omitempty"` + + // SourceArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-sourcearn + SourceArn string `json:"SourceArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment_NotifyConfigurationType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyConfigurationType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_NotifyConfigurationType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_NotifyConfigurationType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_NotifyConfigurationType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go new file mode 100644 index 0000000000..749b17b629 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go @@ -0,0 +1,75 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment_NotifyEmailType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyEmailType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html +type UserPoolRiskConfigurationAttachment_NotifyEmailType struct { + + // HtmlBody AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-htmlbody + HtmlBody string `json:"HtmlBody,omitempty"` + + // Subject AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-subject + Subject string `json:"Subject,omitempty"` + + // TextBody AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-textbody + TextBody string `json:"TextBody,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment_NotifyEmailType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyEmailType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_NotifyEmailType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_NotifyEmailType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_NotifyEmailType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_NotifyEmailType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_NotifyEmailType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_NotifyEmailType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go new file mode 100644 index 0000000000..4ccbcceed5 --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.RiskExceptionConfigurationType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html +type UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType struct { + + // BlockedIPRangeList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype-blockediprangelist + BlockedIPRangeList []string `json:"BlockedIPRangeList,omitempty"` + + // SkippedIPRangeList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype-skippediprangelist + SkippedIPRangeList []string `json:"SkippedIPRangeList,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolRiskConfigurationAttachment.RiskExceptionConfigurationType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-userpooluicustomizationattachment.go b/cloudformation/cognito/aws-cognito-userpooluicustomizationattachment.go similarity index 76% rename from cloudformation/resources/aws-cognito-userpooluicustomizationattachment.go rename to cloudformation/cognito/aws-cognito-userpooluicustomizationattachment.go index 8059c99aaf..fe7c393f6e 100644 --- a/cloudformation/resources/aws-cognito-userpooluicustomizationattachment.go +++ b/cloudformation/cognito/aws-cognito-userpooluicustomizationattachment.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPoolUICustomizationAttachment AWS CloudFormation Resource (AWS::Cognito::UserPoolUICustomizationAttachment) +// UserPoolUICustomizationAttachment AWS CloudFormation Resource (AWS::Cognito::UserPoolUICustomizationAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html -type AWSCognitoUserPoolUICustomizationAttachment struct { +type UserPoolUICustomizationAttachment struct { // CSS AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSCognitoUserPoolUICustomizationAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolUICustomizationAttachment) AWSCloudFormationType() string { +func (r *UserPoolUICustomizationAttachment) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolUICustomizationAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolUICustomizationAttachment) DependsOn() []string { +func (r *UserPoolUICustomizationAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolUICustomizationAttachment) SetDependsOn(dependencies []string) { +func (r *UserPoolUICustomizationAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolUICustomizationAttachment) Metadata() map[string]interface{} { +func (r *UserPoolUICustomizationAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolUICustomizationAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolUICustomizationAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolUICustomizationAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolUICustomizationAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolUICustomizationAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolUICustomizationAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolUICustomizationAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolUICustomizationAttachment +func (r UserPoolUICustomizationAttachment) MarshalJSON() ([]byte, error) { + type Properties UserPoolUICustomizationAttachment return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSCognitoUserPoolUICustomizationAttachment) MarshalJSON() ([]byte, erro // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolUICustomizationAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolUICustomizationAttachment +func (r *UserPoolUICustomizationAttachment) UnmarshalJSON(b []byte) error { + type Properties UserPoolUICustomizationAttachment res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSCognitoUserPoolUICustomizationAttachment) UnmarshalJSON(b []byte) er // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolUICustomizationAttachment(*res.Properties) + *r = UserPoolUICustomizationAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cognito-userpooluser.go b/cloudformation/cognito/aws-cognito-userpooluser.go similarity index 81% rename from cloudformation/resources/aws-cognito-userpooluser.go rename to cloudformation/cognito/aws-cognito-userpooluser.go index 749ab7f6c4..bfef4b98ab 100644 --- a/cloudformation/resources/aws-cognito-userpooluser.go +++ b/cloudformation/cognito/aws-cognito-userpooluser.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPoolUser AWS CloudFormation Resource (AWS::Cognito::UserPoolUser) +// UserPoolUser AWS CloudFormation Resource (AWS::Cognito::UserPoolUser) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html -type AWSCognitoUserPoolUser struct { +type UserPoolUser struct { // DesiredDeliveryMediums AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSCognitoUserPoolUser struct { // UserAttributes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-userattributes - UserAttributes []AWSCognitoUserPoolUser_AttributeType `json:"UserAttributes,omitempty"` + UserAttributes []UserPoolUser_AttributeType `json:"UserAttributes,omitempty"` // UserPoolId AWS CloudFormation Property // Required: true @@ -44,7 +45,7 @@ type AWSCognitoUserPoolUser struct { // ValidationData AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-validationdata - ValidationData []AWSCognitoUserPoolUser_AttributeType `json:"ValidationData,omitempty"` + ValidationData []UserPoolUser_AttributeType `json:"ValidationData,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +58,50 @@ type AWSCognitoUserPoolUser struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolUser) AWSCloudFormationType() string { +func (r *UserPoolUser) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolUser" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolUser) DependsOn() []string { +func (r *UserPoolUser) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolUser) SetDependsOn(dependencies []string) { +func (r *UserPoolUser) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolUser) Metadata() map[string]interface{} { +func (r *UserPoolUser) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolUser) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolUser) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolUser) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolUser) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolUser) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolUser) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolUser) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolUser +func (r UserPoolUser) MarshalJSON() ([]byte, error) { + type Properties UserPoolUser return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSCognitoUserPoolUser) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolUser) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolUser +func (r *UserPoolUser) UnmarshalJSON(b []byte) error { + type Properties UserPoolUser res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSCognitoUserPoolUser) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolUser(*res.Properties) + *r = UserPoolUser(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/cognito/aws-cognito-userpooluser_attributetype.go b/cloudformation/cognito/aws-cognito-userpooluser_attributetype.go new file mode 100644 index 0000000000..1efffb532c --- /dev/null +++ b/cloudformation/cognito/aws-cognito-userpooluser_attributetype.go @@ -0,0 +1,70 @@ +package cognito + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// UserPoolUser_AttributeType AWS CloudFormation Resource (AWS::Cognito::UserPoolUser.AttributeType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html +type UserPoolUser_AttributeType struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *UserPoolUser_AttributeType) AWSCloudFormationType() string { + return "AWS::Cognito::UserPoolUser.AttributeType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolUser_AttributeType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *UserPoolUser_AttributeType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolUser_AttributeType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *UserPoolUser_AttributeType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolUser_AttributeType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *UserPoolUser_AttributeType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-cognito-userpoolusertogroupattachment.go b/cloudformation/cognito/aws-cognito-userpoolusertogroupattachment.go similarity index 77% rename from cloudformation/resources/aws-cognito-userpoolusertogroupattachment.go rename to cloudformation/cognito/aws-cognito-userpoolusertogroupattachment.go index b4547c366e..139492ccf4 100644 --- a/cloudformation/resources/aws-cognito-userpoolusertogroupattachment.go +++ b/cloudformation/cognito/aws-cognito-userpoolusertogroupattachment.go @@ -1,15 +1,16 @@ -package resources +package cognito import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCognitoUserPoolUserToGroupAttachment AWS CloudFormation Resource (AWS::Cognito::UserPoolUserToGroupAttachment) +// UserPoolUserToGroupAttachment AWS CloudFormation Resource (AWS::Cognito::UserPoolUserToGroupAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html -type AWSCognitoUserPoolUserToGroupAttachment struct { +type UserPoolUserToGroupAttachment struct { // GroupName AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSCognitoUserPoolUserToGroupAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolUserToGroupAttachment) AWSCloudFormationType() string { +func (r *UserPoolUserToGroupAttachment) AWSCloudFormationType() string { return "AWS::Cognito::UserPoolUserToGroupAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolUserToGroupAttachment) DependsOn() []string { +func (r *UserPoolUserToGroupAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolUserToGroupAttachment) SetDependsOn(dependencies []string) { +func (r *UserPoolUserToGroupAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolUserToGroupAttachment) Metadata() map[string]interface{} { +func (r *UserPoolUserToGroupAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolUserToGroupAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *UserPoolUserToGroupAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolUserToGroupAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *UserPoolUserToGroupAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolUserToGroupAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolUserToGroupAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolUserToGroupAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolUserToGroupAttachment +func (r UserPoolUserToGroupAttachment) MarshalJSON() ([]byte, error) { + type Properties UserPoolUserToGroupAttachment return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSCognitoUserPoolUserToGroupAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolUserToGroupAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolUserToGroupAttachment +func (r *UserPoolUserToGroupAttachment) UnmarshalJSON(b []byte) error { + type Properties UserPoolUserToGroupAttachment res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSCognitoUserPoolUserToGroupAttachment) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolUserToGroupAttachment(*res.Properties) + *r = UserPoolUserToGroupAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-config-aggregationauthorization.go b/cloudformation/config/aws-config-aggregationauthorization.go similarity index 77% rename from cloudformation/resources/aws-config-aggregationauthorization.go rename to cloudformation/config/aws-config-aggregationauthorization.go index 073665fb9e..1302dac45c 100644 --- a/cloudformation/resources/aws-config-aggregationauthorization.go +++ b/cloudformation/config/aws-config-aggregationauthorization.go @@ -1,15 +1,16 @@ -package resources +package config import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSConfigAggregationAuthorization AWS CloudFormation Resource (AWS::Config::AggregationAuthorization) +// AggregationAuthorization AWS CloudFormation Resource (AWS::Config::AggregationAuthorization) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html -type AWSConfigAggregationAuthorization struct { +type AggregationAuthorization struct { // AuthorizedAccountId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSConfigAggregationAuthorization struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigAggregationAuthorization) AWSCloudFormationType() string { +func (r *AggregationAuthorization) AWSCloudFormationType() string { return "AWS::Config::AggregationAuthorization" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigAggregationAuthorization) DependsOn() []string { +func (r *AggregationAuthorization) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigAggregationAuthorization) SetDependsOn(dependencies []string) { +func (r *AggregationAuthorization) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigAggregationAuthorization) Metadata() map[string]interface{} { +func (r *AggregationAuthorization) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigAggregationAuthorization) SetMetadata(metadata map[string]interface{}) { +func (r *AggregationAuthorization) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigAggregationAuthorization) DeletionPolicy() policies.DeletionPolicy { +func (r *AggregationAuthorization) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigAggregationAuthorization) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AggregationAuthorization) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSConfigAggregationAuthorization) MarshalJSON() ([]byte, error) { - type Properties AWSConfigAggregationAuthorization +func (r AggregationAuthorization) MarshalJSON() ([]byte, error) { + type Properties AggregationAuthorization return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSConfigAggregationAuthorization) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSConfigAggregationAuthorization) UnmarshalJSON(b []byte) error { - type Properties AWSConfigAggregationAuthorization +func (r *AggregationAuthorization) UnmarshalJSON(b []byte) error { + type Properties AggregationAuthorization res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSConfigAggregationAuthorization) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSConfigAggregationAuthorization(*res.Properties) + *r = AggregationAuthorization(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-config-configrule.go b/cloudformation/config/aws-config-configrule.go similarity index 82% rename from cloudformation/resources/aws-config-configrule.go rename to cloudformation/config/aws-config-configrule.go index f17f1b1c75..fcfa2590ef 100644 --- a/cloudformation/resources/aws-config-configrule.go +++ b/cloudformation/config/aws-config-configrule.go @@ -1,15 +1,16 @@ -package resources +package config import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSConfigConfigRule AWS CloudFormation Resource (AWS::Config::ConfigRule) +// ConfigRule AWS CloudFormation Resource (AWS::Config::ConfigRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html -type AWSConfigConfigRule struct { +type ConfigRule struct { // ConfigRuleName AWS CloudFormation Property // Required: false @@ -34,12 +35,12 @@ type AWSConfigConfigRule struct { // Scope AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-scope - Scope *AWSConfigConfigRule_Scope `json:"Scope,omitempty"` + Scope *ConfigRule_Scope `json:"Scope,omitempty"` // Source AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-source - Source *AWSConfigConfigRule_Source `json:"Source,omitempty"` + Source *ConfigRule_Source `json:"Source,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +53,50 @@ type AWSConfigConfigRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigRule) AWSCloudFormationType() string { +func (r *ConfigRule) AWSCloudFormationType() string { return "AWS::Config::ConfigRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigRule) DependsOn() []string { +func (r *ConfigRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigRule) SetDependsOn(dependencies []string) { +func (r *ConfigRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigRule) Metadata() map[string]interface{} { +func (r *ConfigRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigRule) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigRule) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSConfigConfigRule) MarshalJSON() ([]byte, error) { - type Properties AWSConfigConfigRule +func (r ConfigRule) MarshalJSON() ([]byte, error) { + type Properties ConfigRule return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSConfigConfigRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSConfigConfigRule) UnmarshalJSON(b []byte) error { - type Properties AWSConfigConfigRule +func (r *ConfigRule) UnmarshalJSON(b []byte) error { + type Properties ConfigRule res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSConfigConfigRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSConfigConfigRule(*res.Properties) + *r = ConfigRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-config-configrule_scope.go b/cloudformation/config/aws-config-configrule_scope.go similarity index 79% rename from cloudformation/resources/aws-config-configrule_scope.go rename to cloudformation/config/aws-config-configrule_scope.go index 9efc07e2e6..555c48e9ed 100644 --- a/cloudformation/resources/aws-config-configrule_scope.go +++ b/cloudformation/config/aws-config-configrule_scope.go @@ -1,10 +1,12 @@ -package resources +package config -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSConfigConfigRule_Scope AWS CloudFormation Resource (AWS::Config::ConfigRule.Scope) +// ConfigRule_Scope AWS CloudFormation Resource (AWS::Config::ConfigRule.Scope) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html -type AWSConfigConfigRule_Scope struct { +type ConfigRule_Scope struct { // ComplianceResourceId AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSConfigConfigRule_Scope struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigRule_Scope) AWSCloudFormationType() string { +func (r *ConfigRule_Scope) AWSCloudFormationType() string { return "AWS::Config::ConfigRule.Scope" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigRule_Scope) DependsOn() []string { +func (r *ConfigRule_Scope) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigRule_Scope) SetDependsOn(dependencies []string) { +func (r *ConfigRule_Scope) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigRule_Scope) Metadata() map[string]interface{} { +func (r *ConfigRule_Scope) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigRule_Scope) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigRule_Scope) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigRule_Scope) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigRule_Scope) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigRule_Scope) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigRule_Scope) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-configrule_source.go b/cloudformation/config/aws-config-configrule_source.go similarity index 75% rename from cloudformation/resources/aws-config-configrule_source.go rename to cloudformation/config/aws-config-configrule_source.go index f441c66380..37fea2f5fc 100644 --- a/cloudformation/resources/aws-config-configrule_source.go +++ b/cloudformation/config/aws-config-configrule_source.go @@ -1,10 +1,12 @@ -package resources +package config -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSConfigConfigRule_Source AWS CloudFormation Resource (AWS::Config::ConfigRule.Source) +// ConfigRule_Source AWS CloudFormation Resource (AWS::Config::ConfigRule.Source) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html -type AWSConfigConfigRule_Source struct { +type ConfigRule_Source struct { // Owner AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSConfigConfigRule_Source struct { // SourceDetails AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-sourcedetails - SourceDetails []AWSConfigConfigRule_SourceDetail `json:"SourceDetails,omitempty"` + SourceDetails []ConfigRule_SourceDetail `json:"SourceDetails,omitempty"` // SourceIdentifier AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSConfigConfigRule_Source struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigRule_Source) AWSCloudFormationType() string { +func (r *ConfigRule_Source) AWSCloudFormationType() string { return "AWS::Config::ConfigRule.Source" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigRule_Source) DependsOn() []string { +func (r *ConfigRule_Source) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigRule_Source) SetDependsOn(dependencies []string) { +func (r *ConfigRule_Source) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigRule_Source) Metadata() map[string]interface{} { +func (r *ConfigRule_Source) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigRule_Source) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigRule_Source) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigRule_Source) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigRule_Source) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigRule_Source) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigRule_Source) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-configrule_sourcedetail.go b/cloudformation/config/aws-config-configrule_sourcedetail.go similarity index 77% rename from cloudformation/resources/aws-config-configrule_sourcedetail.go rename to cloudformation/config/aws-config-configrule_sourcedetail.go index ed4fe7f230..620dde29ff 100644 --- a/cloudformation/resources/aws-config-configrule_sourcedetail.go +++ b/cloudformation/config/aws-config-configrule_sourcedetail.go @@ -1,10 +1,12 @@ -package resources +package config -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSConfigConfigRule_SourceDetail AWS CloudFormation Resource (AWS::Config::ConfigRule.SourceDetail) +// ConfigRule_SourceDetail AWS CloudFormation Resource (AWS::Config::ConfigRule.SourceDetail) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html -type AWSConfigConfigRule_SourceDetail struct { +type ConfigRule_SourceDetail struct { // EventSource AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSConfigConfigRule_SourceDetail struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigRule_SourceDetail) AWSCloudFormationType() string { +func (r *ConfigRule_SourceDetail) AWSCloudFormationType() string { return "AWS::Config::ConfigRule.SourceDetail" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigRule_SourceDetail) DependsOn() []string { +func (r *ConfigRule_SourceDetail) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigRule_SourceDetail) SetDependsOn(dependencies []string) { +func (r *ConfigRule_SourceDetail) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigRule_SourceDetail) Metadata() map[string]interface{} { +func (r *ConfigRule_SourceDetail) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigRule_SourceDetail) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigRule_SourceDetail) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigRule_SourceDetail) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigRule_SourceDetail) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigRule_SourceDetail) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigRule_SourceDetail) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-configurationaggregator.go b/cloudformation/config/aws-config-configurationaggregator.go similarity index 75% rename from cloudformation/resources/aws-config-configurationaggregator.go rename to cloudformation/config/aws-config-configurationaggregator.go index c057ce5f8d..e804837061 100644 --- a/cloudformation/resources/aws-config-configurationaggregator.go +++ b/cloudformation/config/aws-config-configurationaggregator.go @@ -1,20 +1,21 @@ -package resources +package config import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSConfigConfigurationAggregator AWS CloudFormation Resource (AWS::Config::ConfigurationAggregator) +// ConfigurationAggregator AWS CloudFormation Resource (AWS::Config::ConfigurationAggregator) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html -type AWSConfigConfigurationAggregator struct { +type ConfigurationAggregator struct { // AccountAggregationSources AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-accountaggregationsources - AccountAggregationSources []AWSConfigConfigurationAggregator_AccountAggregationSource `json:"AccountAggregationSources,omitempty"` + AccountAggregationSources []ConfigurationAggregator_AccountAggregationSource `json:"AccountAggregationSources,omitempty"` // ConfigurationAggregatorName AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSConfigConfigurationAggregator struct { // OrganizationAggregationSource AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-organizationaggregationsource - OrganizationAggregationSource *AWSConfigConfigurationAggregator_OrganizationAggregationSource `json:"OrganizationAggregationSource,omitempty"` + OrganizationAggregationSource *ConfigurationAggregator_OrganizationAggregationSource `json:"OrganizationAggregationSource,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSConfigConfigurationAggregator struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigurationAggregator) AWSCloudFormationType() string { +func (r *ConfigurationAggregator) AWSCloudFormationType() string { return "AWS::Config::ConfigurationAggregator" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationAggregator) DependsOn() []string { +func (r *ConfigurationAggregator) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationAggregator) SetDependsOn(dependencies []string) { +func (r *ConfigurationAggregator) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationAggregator) Metadata() map[string]interface{} { +func (r *ConfigurationAggregator) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationAggregator) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigurationAggregator) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationAggregator) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigurationAggregator) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationAggregator) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationAggregator) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSConfigConfigurationAggregator) MarshalJSON() ([]byte, error) { - type Properties AWSConfigConfigurationAggregator +func (r ConfigurationAggregator) MarshalJSON() ([]byte, error) { + type Properties ConfigurationAggregator return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSConfigConfigurationAggregator) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSConfigConfigurationAggregator) UnmarshalJSON(b []byte) error { - type Properties AWSConfigConfigurationAggregator +func (r *ConfigurationAggregator) UnmarshalJSON(b []byte) error { + type Properties ConfigurationAggregator res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSConfigConfigurationAggregator) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSConfigConfigurationAggregator(*res.Properties) + *r = ConfigurationAggregator(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/config/aws-config-configurationaggregator_accountaggregationsource.go b/cloudformation/config/aws-config-configurationaggregator_accountaggregationsource.go new file mode 100644 index 0000000000..aec9b7e142 --- /dev/null +++ b/cloudformation/config/aws-config-configurationaggregator_accountaggregationsource.go @@ -0,0 +1,75 @@ +package config + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationAggregator_AccountAggregationSource AWS CloudFormation Resource (AWS::Config::ConfigurationAggregator.AccountAggregationSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html +type ConfigurationAggregator_AccountAggregationSource struct { + + // AccountIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-accountids + AccountIds []string `json:"AccountIds,omitempty"` + + // AllAwsRegions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-allawsregions + AllAwsRegions bool `json:"AllAwsRegions,omitempty"` + + // AwsRegions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-awsregions + AwsRegions []string `json:"AwsRegions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationAggregator_AccountAggregationSource) AWSCloudFormationType() string { + return "AWS::Config::ConfigurationAggregator.AccountAggregationSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationAggregator_AccountAggregationSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationAggregator_AccountAggregationSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationAggregator_AccountAggregationSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationAggregator_AccountAggregationSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationAggregator_AccountAggregationSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationAggregator_AccountAggregationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/config/aws-config-configurationaggregator_organizationaggregationsource.go b/cloudformation/config/aws-config-configurationaggregator_organizationaggregationsource.go new file mode 100644 index 0000000000..4a14a3c500 --- /dev/null +++ b/cloudformation/config/aws-config-configurationaggregator_organizationaggregationsource.go @@ -0,0 +1,75 @@ +package config + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationAggregator_OrganizationAggregationSource AWS CloudFormation Resource (AWS::Config::ConfigurationAggregator.OrganizationAggregationSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html +type ConfigurationAggregator_OrganizationAggregationSource struct { + + // AllAwsRegions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-allawsregions + AllAwsRegions bool `json:"AllAwsRegions,omitempty"` + + // AwsRegions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-awsregions + AwsRegions []string `json:"AwsRegions,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-rolearn + RoleArn string `json:"RoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationAggregator_OrganizationAggregationSource) AWSCloudFormationType() string { + return "AWS::Config::ConfigurationAggregator.OrganizationAggregationSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationAggregator_OrganizationAggregationSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationAggregator_OrganizationAggregationSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationAggregator_OrganizationAggregationSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationAggregator_OrganizationAggregationSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationAggregator_OrganizationAggregationSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationAggregator_OrganizationAggregationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-config-configurationrecorder.go b/cloudformation/config/aws-config-configurationrecorder.go similarity index 77% rename from cloudformation/resources/aws-config-configurationrecorder.go rename to cloudformation/config/aws-config-configurationrecorder.go index 86a542b2c8..988bae9862 100644 --- a/cloudformation/resources/aws-config-configurationrecorder.go +++ b/cloudformation/config/aws-config-configurationrecorder.go @@ -1,15 +1,16 @@ -package resources +package config import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSConfigConfigurationRecorder AWS CloudFormation Resource (AWS::Config::ConfigurationRecorder) +// ConfigurationRecorder AWS CloudFormation Resource (AWS::Config::ConfigurationRecorder) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html -type AWSConfigConfigurationRecorder struct { +type ConfigurationRecorder struct { // Name AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSConfigConfigurationRecorder struct { // RecordingGroup AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-recordinggroup - RecordingGroup *AWSConfigConfigurationRecorder_RecordingGroup `json:"RecordingGroup,omitempty"` + RecordingGroup *ConfigurationRecorder_RecordingGroup `json:"RecordingGroup,omitempty"` // RoleARN AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSConfigConfigurationRecorder struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigurationRecorder) AWSCloudFormationType() string { +func (r *ConfigurationRecorder) AWSCloudFormationType() string { return "AWS::Config::ConfigurationRecorder" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationRecorder) DependsOn() []string { +func (r *ConfigurationRecorder) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationRecorder) SetDependsOn(dependencies []string) { +func (r *ConfigurationRecorder) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationRecorder) Metadata() map[string]interface{} { +func (r *ConfigurationRecorder) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationRecorder) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigurationRecorder) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationRecorder) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigurationRecorder) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationRecorder) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationRecorder) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSConfigConfigurationRecorder) MarshalJSON() ([]byte, error) { - type Properties AWSConfigConfigurationRecorder +func (r ConfigurationRecorder) MarshalJSON() ([]byte, error) { + type Properties ConfigurationRecorder return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSConfigConfigurationRecorder) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSConfigConfigurationRecorder) UnmarshalJSON(b []byte) error { - type Properties AWSConfigConfigurationRecorder +func (r *ConfigurationRecorder) UnmarshalJSON(b []byte) error { + type Properties ConfigurationRecorder res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSConfigConfigurationRecorder) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSConfigConfigurationRecorder(*res.Properties) + *r = ConfigurationRecorder(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-config-configurationrecorder_recordinggroup.go b/cloudformation/config/aws-config-configurationrecorder_recordinggroup.go similarity index 75% rename from cloudformation/resources/aws-config-configurationrecorder_recordinggroup.go rename to cloudformation/config/aws-config-configurationrecorder_recordinggroup.go index 5a257edfb9..1493d195bb 100644 --- a/cloudformation/resources/aws-config-configurationrecorder_recordinggroup.go +++ b/cloudformation/config/aws-config-configurationrecorder_recordinggroup.go @@ -1,10 +1,12 @@ -package resources +package config -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSConfigConfigurationRecorder_RecordingGroup AWS CloudFormation Resource (AWS::Config::ConfigurationRecorder.RecordingGroup) +// ConfigurationRecorder_RecordingGroup AWS CloudFormation Resource (AWS::Config::ConfigurationRecorder.RecordingGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html -type AWSConfigConfigurationRecorder_RecordingGroup struct { +type ConfigurationRecorder_RecordingGroup struct { // AllSupported AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSConfigConfigurationRecorder_RecordingGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigurationRecorder_RecordingGroup) AWSCloudFormationType() string { +func (r *ConfigurationRecorder_RecordingGroup) AWSCloudFormationType() string { return "AWS::Config::ConfigurationRecorder.RecordingGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationRecorder_RecordingGroup) DependsOn() []string { +func (r *ConfigurationRecorder_RecordingGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationRecorder_RecordingGroup) SetDependsOn(dependencies []string) { +func (r *ConfigurationRecorder_RecordingGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationRecorder_RecordingGroup) Metadata() map[string]interface{} { +func (r *ConfigurationRecorder_RecordingGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationRecorder_RecordingGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigurationRecorder_RecordingGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationRecorder_RecordingGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigurationRecorder_RecordingGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationRecorder_RecordingGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationRecorder_RecordingGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-deliverychannel.go b/cloudformation/config/aws-config-deliverychannel.go similarity index 80% rename from cloudformation/resources/aws-config-deliverychannel.go rename to cloudformation/config/aws-config-deliverychannel.go index 9e9cfeba7b..25487164db 100644 --- a/cloudformation/resources/aws-config-deliverychannel.go +++ b/cloudformation/config/aws-config-deliverychannel.go @@ -1,20 +1,21 @@ -package resources +package config import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSConfigDeliveryChannel AWS CloudFormation Resource (AWS::Config::DeliveryChannel) +// DeliveryChannel AWS CloudFormation Resource (AWS::Config::DeliveryChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html -type AWSConfigDeliveryChannel struct { +type DeliveryChannel struct { // ConfigSnapshotDeliveryProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties - ConfigSnapshotDeliveryProperties *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties `json:"ConfigSnapshotDeliveryProperties,omitempty"` + ConfigSnapshotDeliveryProperties *DeliveryChannel_ConfigSnapshotDeliveryProperties `json:"ConfigSnapshotDeliveryProperties,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSConfigDeliveryChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigDeliveryChannel) AWSCloudFormationType() string { +func (r *DeliveryChannel) AWSCloudFormationType() string { return "AWS::Config::DeliveryChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigDeliveryChannel) DependsOn() []string { +func (r *DeliveryChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigDeliveryChannel) SetDependsOn(dependencies []string) { +func (r *DeliveryChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigDeliveryChannel) Metadata() map[string]interface{} { +func (r *DeliveryChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigDeliveryChannel) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigDeliveryChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigDeliveryChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSConfigDeliveryChannel) MarshalJSON() ([]byte, error) { - type Properties AWSConfigDeliveryChannel +func (r DeliveryChannel) MarshalJSON() ([]byte, error) { + type Properties DeliveryChannel return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSConfigDeliveryChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSConfigDeliveryChannel) UnmarshalJSON(b []byte) error { - type Properties AWSConfigDeliveryChannel +func (r *DeliveryChannel) UnmarshalJSON(b []byte) error { + type Properties DeliveryChannel res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSConfigDeliveryChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSConfigDeliveryChannel(*res.Properties) + *r = DeliveryChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/config/aws-config-deliverychannel_configsnapshotdeliveryproperties.go b/cloudformation/config/aws-config-deliverychannel_configsnapshotdeliveryproperties.go new file mode 100644 index 0000000000..54ab079aff --- /dev/null +++ b/cloudformation/config/aws-config-deliverychannel_configsnapshotdeliveryproperties.go @@ -0,0 +1,65 @@ +package config + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryChannel_ConfigSnapshotDeliveryProperties AWS CloudFormation Resource (AWS::Config::DeliveryChannel.ConfigSnapshotDeliveryProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html +type DeliveryChannel_ConfigSnapshotDeliveryProperties struct { + + // DeliveryFrequency AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties-deliveryfrequency + DeliveryFrequency string `json:"DeliveryFrequency,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryChannel_ConfigSnapshotDeliveryProperties) AWSCloudFormationType() string { + return "AWS::Config::DeliveryChannel.ConfigSnapshotDeliveryProperties" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryChannel_ConfigSnapshotDeliveryProperties) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryChannel_ConfigSnapshotDeliveryProperties) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryChannel_ConfigSnapshotDeliveryProperties) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryChannel_ConfigSnapshotDeliveryProperties) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryChannel_ConfigSnapshotDeliveryProperties) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryChannel_ConfigSnapshotDeliveryProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-config-organizationconfigrule.go b/cloudformation/config/aws-config-organizationconfigrule.go similarity index 76% rename from cloudformation/resources/aws-config-organizationconfigrule.go rename to cloudformation/config/aws-config-organizationconfigrule.go index 6f9a480aea..277e5c8aee 100644 --- a/cloudformation/resources/aws-config-organizationconfigrule.go +++ b/cloudformation/config/aws-config-organizationconfigrule.go @@ -1,15 +1,16 @@ -package resources +package config import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSConfigOrganizationConfigRule AWS CloudFormation Resource (AWS::Config::OrganizationConfigRule) +// OrganizationConfigRule AWS CloudFormation Resource (AWS::Config::OrganizationConfigRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html -type AWSConfigOrganizationConfigRule struct { +type OrganizationConfigRule struct { // ExcludedAccounts AWS CloudFormation Property // Required: false @@ -24,12 +25,12 @@ type AWSConfigOrganizationConfigRule struct { // OrganizationCustomRuleMetadata AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata - OrganizationCustomRuleMetadata *AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata `json:"OrganizationCustomRuleMetadata,omitempty"` + OrganizationCustomRuleMetadata *OrganizationConfigRule_OrganizationCustomRuleMetadata `json:"OrganizationCustomRuleMetadata,omitempty"` // OrganizationManagedRuleMetadata AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata - OrganizationManagedRuleMetadata *AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata `json:"OrganizationManagedRuleMetadata,omitempty"` + OrganizationManagedRuleMetadata *OrganizationConfigRule_OrganizationManagedRuleMetadata `json:"OrganizationManagedRuleMetadata,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSConfigOrganizationConfigRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigOrganizationConfigRule) AWSCloudFormationType() string { +func (r *OrganizationConfigRule) AWSCloudFormationType() string { return "AWS::Config::OrganizationConfigRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigOrganizationConfigRule) DependsOn() []string { +func (r *OrganizationConfigRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigOrganizationConfigRule) SetDependsOn(dependencies []string) { +func (r *OrganizationConfigRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigOrganizationConfigRule) Metadata() map[string]interface{} { +func (r *OrganizationConfigRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigOrganizationConfigRule) SetMetadata(metadata map[string]interface{}) { +func (r *OrganizationConfigRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigOrganizationConfigRule) DeletionPolicy() policies.DeletionPolicy { +func (r *OrganizationConfigRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigOrganizationConfigRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *OrganizationConfigRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSConfigOrganizationConfigRule) MarshalJSON() ([]byte, error) { - type Properties AWSConfigOrganizationConfigRule +func (r OrganizationConfigRule) MarshalJSON() ([]byte, error) { + type Properties OrganizationConfigRule return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSConfigOrganizationConfigRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSConfigOrganizationConfigRule) UnmarshalJSON(b []byte) error { - type Properties AWSConfigOrganizationConfigRule +func (r *OrganizationConfigRule) UnmarshalJSON(b []byte) error { + type Properties OrganizationConfigRule res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSConfigOrganizationConfigRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSConfigOrganizationConfigRule(*res.Properties) + *r = OrganizationConfigRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-config-organizationconfigrule_organizationcustomrulemetadata.go b/cloudformation/config/aws-config-organizationconfigrule_organizationcustomrulemetadata.go similarity index 82% rename from cloudformation/resources/aws-config-organizationconfigrule_organizationcustomrulemetadata.go rename to cloudformation/config/aws-config-organizationconfigrule_organizationcustomrulemetadata.go index 4645a31573..aa9c1eaa10 100644 --- a/cloudformation/resources/aws-config-organizationconfigrule_organizationcustomrulemetadata.go +++ b/cloudformation/config/aws-config-organizationconfigrule_organizationcustomrulemetadata.go @@ -1,10 +1,12 @@ -package resources +package config -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata AWS CloudFormation Resource (AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata) +// OrganizationConfigRule_OrganizationCustomRuleMetadata AWS CloudFormation Resource (AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html -type AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata struct { +type OrganizationConfigRule_OrganizationCustomRuleMetadata struct { // Description AWS CloudFormation Property // Required: false @@ -62,42 +64,42 @@ type AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata) AWSCloudFormationType() string { +func (r *OrganizationConfigRule_OrganizationCustomRuleMetadata) AWSCloudFormationType() string { return "AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata) DependsOn() []string { +func (r *OrganizationConfigRule_OrganizationCustomRuleMetadata) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata) SetDependsOn(dependencies []string) { +func (r *OrganizationConfigRule_OrganizationCustomRuleMetadata) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata) Metadata() map[string]interface{} { +func (r *OrganizationConfigRule_OrganizationCustomRuleMetadata) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata) SetMetadata(metadata map[string]interface{}) { +func (r *OrganizationConfigRule_OrganizationCustomRuleMetadata) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata) DeletionPolicy() policies.DeletionPolicy { +func (r *OrganizationConfigRule_OrganizationCustomRuleMetadata) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigOrganizationConfigRule_OrganizationCustomRuleMetadata) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *OrganizationConfigRule_OrganizationCustomRuleMetadata) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-organizationconfigrule_organizationmanagedrulemetadata.go b/cloudformation/config/aws-config-organizationconfigrule_organizationmanagedrulemetadata.go similarity index 81% rename from cloudformation/resources/aws-config-organizationconfigrule_organizationmanagedrulemetadata.go rename to cloudformation/config/aws-config-organizationconfigrule_organizationmanagedrulemetadata.go index 98c9ed7bb8..c966b01990 100644 --- a/cloudformation/resources/aws-config-organizationconfigrule_organizationmanagedrulemetadata.go +++ b/cloudformation/config/aws-config-organizationconfigrule_organizationmanagedrulemetadata.go @@ -1,10 +1,12 @@ -package resources +package config -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata AWS CloudFormation Resource (AWS::Config::OrganizationConfigRule.OrganizationManagedRuleMetadata) +// OrganizationConfigRule_OrganizationManagedRuleMetadata AWS CloudFormation Resource (AWS::Config::OrganizationConfigRule.OrganizationManagedRuleMetadata) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html -type AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata struct { +type OrganizationConfigRule_OrganizationManagedRuleMetadata struct { // Description AWS CloudFormation Property // Required: false @@ -57,42 +59,42 @@ type AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata) AWSCloudFormationType() string { +func (r *OrganizationConfigRule_OrganizationManagedRuleMetadata) AWSCloudFormationType() string { return "AWS::Config::OrganizationConfigRule.OrganizationManagedRuleMetadata" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata) DependsOn() []string { +func (r *OrganizationConfigRule_OrganizationManagedRuleMetadata) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata) SetDependsOn(dependencies []string) { +func (r *OrganizationConfigRule_OrganizationManagedRuleMetadata) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata) Metadata() map[string]interface{} { +func (r *OrganizationConfigRule_OrganizationManagedRuleMetadata) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata) SetMetadata(metadata map[string]interface{}) { +func (r *OrganizationConfigRule_OrganizationManagedRuleMetadata) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata) DeletionPolicy() policies.DeletionPolicy { +func (r *OrganizationConfigRule_OrganizationManagedRuleMetadata) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigOrganizationConfigRule_OrganizationManagedRuleMetadata) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *OrganizationConfigRule_OrganizationManagedRuleMetadata) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-remediationconfiguration.go b/cloudformation/config/aws-config-remediationconfiguration.go similarity index 83% rename from cloudformation/resources/aws-config-remediationconfiguration.go rename to cloudformation/config/aws-config-remediationconfiguration.go index e0d7f0ada4..42bc0b22c7 100644 --- a/cloudformation/resources/aws-config-remediationconfiguration.go +++ b/cloudformation/config/aws-config-remediationconfiguration.go @@ -1,15 +1,16 @@ -package resources +package config import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSConfigRemediationConfiguration AWS CloudFormation Resource (AWS::Config::RemediationConfiguration) +// RemediationConfiguration AWS CloudFormation Resource (AWS::Config::RemediationConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html -type AWSConfigRemediationConfiguration struct { +type RemediationConfiguration struct { // Automatic AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSConfigRemediationConfiguration struct { // ExecutionControls AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-executioncontrols - ExecutionControls *AWSConfigRemediationConfiguration_ExecutionControls `json:"ExecutionControls,omitempty"` + ExecutionControls *RemediationConfiguration_ExecutionControls `json:"ExecutionControls,omitempty"` // MaximumAutomaticAttempts AWS CloudFormation Property // Required: false @@ -72,50 +73,50 @@ type AWSConfigRemediationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration) AWSCloudFormationType() string { +func (r *RemediationConfiguration) AWSCloudFormationType() string { return "AWS::Config::RemediationConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration) DependsOn() []string { +func (r *RemediationConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration) SetDependsOn(dependencies []string) { +func (r *RemediationConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration) Metadata() map[string]interface{} { +func (r *RemediationConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *RemediationConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *RemediationConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RemediationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSConfigRemediationConfiguration) MarshalJSON() ([]byte, error) { - type Properties AWSConfigRemediationConfiguration +func (r RemediationConfiguration) MarshalJSON() ([]byte, error) { + type Properties RemediationConfiguration return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSConfigRemediationConfiguration) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSConfigRemediationConfiguration) UnmarshalJSON(b []byte) error { - type Properties AWSConfigRemediationConfiguration +func (r *RemediationConfiguration) UnmarshalJSON(b []byte) error { + type Properties RemediationConfiguration res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSConfigRemediationConfiguration) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSConfigRemediationConfiguration(*res.Properties) + *r = RemediationConfiguration(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/config/aws-config-remediationconfiguration_executioncontrols.go b/cloudformation/config/aws-config-remediationconfiguration_executioncontrols.go new file mode 100644 index 0000000000..e1efb99ac9 --- /dev/null +++ b/cloudformation/config/aws-config-remediationconfiguration_executioncontrols.go @@ -0,0 +1,65 @@ +package config + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RemediationConfiguration_ExecutionControls AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.ExecutionControls) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-executioncontrols.html +type RemediationConfiguration_ExecutionControls struct { + + // SsmControls AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-executioncontrols.html#cfn-config-remediationconfiguration-executioncontrols-ssmcontrols + SsmControls *RemediationConfiguration_SsmControls `json:"SsmControls,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RemediationConfiguration_ExecutionControls) AWSCloudFormationType() string { + return "AWS::Config::RemediationConfiguration.ExecutionControls" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_ExecutionControls) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_ExecutionControls) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_ExecutionControls) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_ExecutionControls) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_ExecutionControls) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_ExecutionControls) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/config/aws-config-remediationconfiguration_remediationparametervalue.go b/cloudformation/config/aws-config-remediationconfiguration_remediationparametervalue.go new file mode 100644 index 0000000000..d835004af3 --- /dev/null +++ b/cloudformation/config/aws-config-remediationconfiguration_remediationparametervalue.go @@ -0,0 +1,70 @@ +package config + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RemediationConfiguration_RemediationParameterValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.RemediationParameterValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html +type RemediationConfiguration_RemediationParameterValue struct { + + // ResourceValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html#cfn-config-remediationconfiguration-remediationparametervalue-resourcevalue + ResourceValue *RemediationConfiguration_ResourceValue `json:"ResourceValue,omitempty"` + + // StaticValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html#cfn-config-remediationconfiguration-remediationparametervalue-staticvalue + StaticValue *RemediationConfiguration_StaticValue `json:"StaticValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RemediationConfiguration_RemediationParameterValue) AWSCloudFormationType() string { + return "AWS::Config::RemediationConfiguration.RemediationParameterValue" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_RemediationParameterValue) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_RemediationParameterValue) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_RemediationParameterValue) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_RemediationParameterValue) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_RemediationParameterValue) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_RemediationParameterValue) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/config/aws-config-remediationconfiguration_resourcevalue.go b/cloudformation/config/aws-config-remediationconfiguration_resourcevalue.go new file mode 100644 index 0000000000..10e6fc7c1e --- /dev/null +++ b/cloudformation/config/aws-config-remediationconfiguration_resourcevalue.go @@ -0,0 +1,65 @@ +package config + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RemediationConfiguration_ResourceValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.ResourceValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-resourcevalue.html +type RemediationConfiguration_ResourceValue struct { + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-resourcevalue.html#cfn-config-remediationconfiguration-resourcevalue-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RemediationConfiguration_ResourceValue) AWSCloudFormationType() string { + return "AWS::Config::RemediationConfiguration.ResourceValue" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_ResourceValue) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_ResourceValue) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_ResourceValue) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_ResourceValue) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_ResourceValue) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_ResourceValue) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/config/aws-config-remediationconfiguration_ssmcontrols.go b/cloudformation/config/aws-config-remediationconfiguration_ssmcontrols.go new file mode 100644 index 0000000000..d81965051d --- /dev/null +++ b/cloudformation/config/aws-config-remediationconfiguration_ssmcontrols.go @@ -0,0 +1,70 @@ +package config + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RemediationConfiguration_SsmControls AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.SsmControls) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html +type RemediationConfiguration_SsmControls struct { + + // ConcurrentExecutionRatePercentage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html#cfn-config-remediationconfiguration-ssmcontrols-concurrentexecutionratepercentage + ConcurrentExecutionRatePercentage int `json:"ConcurrentExecutionRatePercentage,omitempty"` + + // ErrorPercentage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html#cfn-config-remediationconfiguration-ssmcontrols-errorpercentage + ErrorPercentage int `json:"ErrorPercentage,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RemediationConfiguration_SsmControls) AWSCloudFormationType() string { + return "AWS::Config::RemediationConfiguration.SsmControls" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_SsmControls) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_SsmControls) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_SsmControls) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_SsmControls) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_SsmControls) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_SsmControls) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/config/aws-config-remediationconfiguration_staticvalue.go b/cloudformation/config/aws-config-remediationconfiguration_staticvalue.go new file mode 100644 index 0000000000..c9e706e7a5 --- /dev/null +++ b/cloudformation/config/aws-config-remediationconfiguration_staticvalue.go @@ -0,0 +1,65 @@ +package config + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RemediationConfiguration_StaticValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.StaticValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-staticvalue.html +type RemediationConfiguration_StaticValue struct { + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-staticvalue.html#cfn-config-remediationconfiguration-staticvalue-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RemediationConfiguration_StaticValue) AWSCloudFormationType() string { + return "AWS::Config::RemediationConfiguration.StaticValue" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_StaticValue) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RemediationConfiguration_StaticValue) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_StaticValue) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RemediationConfiguration_StaticValue) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_StaticValue) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RemediationConfiguration_StaticValue) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/custom_resource.go b/cloudformation/custom_resource.go index 777ea89039..ec57b8356e 100644 --- a/cloudformation/custom_resource.go +++ b/cloudformation/custom_resource.go @@ -3,7 +3,7 @@ package cloudformation import ( "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/policies" ) // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html diff --git a/cloudformation/resources/aws-datapipeline-pipeline.go b/cloudformation/datapipeline/aws-datapipeline-pipeline.go similarity index 78% rename from cloudformation/resources/aws-datapipeline-pipeline.go rename to cloudformation/datapipeline/aws-datapipeline-pipeline.go index 6969a53d78..ea197a3785 100644 --- a/cloudformation/resources/aws-datapipeline-pipeline.go +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline.go @@ -1,15 +1,16 @@ -package resources +package datapipeline import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSDataPipelinePipeline AWS CloudFormation Resource (AWS::DataPipeline::Pipeline) +// Pipeline AWS CloudFormation Resource (AWS::DataPipeline::Pipeline) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html -type AWSDataPipelinePipeline struct { +type Pipeline struct { // Activate AWS CloudFormation Property // Required: false @@ -29,22 +30,22 @@ type AWSDataPipelinePipeline struct { // ParameterObjects AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-parameterobjects - ParameterObjects []AWSDataPipelinePipeline_ParameterObject `json:"ParameterObjects,omitempty"` + ParameterObjects []Pipeline_ParameterObject `json:"ParameterObjects,omitempty"` // ParameterValues AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-parametervalues - ParameterValues []AWSDataPipelinePipeline_ParameterValue `json:"ParameterValues,omitempty"` + ParameterValues []Pipeline_ParameterValue `json:"ParameterValues,omitempty"` // PipelineObjects AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-pipelineobjects - PipelineObjects []AWSDataPipelinePipeline_PipelineObject `json:"PipelineObjects,omitempty"` + PipelineObjects []Pipeline_PipelineObject `json:"PipelineObjects,omitempty"` // PipelineTags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-pipelinetags - PipelineTags []AWSDataPipelinePipeline_PipelineTag `json:"PipelineTags,omitempty"` + PipelineTags []Pipeline_PipelineTag `json:"PipelineTags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +58,50 @@ type AWSDataPipelinePipeline struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline) AWSCloudFormationType() string { +func (r *Pipeline) AWSCloudFormationType() string { return "AWS::DataPipeline::Pipeline" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline) DependsOn() []string { +func (r *Pipeline) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline) SetDependsOn(dependencies []string) { +func (r *Pipeline) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline) Metadata() map[string]interface{} { +func (r *Pipeline) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDataPipelinePipeline) MarshalJSON() ([]byte, error) { - type Properties AWSDataPipelinePipeline +func (r Pipeline) MarshalJSON() ([]byte, error) { + type Properties Pipeline return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSDataPipelinePipeline) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDataPipelinePipeline) UnmarshalJSON(b []byte) error { - type Properties AWSDataPipelinePipeline +func (r *Pipeline) UnmarshalJSON(b []byte) error { + type Properties Pipeline res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSDataPipelinePipeline) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDataPipelinePipeline(*res.Properties) + *r = Pipeline(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-datapipeline-pipeline_field.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_field.go similarity index 77% rename from cloudformation/resources/aws-datapipeline-pipeline_field.go rename to cloudformation/datapipeline/aws-datapipeline-pipeline_field.go index 31d4cd8933..d69ae6649e 100644 --- a/cloudformation/resources/aws-datapipeline-pipeline_field.go +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_field.go @@ -1,10 +1,12 @@ -package resources +package datapipeline -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDataPipelinePipeline_Field AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.Field) +// Pipeline_Field AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.Field) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html -type AWSDataPipelinePipeline_Field struct { +type Pipeline_Field struct { // Key AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSDataPipelinePipeline_Field struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_Field) AWSCloudFormationType() string { +func (r *Pipeline_Field) AWSCloudFormationType() string { return "AWS::DataPipeline::Pipeline.Field" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_Field) DependsOn() []string { +func (r *Pipeline_Field) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_Field) SetDependsOn(dependencies []string) { +func (r *Pipeline_Field) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_Field) Metadata() map[string]interface{} { +func (r *Pipeline_Field) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_Field) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_Field) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_Field) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_Field) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_Field) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_Field) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterattribute.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterattribute.go new file mode 100644 index 0000000000..013fa19f7c --- /dev/null +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterattribute.go @@ -0,0 +1,70 @@ +package datapipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_ParameterAttribute AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterAttribute) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html +type Pipeline_ParameterAttribute struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html#cfn-datapipeline-pipeline-parameterobjects-attribtues-key + Key string `json:"Key,omitempty"` + + // StringValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html#cfn-datapipeline-pipeline-parameterobjects-attribtues-stringvalue + StringValue string `json:"StringValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_ParameterAttribute) AWSCloudFormationType() string { + return "AWS::DataPipeline::Pipeline.ParameterAttribute" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ParameterAttribute) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ParameterAttribute) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ParameterAttribute) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ParameterAttribute) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ParameterAttribute) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ParameterAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterobject.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterobject.go new file mode 100644 index 0000000000..0410616ed9 --- /dev/null +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterobject.go @@ -0,0 +1,70 @@ +package datapipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_ParameterObject AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterObject) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html +type Pipeline_ParameterObject struct { + + // Attributes AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html#cfn-datapipeline-pipeline-parameterobjects-attributes + Attributes []Pipeline_ParameterAttribute `json:"Attributes,omitempty"` + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html#cfn-datapipeline-pipeline-parameterobjects-id + Id string `json:"Id,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_ParameterObject) AWSCloudFormationType() string { + return "AWS::DataPipeline::Pipeline.ParameterObject" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ParameterObject) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ParameterObject) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ParameterObject) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ParameterObject) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ParameterObject) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ParameterObject) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/datapipeline/aws-datapipeline-pipeline_parametervalue.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_parametervalue.go new file mode 100644 index 0000000000..f87d5b92f2 --- /dev/null +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_parametervalue.go @@ -0,0 +1,70 @@ +package datapipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_ParameterValue AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html +type Pipeline_ParameterValue struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html#cfn-datapipeline-pipeline-parametervalues-id + Id string `json:"Id,omitempty"` + + // StringValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html#cfn-datapipeline-pipeline-parametervalues-stringvalue + StringValue string `json:"StringValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_ParameterValue) AWSCloudFormationType() string { + return "AWS::DataPipeline::Pipeline.ParameterValue" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ParameterValue) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_ParameterValue) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ParameterValue) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_ParameterValue) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ParameterValue) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_ParameterValue) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelineobject.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelineobject.go new file mode 100644 index 0000000000..22a64f5612 --- /dev/null +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelineobject.go @@ -0,0 +1,75 @@ +package datapipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_PipelineObject AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.PipelineObject) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html +type Pipeline_PipelineObject struct { + + // Fields AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-fields + Fields []Pipeline_Field `json:"Fields,omitempty"` + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-id + Id string `json:"Id,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_PipelineObject) AWSCloudFormationType() string { + return "AWS::DataPipeline::Pipeline.PipelineObject" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_PipelineObject) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_PipelineObject) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_PipelineObject) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_PipelineObject) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_PipelineObject) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_PipelineObject) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelinetag.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelinetag.go new file mode 100644 index 0000000000..291ffa3347 --- /dev/null +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelinetag.go @@ -0,0 +1,70 @@ +package datapipeline + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_PipelineTag AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.PipelineTag) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html +type Pipeline_PipelineTag struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html#cfn-datapipeline-pipeline-pipelinetags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html#cfn-datapipeline-pipeline-pipelinetags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_PipelineTag) AWSCloudFormationType() string { + return "AWS::DataPipeline::Pipeline.PipelineTag" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_PipelineTag) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_PipelineTag) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_PipelineTag) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_PipelineTag) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_PipelineTag) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_PipelineTag) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-dax-cluster.go b/cloudformation/dax/aws-dax-cluster.go similarity index 87% rename from cloudformation/resources/aws-dax-cluster.go rename to cloudformation/dax/aws-dax-cluster.go index c99dd1a5f8..44e3061bfb 100644 --- a/cloudformation/resources/aws-dax-cluster.go +++ b/cloudformation/dax/aws-dax-cluster.go @@ -1,15 +1,16 @@ -package resources +package dax import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSDAXCluster AWS CloudFormation Resource (AWS::DAX::Cluster) +// Cluster AWS CloudFormation Resource (AWS::DAX::Cluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html -type AWSDAXCluster struct { +type Cluster struct { // AvailabilityZones AWS CloudFormation Property // Required: false @@ -59,7 +60,7 @@ type AWSDAXCluster struct { // SSESpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-ssespecification - SSESpecification *AWSDAXCluster_SSESpecification `json:"SSESpecification,omitempty"` + SSESpecification *Cluster_SSESpecification `json:"SSESpecification,omitempty"` // SecurityGroupIds AWS CloudFormation Property // Required: false @@ -87,50 +88,50 @@ type AWSDAXCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDAXCluster) AWSCloudFormationType() string { +func (r *Cluster) AWSCloudFormationType() string { return "AWS::DAX::Cluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDAXCluster) DependsOn() []string { +func (r *Cluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDAXCluster) SetDependsOn(dependencies []string) { +func (r *Cluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDAXCluster) Metadata() map[string]interface{} { +func (r *Cluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDAXCluster) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDAXCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDAXCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDAXCluster) MarshalJSON() ([]byte, error) { - type Properties AWSDAXCluster +func (r Cluster) MarshalJSON() ([]byte, error) { + type Properties Cluster return json.Marshal(&struct { Type string Properties Properties @@ -148,8 +149,8 @@ func (r AWSDAXCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDAXCluster) UnmarshalJSON(b []byte) error { - type Properties AWSDAXCluster +func (r *Cluster) UnmarshalJSON(b []byte) error { + type Properties Cluster res := &struct { Type string Properties *Properties @@ -168,7 +169,7 @@ func (r *AWSDAXCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDAXCluster(*res.Properties) + *r = Cluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/dax/aws-dax-cluster_ssespecification.go b/cloudformation/dax/aws-dax-cluster_ssespecification.go new file mode 100644 index 0000000000..4884a9b59f --- /dev/null +++ b/cloudformation/dax/aws-dax-cluster_ssespecification.go @@ -0,0 +1,65 @@ +package dax + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_SSESpecification AWS CloudFormation Resource (AWS::DAX::Cluster.SSESpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html +type Cluster_SSESpecification struct { + + // SSEEnabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html#cfn-dax-cluster-ssespecification-sseenabled + SSEEnabled bool `json:"SSEEnabled,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_SSESpecification) AWSCloudFormationType() string { + return "AWS::DAX::Cluster.SSESpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_SSESpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_SSESpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_SSESpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_SSESpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_SSESpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-dax-parametergroup.go b/cloudformation/dax/aws-dax-parametergroup.go similarity index 81% rename from cloudformation/resources/aws-dax-parametergroup.go rename to cloudformation/dax/aws-dax-parametergroup.go index ef3b7f530e..d50a697f27 100644 --- a/cloudformation/resources/aws-dax-parametergroup.go +++ b/cloudformation/dax/aws-dax-parametergroup.go @@ -1,15 +1,16 @@ -package resources +package dax import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSDAXParameterGroup AWS CloudFormation Resource (AWS::DAX::ParameterGroup) +// ParameterGroup AWS CloudFormation Resource (AWS::DAX::ParameterGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html -type AWSDAXParameterGroup struct { +type ParameterGroup struct { // Description AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSDAXParameterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDAXParameterGroup) AWSCloudFormationType() string { +func (r *ParameterGroup) AWSCloudFormationType() string { return "AWS::DAX::ParameterGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDAXParameterGroup) DependsOn() []string { +func (r *ParameterGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDAXParameterGroup) SetDependsOn(dependencies []string) { +func (r *ParameterGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDAXParameterGroup) Metadata() map[string]interface{} { +func (r *ParameterGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDAXParameterGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ParameterGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDAXParameterGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ParameterGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDAXParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDAXParameterGroup) MarshalJSON() ([]byte, error) { - type Properties AWSDAXParameterGroup +func (r ParameterGroup) MarshalJSON() ([]byte, error) { + type Properties ParameterGroup return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSDAXParameterGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDAXParameterGroup) UnmarshalJSON(b []byte) error { - type Properties AWSDAXParameterGroup +func (r *ParameterGroup) UnmarshalJSON(b []byte) error { + type Properties ParameterGroup res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSDAXParameterGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDAXParameterGroup(*res.Properties) + *r = ParameterGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-dax-subnetgroup.go b/cloudformation/dax/aws-dax-subnetgroup.go similarity index 82% rename from cloudformation/resources/aws-dax-subnetgroup.go rename to cloudformation/dax/aws-dax-subnetgroup.go index 8023f6e020..9b861f5fd1 100644 --- a/cloudformation/resources/aws-dax-subnetgroup.go +++ b/cloudformation/dax/aws-dax-subnetgroup.go @@ -1,15 +1,16 @@ -package resources +package dax import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSDAXSubnetGroup AWS CloudFormation Resource (AWS::DAX::SubnetGroup) +// SubnetGroup AWS CloudFormation Resource (AWS::DAX::SubnetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html -type AWSDAXSubnetGroup struct { +type SubnetGroup struct { // Description AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSDAXSubnetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDAXSubnetGroup) AWSCloudFormationType() string { +func (r *SubnetGroup) AWSCloudFormationType() string { return "AWS::DAX::SubnetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDAXSubnetGroup) DependsOn() []string { +func (r *SubnetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDAXSubnetGroup) SetDependsOn(dependencies []string) { +func (r *SubnetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDAXSubnetGroup) Metadata() map[string]interface{} { +func (r *SubnetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDAXSubnetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *SubnetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDAXSubnetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *SubnetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDAXSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDAXSubnetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSDAXSubnetGroup +func (r SubnetGroup) MarshalJSON() ([]byte, error) { + type Properties SubnetGroup return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSDAXSubnetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDAXSubnetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSDAXSubnetGroup +func (r *SubnetGroup) UnmarshalJSON(b []byte) error { + type Properties SubnetGroup res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSDAXSubnetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDAXSubnetGroup(*res.Properties) + *r = SubnetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-directoryservice-microsoftad.go b/cloudformation/directoryservice/aws-directoryservice-microsoftad.go similarity index 81% rename from cloudformation/resources/aws-directoryservice-microsoftad.go rename to cloudformation/directoryservice/aws-directoryservice-microsoftad.go index 224f50b286..a3b6a4f758 100644 --- a/cloudformation/resources/aws-directoryservice-microsoftad.go +++ b/cloudformation/directoryservice/aws-directoryservice-microsoftad.go @@ -1,15 +1,16 @@ -package resources +package directoryservice import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSDirectoryServiceMicrosoftAD AWS CloudFormation Resource (AWS::DirectoryService::MicrosoftAD) +// MicrosoftAD AWS CloudFormation Resource (AWS::DirectoryService::MicrosoftAD) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html -type AWSDirectoryServiceMicrosoftAD struct { +type MicrosoftAD struct { // CreateAlias AWS CloudFormation Property // Required: false @@ -44,7 +45,7 @@ type AWSDirectoryServiceMicrosoftAD struct { // VpcSettings AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-vpcsettings - VpcSettings *AWSDirectoryServiceMicrosoftAD_VpcSettings `json:"VpcSettings,omitempty"` + VpcSettings *MicrosoftAD_VpcSettings `json:"VpcSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +58,50 @@ type AWSDirectoryServiceMicrosoftAD struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDirectoryServiceMicrosoftAD) AWSCloudFormationType() string { +func (r *MicrosoftAD) AWSCloudFormationType() string { return "AWS::DirectoryService::MicrosoftAD" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDirectoryServiceMicrosoftAD) DependsOn() []string { +func (r *MicrosoftAD) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDirectoryServiceMicrosoftAD) SetDependsOn(dependencies []string) { +func (r *MicrosoftAD) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDirectoryServiceMicrosoftAD) Metadata() map[string]interface{} { +func (r *MicrosoftAD) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDirectoryServiceMicrosoftAD) SetMetadata(metadata map[string]interface{}) { +func (r *MicrosoftAD) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDirectoryServiceMicrosoftAD) DeletionPolicy() policies.DeletionPolicy { +func (r *MicrosoftAD) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDirectoryServiceMicrosoftAD) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MicrosoftAD) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDirectoryServiceMicrosoftAD) MarshalJSON() ([]byte, error) { - type Properties AWSDirectoryServiceMicrosoftAD +func (r MicrosoftAD) MarshalJSON() ([]byte, error) { + type Properties MicrosoftAD return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSDirectoryServiceMicrosoftAD) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDirectoryServiceMicrosoftAD) UnmarshalJSON(b []byte) error { - type Properties AWSDirectoryServiceMicrosoftAD +func (r *MicrosoftAD) UnmarshalJSON(b []byte) error { + type Properties MicrosoftAD res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSDirectoryServiceMicrosoftAD) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDirectoryServiceMicrosoftAD(*res.Properties) + *r = MicrosoftAD(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/directoryservice/aws-directoryservice-microsoftad_vpcsettings.go b/cloudformation/directoryservice/aws-directoryservice-microsoftad_vpcsettings.go new file mode 100644 index 0000000000..1d79bef908 --- /dev/null +++ b/cloudformation/directoryservice/aws-directoryservice-microsoftad_vpcsettings.go @@ -0,0 +1,70 @@ +package directoryservice + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MicrosoftAD_VpcSettings AWS CloudFormation Resource (AWS::DirectoryService::MicrosoftAD.VpcSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html +type MicrosoftAD_VpcSettings struct { + + // SubnetIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-subnetids + SubnetIds []string `json:"SubnetIds,omitempty"` + + // VpcId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-vpcid + VpcId string `json:"VpcId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MicrosoftAD_VpcSettings) AWSCloudFormationType() string { + return "AWS::DirectoryService::MicrosoftAD.VpcSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MicrosoftAD_VpcSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MicrosoftAD_VpcSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MicrosoftAD_VpcSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MicrosoftAD_VpcSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MicrosoftAD_VpcSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MicrosoftAD_VpcSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-directoryservice-simplead.go b/cloudformation/directoryservice/aws-directoryservice-simplead.go similarity index 82% rename from cloudformation/resources/aws-directoryservice-simplead.go rename to cloudformation/directoryservice/aws-directoryservice-simplead.go index 36176ba2bf..63645e77cd 100644 --- a/cloudformation/resources/aws-directoryservice-simplead.go +++ b/cloudformation/directoryservice/aws-directoryservice-simplead.go @@ -1,15 +1,16 @@ -package resources +package directoryservice import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSDirectoryServiceSimpleAD AWS CloudFormation Resource (AWS::DirectoryService::SimpleAD) +// SimpleAD AWS CloudFormation Resource (AWS::DirectoryService::SimpleAD) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html -type AWSDirectoryServiceSimpleAD struct { +type SimpleAD struct { // CreateAlias AWS CloudFormation Property // Required: false @@ -49,7 +50,7 @@ type AWSDirectoryServiceSimpleAD struct { // VpcSettings AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-vpcsettings - VpcSettings *AWSDirectoryServiceSimpleAD_VpcSettings `json:"VpcSettings,omitempty"` + VpcSettings *SimpleAD_VpcSettings `json:"VpcSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -62,50 +63,50 @@ type AWSDirectoryServiceSimpleAD struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDirectoryServiceSimpleAD) AWSCloudFormationType() string { +func (r *SimpleAD) AWSCloudFormationType() string { return "AWS::DirectoryService::SimpleAD" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDirectoryServiceSimpleAD) DependsOn() []string { +func (r *SimpleAD) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDirectoryServiceSimpleAD) SetDependsOn(dependencies []string) { +func (r *SimpleAD) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDirectoryServiceSimpleAD) Metadata() map[string]interface{} { +func (r *SimpleAD) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDirectoryServiceSimpleAD) SetMetadata(metadata map[string]interface{}) { +func (r *SimpleAD) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDirectoryServiceSimpleAD) DeletionPolicy() policies.DeletionPolicy { +func (r *SimpleAD) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDirectoryServiceSimpleAD) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimpleAD) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDirectoryServiceSimpleAD) MarshalJSON() ([]byte, error) { - type Properties AWSDirectoryServiceSimpleAD +func (r SimpleAD) MarshalJSON() ([]byte, error) { + type Properties SimpleAD return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSDirectoryServiceSimpleAD) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDirectoryServiceSimpleAD) UnmarshalJSON(b []byte) error { - type Properties AWSDirectoryServiceSimpleAD +func (r *SimpleAD) UnmarshalJSON(b []byte) error { + type Properties SimpleAD res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSDirectoryServiceSimpleAD) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDirectoryServiceSimpleAD(*res.Properties) + *r = SimpleAD(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/directoryservice/aws-directoryservice-simplead_vpcsettings.go b/cloudformation/directoryservice/aws-directoryservice-simplead_vpcsettings.go new file mode 100644 index 0000000000..5795cb9ad5 --- /dev/null +++ b/cloudformation/directoryservice/aws-directoryservice-simplead_vpcsettings.go @@ -0,0 +1,70 @@ +package directoryservice + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SimpleAD_VpcSettings AWS CloudFormation Resource (AWS::DirectoryService::SimpleAD.VpcSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html +type SimpleAD_VpcSettings struct { + + // SubnetIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-subnetids + SubnetIds []string `json:"SubnetIds,omitempty"` + + // VpcId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-vpcid + VpcId string `json:"VpcId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SimpleAD_VpcSettings) AWSCloudFormationType() string { + return "AWS::DirectoryService::SimpleAD.VpcSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimpleAD_VpcSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimpleAD_VpcSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimpleAD_VpcSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimpleAD_VpcSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimpleAD_VpcSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimpleAD_VpcSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-dlm-lifecyclepolicy.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy.go similarity index 80% rename from cloudformation/resources/aws-dlm-lifecyclepolicy.go rename to cloudformation/dlm/aws-dlm-lifecyclepolicy.go index 3b0297974e..4ce581c7f6 100644 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy.go +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy.go @@ -1,15 +1,16 @@ -package resources +package dlm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSDLMLifecyclePolicy AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy) +// LifecyclePolicy AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html -type AWSDLMLifecyclePolicy struct { +type LifecyclePolicy struct { // Description AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSDLMLifecyclePolicy struct { // PolicyDetails AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-policydetails - PolicyDetails *AWSDLMLifecyclePolicy_PolicyDetails `json:"PolicyDetails,omitempty"` + PolicyDetails *LifecyclePolicy_PolicyDetails `json:"PolicyDetails,omitempty"` // State AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSDLMLifecyclePolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy) AWSCloudFormationType() string { +func (r *LifecyclePolicy) AWSCloudFormationType() string { return "AWS::DLM::LifecyclePolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy) DependsOn() []string { +func (r *LifecyclePolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy) SetDependsOn(dependencies []string) { +func (r *LifecyclePolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy) Metadata() map[string]interface{} { +func (r *LifecyclePolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy) SetMetadata(metadata map[string]interface{}) { +func (r *LifecyclePolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *LifecyclePolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LifecyclePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDLMLifecyclePolicy) MarshalJSON() ([]byte, error) { - type Properties AWSDLMLifecyclePolicy +func (r LifecyclePolicy) MarshalJSON() ([]byte, error) { + type Properties LifecyclePolicy return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSDLMLifecyclePolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDLMLifecyclePolicy) UnmarshalJSON(b []byte) error { - type Properties AWSDLMLifecyclePolicy +func (r *LifecyclePolicy) UnmarshalJSON(b []byte) error { + type Properties LifecyclePolicy res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSDLMLifecyclePolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDLMLifecyclePolicy(*res.Properties) + *r = LifecyclePolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-dlm-lifecyclepolicy_createrule.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy_createrule.go similarity index 76% rename from cloudformation/resources/aws-dlm-lifecyclepolicy_createrule.go rename to cloudformation/dlm/aws-dlm-lifecyclepolicy_createrule.go index 73863c578f..35a85040a7 100644 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy_createrule.go +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy_createrule.go @@ -1,10 +1,12 @@ -package resources +package dlm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDLMLifecyclePolicy_CreateRule AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.CreateRule) +// LifecyclePolicy_CreateRule AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.CreateRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html -type AWSDLMLifecyclePolicy_CreateRule struct { +type LifecyclePolicy_CreateRule struct { // Interval AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSDLMLifecyclePolicy_CreateRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy_CreateRule) AWSCloudFormationType() string { +func (r *LifecyclePolicy_CreateRule) AWSCloudFormationType() string { return "AWS::DLM::LifecyclePolicy.CreateRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_CreateRule) DependsOn() []string { +func (r *LifecyclePolicy_CreateRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_CreateRule) SetDependsOn(dependencies []string) { +func (r *LifecyclePolicy_CreateRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_CreateRule) Metadata() map[string]interface{} { +func (r *LifecyclePolicy_CreateRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_CreateRule) SetMetadata(metadata map[string]interface{}) { +func (r *LifecyclePolicy_CreateRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_CreateRule) DeletionPolicy() policies.DeletionPolicy { +func (r *LifecyclePolicy_CreateRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_CreateRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LifecyclePolicy_CreateRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/dlm/aws-dlm-lifecyclepolicy_parameters.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy_parameters.go new file mode 100644 index 0000000000..1688c7bb86 --- /dev/null +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy_parameters.go @@ -0,0 +1,65 @@ +package dlm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LifecyclePolicy_Parameters AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.Parameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html +type LifecyclePolicy_Parameters struct { + + // ExcludeBootVolume AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html#cfn-dlm-lifecyclepolicy-parameters-excludebootvolume + ExcludeBootVolume bool `json:"ExcludeBootVolume,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LifecyclePolicy_Parameters) AWSCloudFormationType() string { + return "AWS::DLM::LifecyclePolicy.Parameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LifecyclePolicy_Parameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LifecyclePolicy_Parameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LifecyclePolicy_Parameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LifecyclePolicy_Parameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LifecyclePolicy_Parameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LifecyclePolicy_Parameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/dlm/aws-dlm-lifecyclepolicy_policydetails.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy_policydetails.go new file mode 100644 index 0000000000..dcfe3055e0 --- /dev/null +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy_policydetails.go @@ -0,0 +1,86 @@ +package dlm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) + +// LifecyclePolicy_PolicyDetails AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.PolicyDetails) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html +type LifecyclePolicy_PolicyDetails struct { + + // Parameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-parameters + Parameters *LifecyclePolicy_Parameters `json:"Parameters,omitempty"` + + // PolicyType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-policytype + PolicyType string `json:"PolicyType,omitempty"` + + // ResourceTypes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-resourcetypes + ResourceTypes []string `json:"ResourceTypes,omitempty"` + + // Schedules AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-schedules + Schedules []LifecyclePolicy_Schedule `json:"Schedules,omitempty"` + + // TargetTags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-targettags + TargetTags []tags.Tag `json:"TargetTags,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LifecyclePolicy_PolicyDetails) AWSCloudFormationType() string { + return "AWS::DLM::LifecyclePolicy.PolicyDetails" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LifecyclePolicy_PolicyDetails) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LifecyclePolicy_PolicyDetails) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LifecyclePolicy_PolicyDetails) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LifecyclePolicy_PolicyDetails) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LifecyclePolicy_PolicyDetails) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LifecyclePolicy_PolicyDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/dlm/aws-dlm-lifecyclepolicy_retainrule.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy_retainrule.go new file mode 100644 index 0000000000..20e8ff4fcd --- /dev/null +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy_retainrule.go @@ -0,0 +1,65 @@ +package dlm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LifecyclePolicy_RetainRule AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.RetainRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html +type LifecyclePolicy_RetainRule struct { + + // Count AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-count + Count int `json:"Count"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LifecyclePolicy_RetainRule) AWSCloudFormationType() string { + return "AWS::DLM::LifecyclePolicy.RetainRule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LifecyclePolicy_RetainRule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LifecyclePolicy_RetainRule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LifecyclePolicy_RetainRule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LifecyclePolicy_RetainRule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LifecyclePolicy_RetainRule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LifecyclePolicy_RetainRule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-dlm-lifecyclepolicy_schedule.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy_schedule.go similarity index 75% rename from cloudformation/resources/aws-dlm-lifecyclepolicy_schedule.go rename to cloudformation/dlm/aws-dlm-lifecyclepolicy_schedule.go index 027587dc8e..7d0f9dd0fb 100644 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy_schedule.go +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy_schedule.go @@ -1,10 +1,13 @@ -package resources +package dlm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) -// AWSDLMLifecyclePolicy_Schedule AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.Schedule) +// LifecyclePolicy_Schedule AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.Schedule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html -type AWSDLMLifecyclePolicy_Schedule struct { +type LifecyclePolicy_Schedule struct { // CopyTags AWS CloudFormation Property // Required: false @@ -14,7 +17,7 @@ type AWSDLMLifecyclePolicy_Schedule struct { // CreateRule AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-createrule - CreateRule *AWSDLMLifecyclePolicy_CreateRule `json:"CreateRule,omitempty"` + CreateRule *LifecyclePolicy_CreateRule `json:"CreateRule,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -24,17 +27,17 @@ type AWSDLMLifecyclePolicy_Schedule struct { // RetainRule AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-retainrule - RetainRule *AWSDLMLifecyclePolicy_RetainRule `json:"RetainRule,omitempty"` + RetainRule *LifecyclePolicy_RetainRule `json:"RetainRule,omitempty"` // TagsToAdd AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-tagstoadd - TagsToAdd []Tag `json:"TagsToAdd,omitempty"` + TagsToAdd []tags.Tag `json:"TagsToAdd,omitempty"` // VariableTags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-variabletags - VariableTags []Tag `json:"VariableTags,omitempty"` + VariableTags []tags.Tag `json:"VariableTags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,42 +50,42 @@ type AWSDLMLifecyclePolicy_Schedule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy_Schedule) AWSCloudFormationType() string { +func (r *LifecyclePolicy_Schedule) AWSCloudFormationType() string { return "AWS::DLM::LifecyclePolicy.Schedule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_Schedule) DependsOn() []string { +func (r *LifecyclePolicy_Schedule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_Schedule) SetDependsOn(dependencies []string) { +func (r *LifecyclePolicy_Schedule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_Schedule) Metadata() map[string]interface{} { +func (r *LifecyclePolicy_Schedule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_Schedule) SetMetadata(metadata map[string]interface{}) { +func (r *LifecyclePolicy_Schedule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_Schedule) DeletionPolicy() policies.DeletionPolicy { +func (r *LifecyclePolicy_Schedule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LifecyclePolicy_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dms-certificate.go b/cloudformation/dms/aws-dms-certificate.go similarity index 82% rename from cloudformation/resources/aws-dms-certificate.go rename to cloudformation/dms/aws-dms-certificate.go index 04e36dc9d0..ea95aa9492 100644 --- a/cloudformation/resources/aws-dms-certificate.go +++ b/cloudformation/dms/aws-dms-certificate.go @@ -1,15 +1,16 @@ -package resources +package dms import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSDMSCertificate AWS CloudFormation Resource (AWS::DMS::Certificate) +// Certificate AWS CloudFormation Resource (AWS::DMS::Certificate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html -type AWSDMSCertificate struct { +type Certificate struct { // CertificateIdentifier AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSDMSCertificate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSCertificate) AWSCloudFormationType() string { +func (r *Certificate) AWSCloudFormationType() string { return "AWS::DMS::Certificate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSCertificate) DependsOn() []string { +func (r *Certificate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSCertificate) SetDependsOn(dependencies []string) { +func (r *Certificate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSCertificate) Metadata() map[string]interface{} { +func (r *Certificate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSCertificate) SetMetadata(metadata map[string]interface{}) { +func (r *Certificate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSCertificate) DeletionPolicy() policies.DeletionPolicy { +func (r *Certificate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDMSCertificate) MarshalJSON() ([]byte, error) { - type Properties AWSDMSCertificate +func (r Certificate) MarshalJSON() ([]byte, error) { + type Properties Certificate return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSDMSCertificate) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDMSCertificate) UnmarshalJSON(b []byte) error { - type Properties AWSDMSCertificate +func (r *Certificate) UnmarshalJSON(b []byte) error { + type Properties Certificate res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSDMSCertificate) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDMSCertificate(*res.Properties) + *r = Certificate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-dms-endpoint.go b/cloudformation/dms/aws-dms-endpoint.go similarity index 85% rename from cloudformation/resources/aws-dms-endpoint.go rename to cloudformation/dms/aws-dms-endpoint.go index 104575a356..399b70adbe 100644 --- a/cloudformation/resources/aws-dms-endpoint.go +++ b/cloudformation/dms/aws-dms-endpoint.go @@ -1,15 +1,17 @@ -package resources +package dms import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDMSEndpoint AWS CloudFormation Resource (AWS::DMS::Endpoint) +// Endpoint AWS CloudFormation Resource (AWS::DMS::Endpoint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html -type AWSDMSEndpoint struct { +type Endpoint struct { // CertificateArn AWS CloudFormation Property // Required: false @@ -24,12 +26,12 @@ type AWSDMSEndpoint struct { // DynamoDbSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-dynamodbsettings - DynamoDbSettings *AWSDMSEndpoint_DynamoDbSettings `json:"DynamoDbSettings,omitempty"` + DynamoDbSettings *Endpoint_DynamoDbSettings `json:"DynamoDbSettings,omitempty"` // ElasticsearchSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-elasticsearchsettings - ElasticsearchSettings *AWSDMSEndpoint_ElasticsearchSettings `json:"ElasticsearchSettings,omitempty"` + ElasticsearchSettings *Endpoint_ElasticsearchSettings `json:"ElasticsearchSettings,omitempty"` // EndpointIdentifier AWS CloudFormation Property // Required: false @@ -54,7 +56,7 @@ type AWSDMSEndpoint struct { // KinesisSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-kinesissettings - KinesisSettings *AWSDMSEndpoint_KinesisSettings `json:"KinesisSettings,omitempty"` + KinesisSettings *Endpoint_KinesisSettings `json:"KinesisSettings,omitempty"` // KmsKeyId AWS CloudFormation Property // Required: false @@ -64,7 +66,7 @@ type AWSDMSEndpoint struct { // MongoDbSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-mongodbsettings - MongoDbSettings *AWSDMSEndpoint_MongoDbSettings `json:"MongoDbSettings,omitempty"` + MongoDbSettings *Endpoint_MongoDbSettings `json:"MongoDbSettings,omitempty"` // Password AWS CloudFormation Property // Required: false @@ -79,7 +81,7 @@ type AWSDMSEndpoint struct { // S3Settings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-s3settings - S3Settings *AWSDMSEndpoint_S3Settings `json:"S3Settings,omitempty"` + S3Settings *Endpoint_S3Settings `json:"S3Settings,omitempty"` // ServerName AWS CloudFormation Property // Required: false @@ -94,7 +96,7 @@ type AWSDMSEndpoint struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Username AWS CloudFormation Property // Required: false @@ -112,50 +114,50 @@ type AWSDMSEndpoint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSEndpoint) AWSCloudFormationType() string { +func (r *Endpoint) AWSCloudFormationType() string { return "AWS::DMS::Endpoint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint) DependsOn() []string { +func (r *Endpoint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint) SetDependsOn(dependencies []string) { +func (r *Endpoint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint) Metadata() map[string]interface{} { +func (r *Endpoint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint) SetMetadata(metadata map[string]interface{}) { +func (r *Endpoint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint) DeletionPolicy() policies.DeletionPolicy { +func (r *Endpoint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Endpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDMSEndpoint) MarshalJSON() ([]byte, error) { - type Properties AWSDMSEndpoint +func (r Endpoint) MarshalJSON() ([]byte, error) { + type Properties Endpoint return json.Marshal(&struct { Type string Properties Properties @@ -173,8 +175,8 @@ func (r AWSDMSEndpoint) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDMSEndpoint) UnmarshalJSON(b []byte) error { - type Properties AWSDMSEndpoint +func (r *Endpoint) UnmarshalJSON(b []byte) error { + type Properties Endpoint res := &struct { Type string Properties *Properties @@ -193,7 +195,7 @@ func (r *AWSDMSEndpoint) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDMSEndpoint(*res.Properties) + *r = Endpoint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/dms/aws-dms-endpoint_dynamodbsettings.go b/cloudformation/dms/aws-dms-endpoint_dynamodbsettings.go new file mode 100644 index 0000000000..880c15b451 --- /dev/null +++ b/cloudformation/dms/aws-dms-endpoint_dynamodbsettings.go @@ -0,0 +1,65 @@ +package dms + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Endpoint_DynamoDbSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.DynamoDbSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-dynamodbsettings.html +type Endpoint_DynamoDbSettings struct { + + // ServiceAccessRoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-dynamodbsettings.html#cfn-dms-endpoint-dynamodbsettings-serviceaccessrolearn + ServiceAccessRoleArn string `json:"ServiceAccessRoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Endpoint_DynamoDbSettings) AWSCloudFormationType() string { + return "AWS::DMS::Endpoint.DynamoDbSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Endpoint_DynamoDbSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Endpoint_DynamoDbSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Endpoint_DynamoDbSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Endpoint_DynamoDbSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Endpoint_DynamoDbSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Endpoint_DynamoDbSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-dms-endpoint_elasticsearchsettings.go b/cloudformation/dms/aws-dms-endpoint_elasticsearchsettings.go similarity index 78% rename from cloudformation/resources/aws-dms-endpoint_elasticsearchsettings.go rename to cloudformation/dms/aws-dms-endpoint_elasticsearchsettings.go index 06e9cbc51e..b56d7209b6 100644 --- a/cloudformation/resources/aws-dms-endpoint_elasticsearchsettings.go +++ b/cloudformation/dms/aws-dms-endpoint_elasticsearchsettings.go @@ -1,10 +1,12 @@ -package resources +package dms -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDMSEndpoint_ElasticsearchSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.ElasticsearchSettings) +// Endpoint_ElasticsearchSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.ElasticsearchSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html -type AWSDMSEndpoint_ElasticsearchSettings struct { +type Endpoint_ElasticsearchSettings struct { // EndpointUri AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSDMSEndpoint_ElasticsearchSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSEndpoint_ElasticsearchSettings) AWSCloudFormationType() string { +func (r *Endpoint_ElasticsearchSettings) AWSCloudFormationType() string { return "AWS::DMS::Endpoint.ElasticsearchSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_ElasticsearchSettings) DependsOn() []string { +func (r *Endpoint_ElasticsearchSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_ElasticsearchSettings) SetDependsOn(dependencies []string) { +func (r *Endpoint_ElasticsearchSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_ElasticsearchSettings) Metadata() map[string]interface{} { +func (r *Endpoint_ElasticsearchSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_ElasticsearchSettings) SetMetadata(metadata map[string]interface{}) { +func (r *Endpoint_ElasticsearchSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_ElasticsearchSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *Endpoint_ElasticsearchSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_ElasticsearchSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Endpoint_ElasticsearchSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dms-endpoint_kinesissettings.go b/cloudformation/dms/aws-dms-endpoint_kinesissettings.go similarity index 77% rename from cloudformation/resources/aws-dms-endpoint_kinesissettings.go rename to cloudformation/dms/aws-dms-endpoint_kinesissettings.go index e0e6dc16f1..06146d9828 100644 --- a/cloudformation/resources/aws-dms-endpoint_kinesissettings.go +++ b/cloudformation/dms/aws-dms-endpoint_kinesissettings.go @@ -1,10 +1,12 @@ -package resources +package dms -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDMSEndpoint_KinesisSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.KinesisSettings) +// Endpoint_KinesisSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.KinesisSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html -type AWSDMSEndpoint_KinesisSettings struct { +type Endpoint_KinesisSettings struct { // MessageFormat AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSDMSEndpoint_KinesisSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSEndpoint_KinesisSettings) AWSCloudFormationType() string { +func (r *Endpoint_KinesisSettings) AWSCloudFormationType() string { return "AWS::DMS::Endpoint.KinesisSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_KinesisSettings) DependsOn() []string { +func (r *Endpoint_KinesisSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_KinesisSettings) SetDependsOn(dependencies []string) { +func (r *Endpoint_KinesisSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_KinesisSettings) Metadata() map[string]interface{} { +func (r *Endpoint_KinesisSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_KinesisSettings) SetMetadata(metadata map[string]interface{}) { +func (r *Endpoint_KinesisSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_KinesisSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *Endpoint_KinesisSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_KinesisSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Endpoint_KinesisSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dms-endpoint_mongodbsettings.go b/cloudformation/dms/aws-dms-endpoint_mongodbsettings.go similarity index 86% rename from cloudformation/resources/aws-dms-endpoint_mongodbsettings.go rename to cloudformation/dms/aws-dms-endpoint_mongodbsettings.go index 188c62448b..983223634b 100644 --- a/cloudformation/resources/aws-dms-endpoint_mongodbsettings.go +++ b/cloudformation/dms/aws-dms-endpoint_mongodbsettings.go @@ -1,10 +1,12 @@ -package resources +package dms -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDMSEndpoint_MongoDbSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.MongoDbSettings) +// Endpoint_MongoDbSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.MongoDbSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html -type AWSDMSEndpoint_MongoDbSettings struct { +type Endpoint_MongoDbSettings struct { // AuthMechanism AWS CloudFormation Property // Required: false @@ -72,42 +74,42 @@ type AWSDMSEndpoint_MongoDbSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSEndpoint_MongoDbSettings) AWSCloudFormationType() string { +func (r *Endpoint_MongoDbSettings) AWSCloudFormationType() string { return "AWS::DMS::Endpoint.MongoDbSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_MongoDbSettings) DependsOn() []string { +func (r *Endpoint_MongoDbSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_MongoDbSettings) SetDependsOn(dependencies []string) { +func (r *Endpoint_MongoDbSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_MongoDbSettings) Metadata() map[string]interface{} { +func (r *Endpoint_MongoDbSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_MongoDbSettings) SetMetadata(metadata map[string]interface{}) { +func (r *Endpoint_MongoDbSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_MongoDbSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *Endpoint_MongoDbSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_MongoDbSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Endpoint_MongoDbSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dms-endpoint_s3settings.go b/cloudformation/dms/aws-dms-endpoint_s3settings.go similarity index 83% rename from cloudformation/resources/aws-dms-endpoint_s3settings.go rename to cloudformation/dms/aws-dms-endpoint_s3settings.go index 584f1966c0..e9fe20359d 100644 --- a/cloudformation/resources/aws-dms-endpoint_s3settings.go +++ b/cloudformation/dms/aws-dms-endpoint_s3settings.go @@ -1,10 +1,12 @@ -package resources +package dms -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDMSEndpoint_S3Settings AWS CloudFormation Resource (AWS::DMS::Endpoint.S3Settings) +// Endpoint_S3Settings AWS CloudFormation Resource (AWS::DMS::Endpoint.S3Settings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html -type AWSDMSEndpoint_S3Settings struct { +type Endpoint_S3Settings struct { // BucketFolder AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSDMSEndpoint_S3Settings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSEndpoint_S3Settings) AWSCloudFormationType() string { +func (r *Endpoint_S3Settings) AWSCloudFormationType() string { return "AWS::DMS::Endpoint.S3Settings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_S3Settings) DependsOn() []string { +func (r *Endpoint_S3Settings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_S3Settings) SetDependsOn(dependencies []string) { +func (r *Endpoint_S3Settings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_S3Settings) Metadata() map[string]interface{} { +func (r *Endpoint_S3Settings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_S3Settings) SetMetadata(metadata map[string]interface{}) { +func (r *Endpoint_S3Settings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_S3Settings) DeletionPolicy() policies.DeletionPolicy { +func (r *Endpoint_S3Settings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_S3Settings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Endpoint_S3Settings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dms-eventsubscription.go b/cloudformation/dms/aws-dms-eventsubscription.go similarity index 83% rename from cloudformation/resources/aws-dms-eventsubscription.go rename to cloudformation/dms/aws-dms-eventsubscription.go index f5c1766f1a..f02efdfe97 100644 --- a/cloudformation/resources/aws-dms-eventsubscription.go +++ b/cloudformation/dms/aws-dms-eventsubscription.go @@ -1,15 +1,17 @@ -package resources +package dms import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDMSEventSubscription AWS CloudFormation Resource (AWS::DMS::EventSubscription) +// EventSubscription AWS CloudFormation Resource (AWS::DMS::EventSubscription) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html -type AWSDMSEventSubscription struct { +type EventSubscription struct { // Enabled AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSDMSEventSubscription struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +59,50 @@ type AWSDMSEventSubscription struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSEventSubscription) AWSCloudFormationType() string { +func (r *EventSubscription) AWSCloudFormationType() string { return "AWS::DMS::EventSubscription" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEventSubscription) DependsOn() []string { +func (r *EventSubscription) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEventSubscription) SetDependsOn(dependencies []string) { +func (r *EventSubscription) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEventSubscription) Metadata() map[string]interface{} { +func (r *EventSubscription) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEventSubscription) SetMetadata(metadata map[string]interface{}) { +func (r *EventSubscription) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEventSubscription) DeletionPolicy() policies.DeletionPolicy { +func (r *EventSubscription) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEventSubscription) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EventSubscription) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDMSEventSubscription) MarshalJSON() ([]byte, error) { - type Properties AWSDMSEventSubscription +func (r EventSubscription) MarshalJSON() ([]byte, error) { + type Properties EventSubscription return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +120,8 @@ func (r AWSDMSEventSubscription) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDMSEventSubscription) UnmarshalJSON(b []byte) error { - type Properties AWSDMSEventSubscription +func (r *EventSubscription) UnmarshalJSON(b []byte) error { + type Properties EventSubscription res := &struct { Type string Properties *Properties @@ -138,7 +140,7 @@ func (r *AWSDMSEventSubscription) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDMSEventSubscription(*res.Properties) + *r = EventSubscription(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-dms-replicationinstance.go b/cloudformation/dms/aws-dms-replicationinstance.go similarity index 87% rename from cloudformation/resources/aws-dms-replicationinstance.go rename to cloudformation/dms/aws-dms-replicationinstance.go index 393f5d75b3..f0afd377e4 100644 --- a/cloudformation/resources/aws-dms-replicationinstance.go +++ b/cloudformation/dms/aws-dms-replicationinstance.go @@ -1,15 +1,17 @@ -package resources +package dms import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDMSReplicationInstance AWS CloudFormation Resource (AWS::DMS::ReplicationInstance) +// ReplicationInstance AWS CloudFormation Resource (AWS::DMS::ReplicationInstance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html -type AWSDMSReplicationInstance struct { +type ReplicationInstance struct { // AllocatedStorage AWS CloudFormation Property // Required: false @@ -74,7 +76,7 @@ type AWSDMSReplicationInstance struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcSecurityGroupIds AWS CloudFormation Property // Required: false @@ -92,50 +94,50 @@ type AWSDMSReplicationInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSReplicationInstance) AWSCloudFormationType() string { +func (r *ReplicationInstance) AWSCloudFormationType() string { return "AWS::DMS::ReplicationInstance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSReplicationInstance) DependsOn() []string { +func (r *ReplicationInstance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSReplicationInstance) SetDependsOn(dependencies []string) { +func (r *ReplicationInstance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSReplicationInstance) Metadata() map[string]interface{} { +func (r *ReplicationInstance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSReplicationInstance) SetMetadata(metadata map[string]interface{}) { +func (r *ReplicationInstance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSReplicationInstance) DeletionPolicy() policies.DeletionPolicy { +func (r *ReplicationInstance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSReplicationInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReplicationInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDMSReplicationInstance) MarshalJSON() ([]byte, error) { - type Properties AWSDMSReplicationInstance +func (r ReplicationInstance) MarshalJSON() ([]byte, error) { + type Properties ReplicationInstance return json.Marshal(&struct { Type string Properties Properties @@ -153,8 +155,8 @@ func (r AWSDMSReplicationInstance) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDMSReplicationInstance) UnmarshalJSON(b []byte) error { - type Properties AWSDMSReplicationInstance +func (r *ReplicationInstance) UnmarshalJSON(b []byte) error { + type Properties ReplicationInstance res := &struct { Type string Properties *Properties @@ -173,7 +175,7 @@ func (r *AWSDMSReplicationInstance) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDMSReplicationInstance(*res.Properties) + *r = ReplicationInstance(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-dms-replicationsubnetgroup.go b/cloudformation/dms/aws-dms-replicationsubnetgroup.go similarity index 80% rename from cloudformation/resources/aws-dms-replicationsubnetgroup.go rename to cloudformation/dms/aws-dms-replicationsubnetgroup.go index 1bb177223c..ceb2fcc762 100644 --- a/cloudformation/resources/aws-dms-replicationsubnetgroup.go +++ b/cloudformation/dms/aws-dms-replicationsubnetgroup.go @@ -1,15 +1,17 @@ -package resources +package dms import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDMSReplicationSubnetGroup AWS CloudFormation Resource (AWS::DMS::ReplicationSubnetGroup) +// ReplicationSubnetGroup AWS CloudFormation Resource (AWS::DMS::ReplicationSubnetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html -type AWSDMSReplicationSubnetGroup struct { +type ReplicationSubnetGroup struct { // ReplicationSubnetGroupDescription AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSDMSReplicationSubnetGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSDMSReplicationSubnetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSReplicationSubnetGroup) AWSCloudFormationType() string { +func (r *ReplicationSubnetGroup) AWSCloudFormationType() string { return "AWS::DMS::ReplicationSubnetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSReplicationSubnetGroup) DependsOn() []string { +func (r *ReplicationSubnetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSReplicationSubnetGroup) SetDependsOn(dependencies []string) { +func (r *ReplicationSubnetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSReplicationSubnetGroup) Metadata() map[string]interface{} { +func (r *ReplicationSubnetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSReplicationSubnetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ReplicationSubnetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSReplicationSubnetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ReplicationSubnetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSReplicationSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReplicationSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDMSReplicationSubnetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSDMSReplicationSubnetGroup +func (r ReplicationSubnetGroup) MarshalJSON() ([]byte, error) { + type Properties ReplicationSubnetGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSDMSReplicationSubnetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDMSReplicationSubnetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSDMSReplicationSubnetGroup +func (r *ReplicationSubnetGroup) UnmarshalJSON(b []byte) error { + type Properties ReplicationSubnetGroup res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSDMSReplicationSubnetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDMSReplicationSubnetGroup(*res.Properties) + *r = ReplicationSubnetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-dms-replicationtask.go b/cloudformation/dms/aws-dms-replicationtask.go similarity index 86% rename from cloudformation/resources/aws-dms-replicationtask.go rename to cloudformation/dms/aws-dms-replicationtask.go index 9f3a696c72..67608ca5a8 100644 --- a/cloudformation/resources/aws-dms-replicationtask.go +++ b/cloudformation/dms/aws-dms-replicationtask.go @@ -1,15 +1,17 @@ -package resources +package dms import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDMSReplicationTask AWS CloudFormation Resource (AWS::DMS::ReplicationTask) +// ReplicationTask AWS CloudFormation Resource (AWS::DMS::ReplicationTask) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html -type AWSDMSReplicationTask struct { +type ReplicationTask struct { // CdcStartPosition AWS CloudFormation Property // Required: false @@ -59,7 +61,7 @@ type AWSDMSReplicationTask struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TargetEndpointArn AWS CloudFormation Property // Required: true @@ -77,50 +79,50 @@ type AWSDMSReplicationTask struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSReplicationTask) AWSCloudFormationType() string { +func (r *ReplicationTask) AWSCloudFormationType() string { return "AWS::DMS::ReplicationTask" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSReplicationTask) DependsOn() []string { +func (r *ReplicationTask) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSReplicationTask) SetDependsOn(dependencies []string) { +func (r *ReplicationTask) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSReplicationTask) Metadata() map[string]interface{} { +func (r *ReplicationTask) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSReplicationTask) SetMetadata(metadata map[string]interface{}) { +func (r *ReplicationTask) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSReplicationTask) DeletionPolicy() policies.DeletionPolicy { +func (r *ReplicationTask) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSReplicationTask) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReplicationTask) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDMSReplicationTask) MarshalJSON() ([]byte, error) { - type Properties AWSDMSReplicationTask +func (r ReplicationTask) MarshalJSON() ([]byte, error) { + type Properties ReplicationTask return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +140,8 @@ func (r AWSDMSReplicationTask) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDMSReplicationTask) UnmarshalJSON(b []byte) error { - type Properties AWSDMSReplicationTask +func (r *ReplicationTask) UnmarshalJSON(b []byte) error { + type Properties ReplicationTask res := &struct { Type string Properties *Properties @@ -158,7 +160,7 @@ func (r *AWSDMSReplicationTask) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDMSReplicationTask(*res.Properties) + *r = ReplicationTask(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-docdb-dbcluster.go b/cloudformation/docdb/aws-docdb-dbcluster.go similarity index 90% rename from cloudformation/resources/aws-docdb-dbcluster.go rename to cloudformation/docdb/aws-docdb-dbcluster.go index 93be030c8f..bbed0e06db 100644 --- a/cloudformation/resources/aws-docdb-dbcluster.go +++ b/cloudformation/docdb/aws-docdb-dbcluster.go @@ -1,15 +1,17 @@ -package resources +package docdb import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDocDBDBCluster AWS CloudFormation Resource (AWS::DocDB::DBCluster) +// DBCluster AWS CloudFormation Resource (AWS::DocDB::DBCluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html -type AWSDocDBDBCluster struct { +type DBCluster struct { // AvailabilityZones AWS CloudFormation Property // Required: false @@ -89,7 +91,7 @@ type AWSDocDBDBCluster struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcSecurityGroupIds AWS CloudFormation Property // Required: false @@ -107,50 +109,50 @@ type AWSDocDBDBCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDocDBDBCluster) AWSCloudFormationType() string { +func (r *DBCluster) AWSCloudFormationType() string { return "AWS::DocDB::DBCluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDocDBDBCluster) DependsOn() []string { +func (r *DBCluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDocDBDBCluster) SetDependsOn(dependencies []string) { +func (r *DBCluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDocDBDBCluster) Metadata() map[string]interface{} { +func (r *DBCluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDocDBDBCluster) SetMetadata(metadata map[string]interface{}) { +func (r *DBCluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDocDBDBCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *DBCluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDocDBDBCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDocDBDBCluster) MarshalJSON() ([]byte, error) { - type Properties AWSDocDBDBCluster +func (r DBCluster) MarshalJSON() ([]byte, error) { + type Properties DBCluster return json.Marshal(&struct { Type string Properties Properties @@ -168,8 +170,8 @@ func (r AWSDocDBDBCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDocDBDBCluster) UnmarshalJSON(b []byte) error { - type Properties AWSDocDBDBCluster +func (r *DBCluster) UnmarshalJSON(b []byte) error { + type Properties DBCluster res := &struct { Type string Properties *Properties @@ -188,7 +190,7 @@ func (r *AWSDocDBDBCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDocDBDBCluster(*res.Properties) + *r = DBCluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-docdb-dbclusterparametergroup.go b/cloudformation/docdb/aws-docdb-dbclusterparametergroup.go similarity index 80% rename from cloudformation/resources/aws-docdb-dbclusterparametergroup.go rename to cloudformation/docdb/aws-docdb-dbclusterparametergroup.go index 9ba5125cfb..aca1cc54ca 100644 --- a/cloudformation/resources/aws-docdb-dbclusterparametergroup.go +++ b/cloudformation/docdb/aws-docdb-dbclusterparametergroup.go @@ -1,15 +1,17 @@ -package resources +package docdb import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDocDBDBClusterParameterGroup AWS CloudFormation Resource (AWS::DocDB::DBClusterParameterGroup) +// DBClusterParameterGroup AWS CloudFormation Resource (AWS::DocDB::DBClusterParameterGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html -type AWSDocDBDBClusterParameterGroup struct { +type DBClusterParameterGroup struct { // Description AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSDocDBDBClusterParameterGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSDocDBDBClusterParameterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDocDBDBClusterParameterGroup) AWSCloudFormationType() string { +func (r *DBClusterParameterGroup) AWSCloudFormationType() string { return "AWS::DocDB::DBClusterParameterGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDocDBDBClusterParameterGroup) DependsOn() []string { +func (r *DBClusterParameterGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDocDBDBClusterParameterGroup) SetDependsOn(dependencies []string) { +func (r *DBClusterParameterGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDocDBDBClusterParameterGroup) Metadata() map[string]interface{} { +func (r *DBClusterParameterGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDocDBDBClusterParameterGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBClusterParameterGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDocDBDBClusterParameterGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBClusterParameterGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDocDBDBClusterParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBClusterParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDocDBDBClusterParameterGroup) MarshalJSON() ([]byte, error) { - type Properties AWSDocDBDBClusterParameterGroup +func (r DBClusterParameterGroup) MarshalJSON() ([]byte, error) { + type Properties DBClusterParameterGroup return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSDocDBDBClusterParameterGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDocDBDBClusterParameterGroup) UnmarshalJSON(b []byte) error { - type Properties AWSDocDBDBClusterParameterGroup +func (r *DBClusterParameterGroup) UnmarshalJSON(b []byte) error { + type Properties DBClusterParameterGroup res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSDocDBDBClusterParameterGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDocDBDBClusterParameterGroup(*res.Properties) + *r = DBClusterParameterGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-docdb-dbinstance.go b/cloudformation/docdb/aws-docdb-dbinstance.go similarity index 84% rename from cloudformation/resources/aws-docdb-dbinstance.go rename to cloudformation/docdb/aws-docdb-dbinstance.go index 4daa5965b2..b71d59e454 100644 --- a/cloudformation/resources/aws-docdb-dbinstance.go +++ b/cloudformation/docdb/aws-docdb-dbinstance.go @@ -1,15 +1,17 @@ -package resources +package docdb import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDocDBDBInstance AWS CloudFormation Resource (AWS::DocDB::DBInstance) +// DBInstance AWS CloudFormation Resource (AWS::DocDB::DBInstance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html -type AWSDocDBDBInstance struct { +type DBInstance struct { // AutoMinorVersionUpgrade AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSDocDBDBInstance struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +59,50 @@ type AWSDocDBDBInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDocDBDBInstance) AWSCloudFormationType() string { +func (r *DBInstance) AWSCloudFormationType() string { return "AWS::DocDB::DBInstance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDocDBDBInstance) DependsOn() []string { +func (r *DBInstance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDocDBDBInstance) SetDependsOn(dependencies []string) { +func (r *DBInstance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDocDBDBInstance) Metadata() map[string]interface{} { +func (r *DBInstance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDocDBDBInstance) SetMetadata(metadata map[string]interface{}) { +func (r *DBInstance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDocDBDBInstance) DeletionPolicy() policies.DeletionPolicy { +func (r *DBInstance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDocDBDBInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDocDBDBInstance) MarshalJSON() ([]byte, error) { - type Properties AWSDocDBDBInstance +func (r DBInstance) MarshalJSON() ([]byte, error) { + type Properties DBInstance return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +120,8 @@ func (r AWSDocDBDBInstance) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDocDBDBInstance) UnmarshalJSON(b []byte) error { - type Properties AWSDocDBDBInstance +func (r *DBInstance) UnmarshalJSON(b []byte) error { + type Properties DBInstance res := &struct { Type string Properties *Properties @@ -138,7 +140,7 @@ func (r *AWSDocDBDBInstance) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDocDBDBInstance(*res.Properties) + *r = DBInstance(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-docdb-dbsubnetgroup.go b/cloudformation/docdb/aws-docdb-dbsubnetgroup.go similarity index 81% rename from cloudformation/resources/aws-docdb-dbsubnetgroup.go rename to cloudformation/docdb/aws-docdb-dbsubnetgroup.go index c1a9960291..ccfe0ae514 100644 --- a/cloudformation/resources/aws-docdb-dbsubnetgroup.go +++ b/cloudformation/docdb/aws-docdb-dbsubnetgroup.go @@ -1,15 +1,17 @@ -package resources +package docdb import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDocDBDBSubnetGroup AWS CloudFormation Resource (AWS::DocDB::DBSubnetGroup) +// DBSubnetGroup AWS CloudFormation Resource (AWS::DocDB::DBSubnetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html -type AWSDocDBDBSubnetGroup struct { +type DBSubnetGroup struct { // DBSubnetGroupDescription AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSDocDBDBSubnetGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSDocDBDBSubnetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDocDBDBSubnetGroup) AWSCloudFormationType() string { +func (r *DBSubnetGroup) AWSCloudFormationType() string { return "AWS::DocDB::DBSubnetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDocDBDBSubnetGroup) DependsOn() []string { +func (r *DBSubnetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDocDBDBSubnetGroup) SetDependsOn(dependencies []string) { +func (r *DBSubnetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDocDBDBSubnetGroup) Metadata() map[string]interface{} { +func (r *DBSubnetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDocDBDBSubnetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBSubnetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDocDBDBSubnetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBSubnetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDocDBDBSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDocDBDBSubnetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSDocDBDBSubnetGroup +func (r DBSubnetGroup) MarshalJSON() ([]byte, error) { + type Properties DBSubnetGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSDocDBDBSubnetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDocDBDBSubnetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSDocDBDBSubnetGroup +func (r *DBSubnetGroup) UnmarshalJSON(b []byte) error { + type Properties DBSubnetGroup res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSDocDBDBSubnetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDocDBDBSubnetGroup(*res.Properties) + *r = DBSubnetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-dynamodb-table.go b/cloudformation/dynamodb/aws-dynamodb-table.go similarity index 76% rename from cloudformation/resources/aws-dynamodb-table.go rename to cloudformation/dynamodb/aws-dynamodb-table.go index 97b9708ac8..63240887e0 100644 --- a/cloudformation/resources/aws-dynamodb-table.go +++ b/cloudformation/dynamodb/aws-dynamodb-table.go @@ -1,20 +1,22 @@ -package resources +package dynamodb import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSDynamoDBTable AWS CloudFormation Resource (AWS::DynamoDB::Table) +// Table AWS CloudFormation Resource (AWS::DynamoDB::Table) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html -type AWSDynamoDBTable struct { +type Table struct { // AttributeDefinitions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-attributedef - AttributeDefinitions []AWSDynamoDBTable_AttributeDefinition `json:"AttributeDefinitions,omitempty"` + AttributeDefinitions []Table_AttributeDefinition `json:"AttributeDefinitions,omitempty"` // BillingMode AWS CloudFormation Property // Required: false @@ -24,37 +26,37 @@ type AWSDynamoDBTable struct { // GlobalSecondaryIndexes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-gsi - GlobalSecondaryIndexes []AWSDynamoDBTable_GlobalSecondaryIndex `json:"GlobalSecondaryIndexes,omitempty"` + GlobalSecondaryIndexes []Table_GlobalSecondaryIndex `json:"GlobalSecondaryIndexes,omitempty"` // KeySchema AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-keyschema - KeySchema []AWSDynamoDBTable_KeySchema `json:"KeySchema,omitempty"` + KeySchema []Table_KeySchema `json:"KeySchema,omitempty"` // LocalSecondaryIndexes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-lsi - LocalSecondaryIndexes []AWSDynamoDBTable_LocalSecondaryIndex `json:"LocalSecondaryIndexes,omitempty"` + LocalSecondaryIndexes []Table_LocalSecondaryIndex `json:"LocalSecondaryIndexes,omitempty"` // PointInTimeRecoverySpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-pointintimerecoveryspecification - PointInTimeRecoverySpecification *AWSDynamoDBTable_PointInTimeRecoverySpecification `json:"PointInTimeRecoverySpecification,omitempty"` + PointInTimeRecoverySpecification *Table_PointInTimeRecoverySpecification `json:"PointInTimeRecoverySpecification,omitempty"` // ProvisionedThroughput AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-provisionedthroughput - ProvisionedThroughput *AWSDynamoDBTable_ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"` + ProvisionedThroughput *Table_ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"` // SSESpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-ssespecification - SSESpecification *AWSDynamoDBTable_SSESpecification `json:"SSESpecification,omitempty"` + SSESpecification *Table_SSESpecification `json:"SSESpecification,omitempty"` // StreamSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-streamspecification - StreamSpecification *AWSDynamoDBTable_StreamSpecification `json:"StreamSpecification,omitempty"` + StreamSpecification *Table_StreamSpecification `json:"StreamSpecification,omitempty"` // TableName AWS CloudFormation Property // Required: false @@ -64,12 +66,12 @@ type AWSDynamoDBTable struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TimeToLiveSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-timetolivespecification - TimeToLiveSpecification *AWSDynamoDBTable_TimeToLiveSpecification `json:"TimeToLiveSpecification,omitempty"` + TimeToLiveSpecification *Table_TimeToLiveSpecification `json:"TimeToLiveSpecification,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -82,50 +84,50 @@ type AWSDynamoDBTable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable) AWSCloudFormationType() string { +func (r *Table) AWSCloudFormationType() string { return "AWS::DynamoDB::Table" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable) DependsOn() []string { +func (r *Table) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable) SetDependsOn(dependencies []string) { +func (r *Table) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable) Metadata() map[string]interface{} { +func (r *Table) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable) SetMetadata(metadata map[string]interface{}) { +func (r *Table) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable) DeletionPolicy() policies.DeletionPolicy { +func (r *Table) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSDynamoDBTable) MarshalJSON() ([]byte, error) { - type Properties AWSDynamoDBTable +func (r Table) MarshalJSON() ([]byte, error) { + type Properties Table return json.Marshal(&struct { Type string Properties Properties @@ -143,8 +145,8 @@ func (r AWSDynamoDBTable) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSDynamoDBTable) UnmarshalJSON(b []byte) error { - type Properties AWSDynamoDBTable +func (r *Table) UnmarshalJSON(b []byte) error { + type Properties Table res := &struct { Type string Properties *Properties @@ -163,7 +165,7 @@ func (r *AWSDynamoDBTable) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSDynamoDBTable(*res.Properties) + *r = Table(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/dynamodb/aws-dynamodb-table_attributedefinition.go b/cloudformation/dynamodb/aws-dynamodb-table_attributedefinition.go new file mode 100644 index 0000000000..d58fdddc6b --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_attributedefinition.go @@ -0,0 +1,70 @@ +package dynamodb + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Table_AttributeDefinition AWS CloudFormation Resource (AWS::DynamoDB::Table.AttributeDefinition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html +type Table_AttributeDefinition struct { + + // AttributeName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename + AttributeName string `json:"AttributeName,omitempty"` + + // AttributeType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename-attributetype + AttributeType string `json:"AttributeType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Table_AttributeDefinition) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.AttributeDefinition" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_AttributeDefinition) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_AttributeDefinition) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_AttributeDefinition) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_AttributeDefinition) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_AttributeDefinition) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_AttributeDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go b/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go new file mode 100644 index 0000000000..3de88242d7 --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go @@ -0,0 +1,80 @@ +package dynamodb + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Table_GlobalSecondaryIndex AWS CloudFormation Resource (AWS::DynamoDB::Table.GlobalSecondaryIndex) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html +type Table_GlobalSecondaryIndex struct { + + // IndexName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-indexname + IndexName string `json:"IndexName,omitempty"` + + // KeySchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-keyschema + KeySchema []Table_KeySchema `json:"KeySchema,omitempty"` + + // Projection AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-projection + Projection *Table_Projection `json:"Projection,omitempty"` + + // ProvisionedThroughput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-provisionedthroughput + ProvisionedThroughput *Table_ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Table_GlobalSecondaryIndex) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.GlobalSecondaryIndex" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_GlobalSecondaryIndex) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_GlobalSecondaryIndex) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_GlobalSecondaryIndex) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_GlobalSecondaryIndex) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_GlobalSecondaryIndex) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_GlobalSecondaryIndex) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-dynamodb-table_keyschema.go b/cloudformation/dynamodb/aws-dynamodb-table_keyschema.go similarity index 75% rename from cloudformation/resources/aws-dynamodb-table_keyschema.go rename to cloudformation/dynamodb/aws-dynamodb-table_keyschema.go index 47bb0bf316..644db22b72 100644 --- a/cloudformation/resources/aws-dynamodb-table_keyschema.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_keyschema.go @@ -1,10 +1,12 @@ -package resources +package dynamodb -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDynamoDBTable_KeySchema AWS CloudFormation Resource (AWS::DynamoDB::Table.KeySchema) +// Table_KeySchema AWS CloudFormation Resource (AWS::DynamoDB::Table.KeySchema) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html -type AWSDynamoDBTable_KeySchema struct { +type Table_KeySchema struct { // AttributeName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDynamoDBTable_KeySchema struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_KeySchema) AWSCloudFormationType() string { +func (r *Table_KeySchema) AWSCloudFormationType() string { return "AWS::DynamoDB::Table.KeySchema" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_KeySchema) DependsOn() []string { +func (r *Table_KeySchema) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_KeySchema) SetDependsOn(dependencies []string) { +func (r *Table_KeySchema) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_KeySchema) Metadata() map[string]interface{} { +func (r *Table_KeySchema) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_KeySchema) SetMetadata(metadata map[string]interface{}) { +func (r *Table_KeySchema) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_KeySchema) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_KeySchema) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_KeySchema) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_KeySchema) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/dynamodb/aws-dynamodb-table_localsecondaryindex.go b/cloudformation/dynamodb/aws-dynamodb-table_localsecondaryindex.go new file mode 100644 index 0000000000..37da416c7a --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_localsecondaryindex.go @@ -0,0 +1,75 @@ +package dynamodb + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Table_LocalSecondaryIndex AWS CloudFormation Resource (AWS::DynamoDB::Table.LocalSecondaryIndex) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html +type Table_LocalSecondaryIndex struct { + + // IndexName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-indexname + IndexName string `json:"IndexName,omitempty"` + + // KeySchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-keyschema + KeySchema []Table_KeySchema `json:"KeySchema,omitempty"` + + // Projection AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-projection + Projection *Table_Projection `json:"Projection,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Table_LocalSecondaryIndex) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.LocalSecondaryIndex" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_LocalSecondaryIndex) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_LocalSecondaryIndex) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_LocalSecondaryIndex) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_LocalSecondaryIndex) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_LocalSecondaryIndex) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_LocalSecondaryIndex) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/dynamodb/aws-dynamodb-table_pointintimerecoveryspecification.go b/cloudformation/dynamodb/aws-dynamodb-table_pointintimerecoveryspecification.go new file mode 100644 index 0000000000..b77a68f364 --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_pointintimerecoveryspecification.go @@ -0,0 +1,65 @@ +package dynamodb + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Table_PointInTimeRecoverySpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.PointInTimeRecoverySpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html +type Table_PointInTimeRecoverySpecification struct { + + // PointInTimeRecoveryEnabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html#cfn-dynamodb-table-pointintimerecoveryspecification-pointintimerecoveryenabled + PointInTimeRecoveryEnabled bool `json:"PointInTimeRecoveryEnabled,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Table_PointInTimeRecoverySpecification) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.PointInTimeRecoverySpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_PointInTimeRecoverySpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_PointInTimeRecoverySpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_PointInTimeRecoverySpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_PointInTimeRecoverySpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_PointInTimeRecoverySpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_PointInTimeRecoverySpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-dynamodb-table_projection.go b/cloudformation/dynamodb/aws-dynamodb-table_projection.go similarity index 75% rename from cloudformation/resources/aws-dynamodb-table_projection.go rename to cloudformation/dynamodb/aws-dynamodb-table_projection.go index d4b18959de..2be86da25d 100644 --- a/cloudformation/resources/aws-dynamodb-table_projection.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_projection.go @@ -1,10 +1,12 @@ -package resources +package dynamodb -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDynamoDBTable_Projection AWS CloudFormation Resource (AWS::DynamoDB::Table.Projection) +// Table_Projection AWS CloudFormation Resource (AWS::DynamoDB::Table.Projection) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html -type AWSDynamoDBTable_Projection struct { +type Table_Projection struct { // NonKeyAttributes AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSDynamoDBTable_Projection struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_Projection) AWSCloudFormationType() string { +func (r *Table_Projection) AWSCloudFormationType() string { return "AWS::DynamoDB::Table.Projection" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_Projection) DependsOn() []string { +func (r *Table_Projection) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_Projection) SetDependsOn(dependencies []string) { +func (r *Table_Projection) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_Projection) Metadata() map[string]interface{} { +func (r *Table_Projection) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_Projection) SetMetadata(metadata map[string]interface{}) { +func (r *Table_Projection) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_Projection) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_Projection) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_Projection) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_Projection) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/dynamodb/aws-dynamodb-table_provisionedthroughput.go b/cloudformation/dynamodb/aws-dynamodb-table_provisionedthroughput.go new file mode 100644 index 0000000000..098b4b9733 --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_provisionedthroughput.go @@ -0,0 +1,70 @@ +package dynamodb + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Table_ProvisionedThroughput AWS CloudFormation Resource (AWS::DynamoDB::Table.ProvisionedThroughput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html +type Table_ProvisionedThroughput struct { + + // ReadCapacityUnits AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-readcapacityunits + ReadCapacityUnits int64 `json:"ReadCapacityUnits"` + + // WriteCapacityUnits AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-writecapacityunits + WriteCapacityUnits int64 `json:"WriteCapacityUnits"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Table_ProvisionedThroughput) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.ProvisionedThroughput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_ProvisionedThroughput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_ProvisionedThroughput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_ProvisionedThroughput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_ProvisionedThroughput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_ProvisionedThroughput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_ProvisionedThroughput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-dynamodb-table_ssespecification.go b/cloudformation/dynamodb/aws-dynamodb-table_ssespecification.go similarity index 76% rename from cloudformation/resources/aws-dynamodb-table_ssespecification.go rename to cloudformation/dynamodb/aws-dynamodb-table_ssespecification.go index a217f178c7..84c92c7492 100644 --- a/cloudformation/resources/aws-dynamodb-table_ssespecification.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_ssespecification.go @@ -1,10 +1,12 @@ -package resources +package dynamodb -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDynamoDBTable_SSESpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.SSESpecification) +// Table_SSESpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.SSESpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html -type AWSDynamoDBTable_SSESpecification struct { +type Table_SSESpecification struct { // KMSMasterKeyId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSDynamoDBTable_SSESpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_SSESpecification) AWSCloudFormationType() string { +func (r *Table_SSESpecification) AWSCloudFormationType() string { return "AWS::DynamoDB::Table.SSESpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_SSESpecification) DependsOn() []string { +func (r *Table_SSESpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_SSESpecification) SetDependsOn(dependencies []string) { +func (r *Table_SSESpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_SSESpecification) Metadata() map[string]interface{} { +func (r *Table_SSESpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_SSESpecification) SetMetadata(metadata map[string]interface{}) { +func (r *Table_SSESpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_SSESpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_SSESpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/dynamodb/aws-dynamodb-table_streamspecification.go b/cloudformation/dynamodb/aws-dynamodb-table_streamspecification.go new file mode 100644 index 0000000000..07737aee91 --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_streamspecification.go @@ -0,0 +1,65 @@ +package dynamodb + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Table_StreamSpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.StreamSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html +type Table_StreamSpecification struct { + + // StreamViewType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html#cfn-dynamodb-streamspecification-streamviewtype + StreamViewType string `json:"StreamViewType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Table_StreamSpecification) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.StreamSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_StreamSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_StreamSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_StreamSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_StreamSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_StreamSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_StreamSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/dynamodb/aws-dynamodb-table_timetolivespecification.go b/cloudformation/dynamodb/aws-dynamodb-table_timetolivespecification.go new file mode 100644 index 0000000000..14ef1853ea --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_timetolivespecification.go @@ -0,0 +1,70 @@ +package dynamodb + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Table_TimeToLiveSpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.TimeToLiveSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html +type Table_TimeToLiveSpecification struct { + + // AttributeName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-attributename + AttributeName string `json:"AttributeName,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-enabled + Enabled bool `json:"Enabled"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Table_TimeToLiveSpecification) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.TimeToLiveSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_TimeToLiveSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Table_TimeToLiveSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_TimeToLiveSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Table_TimeToLiveSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_TimeToLiveSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Table_TimeToLiveSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-capacityreservation.go b/cloudformation/ec2/aws-ec2-capacityreservation.go similarity index 85% rename from cloudformation/resources/aws-ec2-capacityreservation.go rename to cloudformation/ec2/aws-ec2-capacityreservation.go index cb229dee2b..e36548697b 100644 --- a/cloudformation/resources/aws-ec2-capacityreservation.go +++ b/cloudformation/ec2/aws-ec2-capacityreservation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2CapacityReservation AWS CloudFormation Resource (AWS::EC2::CapacityReservation) +// CapacityReservation AWS CloudFormation Resource (AWS::EC2::CapacityReservation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html -type AWSEC2CapacityReservation struct { +type CapacityReservation struct { // AvailabilityZone AWS CloudFormation Property // Required: true @@ -59,7 +60,7 @@ type AWSEC2CapacityReservation struct { // TagSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-tagspecifications - TagSpecifications []AWSEC2CapacityReservation_TagSpecification `json:"TagSpecifications,omitempty"` + TagSpecifications []CapacityReservation_TagSpecification `json:"TagSpecifications,omitempty"` // Tenancy AWS CloudFormation Property // Required: false @@ -77,50 +78,50 @@ type AWSEC2CapacityReservation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2CapacityReservation) AWSCloudFormationType() string { +func (r *CapacityReservation) AWSCloudFormationType() string { return "AWS::EC2::CapacityReservation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2CapacityReservation) DependsOn() []string { +func (r *CapacityReservation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2CapacityReservation) SetDependsOn(dependencies []string) { +func (r *CapacityReservation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2CapacityReservation) Metadata() map[string]interface{} { +func (r *CapacityReservation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2CapacityReservation) SetMetadata(metadata map[string]interface{}) { +func (r *CapacityReservation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2CapacityReservation) DeletionPolicy() policies.DeletionPolicy { +func (r *CapacityReservation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2CapacityReservation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CapacityReservation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2CapacityReservation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2CapacityReservation +func (r CapacityReservation) MarshalJSON() ([]byte, error) { + type Properties CapacityReservation return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +139,8 @@ func (r AWSEC2CapacityReservation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2CapacityReservation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2CapacityReservation +func (r *CapacityReservation) UnmarshalJSON(b []byte) error { + type Properties CapacityReservation res := &struct { Type string Properties *Properties @@ -158,7 +159,7 @@ func (r *AWSEC2CapacityReservation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2CapacityReservation(*res.Properties) + *r = CapacityReservation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ec2/aws-ec2-capacityreservation_tagspecification.go b/cloudformation/ec2/aws-ec2-capacityreservation_tagspecification.go new file mode 100644 index 0000000000..2c1c1e4265 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-capacityreservation_tagspecification.go @@ -0,0 +1,71 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) + +// CapacityReservation_TagSpecification AWS CloudFormation Resource (AWS::EC2::CapacityReservation.TagSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html +type CapacityReservation_TagSpecification struct { + + // ResourceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html#cfn-ec2-capacityreservation-tagspecification-resourcetype + ResourceType string `json:"ResourceType,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html#cfn-ec2-capacityreservation-tagspecification-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *CapacityReservation_TagSpecification) AWSCloudFormationType() string { + return "AWS::EC2::CapacityReservation.TagSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CapacityReservation_TagSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CapacityReservation_TagSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CapacityReservation_TagSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CapacityReservation_TagSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CapacityReservation_TagSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CapacityReservation_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-clientvpnauthorizationrule.go b/cloudformation/ec2/aws-ec2-clientvpnauthorizationrule.go similarity index 81% rename from cloudformation/resources/aws-ec2-clientvpnauthorizationrule.go rename to cloudformation/ec2/aws-ec2-clientvpnauthorizationrule.go index c7760f194d..7f4f73c1b2 100644 --- a/cloudformation/resources/aws-ec2-clientvpnauthorizationrule.go +++ b/cloudformation/ec2/aws-ec2-clientvpnauthorizationrule.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2ClientVpnAuthorizationRule AWS CloudFormation Resource (AWS::EC2::ClientVpnAuthorizationRule) +// ClientVpnAuthorizationRule AWS CloudFormation Resource (AWS::EC2::ClientVpnAuthorizationRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html -type AWSEC2ClientVpnAuthorizationRule struct { +type ClientVpnAuthorizationRule struct { // AccessGroupId AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSEC2ClientVpnAuthorizationRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnAuthorizationRule) AWSCloudFormationType() string { +func (r *ClientVpnAuthorizationRule) AWSCloudFormationType() string { return "AWS::EC2::ClientVpnAuthorizationRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnAuthorizationRule) DependsOn() []string { +func (r *ClientVpnAuthorizationRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnAuthorizationRule) SetDependsOn(dependencies []string) { +func (r *ClientVpnAuthorizationRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnAuthorizationRule) Metadata() map[string]interface{} { +func (r *ClientVpnAuthorizationRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnAuthorizationRule) SetMetadata(metadata map[string]interface{}) { +func (r *ClientVpnAuthorizationRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnAuthorizationRule) DeletionPolicy() policies.DeletionPolicy { +func (r *ClientVpnAuthorizationRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnAuthorizationRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientVpnAuthorizationRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2ClientVpnAuthorizationRule) MarshalJSON() ([]byte, error) { - type Properties AWSEC2ClientVpnAuthorizationRule +func (r ClientVpnAuthorizationRule) MarshalJSON() ([]byte, error) { + type Properties ClientVpnAuthorizationRule return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSEC2ClientVpnAuthorizationRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2ClientVpnAuthorizationRule) UnmarshalJSON(b []byte) error { - type Properties AWSEC2ClientVpnAuthorizationRule +func (r *ClientVpnAuthorizationRule) UnmarshalJSON(b []byte) error { + type Properties ClientVpnAuthorizationRule res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSEC2ClientVpnAuthorizationRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2ClientVpnAuthorizationRule(*res.Properties) + *r = ClientVpnAuthorizationRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint.go similarity index 81% rename from cloudformation/resources/aws-ec2-clientvpnendpoint.go rename to cloudformation/ec2/aws-ec2-clientvpnendpoint.go index 5896513d00..eea3a8876f 100644 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint.go +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint.go @@ -1,20 +1,21 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2ClientVpnEndpoint AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint) +// ClientVpnEndpoint AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html -type AWSEC2ClientVpnEndpoint struct { +type ClientVpnEndpoint struct { // AuthenticationOptions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-authenticationoptions - AuthenticationOptions []AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest `json:"AuthenticationOptions,omitempty"` + AuthenticationOptions []ClientVpnEndpoint_ClientAuthenticationRequest `json:"AuthenticationOptions,omitempty"` // ClientCidrBlock AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSEC2ClientVpnEndpoint struct { // ConnectionLogOptions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-connectionlogoptions - ConnectionLogOptions *AWSEC2ClientVpnEndpoint_ConnectionLogOptions `json:"ConnectionLogOptions,omitempty"` + ConnectionLogOptions *ClientVpnEndpoint_ConnectionLogOptions `json:"ConnectionLogOptions,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -49,7 +50,7 @@ type AWSEC2ClientVpnEndpoint struct { // TagSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-tagspecifications - TagSpecifications []AWSEC2ClientVpnEndpoint_TagSpecification `json:"TagSpecifications,omitempty"` + TagSpecifications []ClientVpnEndpoint_TagSpecification `json:"TagSpecifications,omitempty"` // TransportProtocol AWS CloudFormation Property // Required: false @@ -67,50 +68,50 @@ type AWSEC2ClientVpnEndpoint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint) AWSCloudFormationType() string { +func (r *ClientVpnEndpoint) AWSCloudFormationType() string { return "AWS::EC2::ClientVpnEndpoint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint) DependsOn() []string { +func (r *ClientVpnEndpoint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint) SetDependsOn(dependencies []string) { +func (r *ClientVpnEndpoint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint) Metadata() map[string]interface{} { +func (r *ClientVpnEndpoint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint) SetMetadata(metadata map[string]interface{}) { +func (r *ClientVpnEndpoint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint) DeletionPolicy() policies.DeletionPolicy { +func (r *ClientVpnEndpoint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientVpnEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2ClientVpnEndpoint) MarshalJSON() ([]byte, error) { - type Properties AWSEC2ClientVpnEndpoint +func (r ClientVpnEndpoint) MarshalJSON() ([]byte, error) { + type Properties ClientVpnEndpoint return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSEC2ClientVpnEndpoint) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2ClientVpnEndpoint) UnmarshalJSON(b []byte) error { - type Properties AWSEC2ClientVpnEndpoint +func (r *ClientVpnEndpoint) UnmarshalJSON(b []byte) error { + type Properties ClientVpnEndpoint res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSEC2ClientVpnEndpoint) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2ClientVpnEndpoint(*res.Properties) + *r = ClientVpnEndpoint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ec2/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go new file mode 100644 index 0000000000..0545634095 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ClientVpnEndpoint_CertificateAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.CertificateAuthenticationRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-certificateauthenticationrequest.html +type ClientVpnEndpoint_CertificateAuthenticationRequest struct { + + // ClientRootCertificateChainArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-certificateauthenticationrequest.html#cfn-ec2-clientvpnendpoint-certificateauthenticationrequest-clientrootcertificatechainarn + ClientRootCertificateChainArn string `json:"ClientRootCertificateChainArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ClientVpnEndpoint_CertificateAuthenticationRequest) AWSCloudFormationType() string { + return "AWS::EC2::ClientVpnEndpoint.CertificateAuthenticationRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_CertificateAuthenticationRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_CertificateAuthenticationRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_CertificateAuthenticationRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_CertificateAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_CertificateAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_CertificateAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go new file mode 100644 index 0000000000..58d54d9bf7 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go @@ -0,0 +1,75 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ClientVpnEndpoint_ClientAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.ClientAuthenticationRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html +type ClientVpnEndpoint_ClientAuthenticationRequest struct { + + // ActiveDirectory AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-activedirectory + ActiveDirectory *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest `json:"ActiveDirectory,omitempty"` + + // MutualAuthentication AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-mutualauthentication + MutualAuthentication *ClientVpnEndpoint_CertificateAuthenticationRequest `json:"MutualAuthentication,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ClientVpnEndpoint_ClientAuthenticationRequest) AWSCloudFormationType() string { + return "AWS::EC2::ClientVpnEndpoint.ClientAuthenticationRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_ClientAuthenticationRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_ClientAuthenticationRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_ClientAuthenticationRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_ClientAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_ClientAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_ClientAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-clientvpnendpoint_connectionlogoptions.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_connectionlogoptions.go new file mode 100644 index 0000000000..44473a33a6 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_connectionlogoptions.go @@ -0,0 +1,75 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ClientVpnEndpoint_ConnectionLogOptions AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.ConnectionLogOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html +type ClientVpnEndpoint_ConnectionLogOptions struct { + + // CloudwatchLogGroup AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-cloudwatchloggroup + CloudwatchLogGroup string `json:"CloudwatchLogGroup,omitempty"` + + // CloudwatchLogStream AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-cloudwatchlogstream + CloudwatchLogStream string `json:"CloudwatchLogStream,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-enabled + Enabled bool `json:"Enabled"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ClientVpnEndpoint_ConnectionLogOptions) AWSCloudFormationType() string { + return "AWS::EC2::ClientVpnEndpoint.ConnectionLogOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_ConnectionLogOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_ConnectionLogOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_ConnectionLogOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_ConnectionLogOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_ConnectionLogOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_ConnectionLogOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go new file mode 100644 index 0000000000..cc8de3f4bd --- /dev/null +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ClientVpnEndpoint_DirectoryServiceAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.DirectoryServiceAuthenticationRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-directoryserviceauthenticationrequest.html +type ClientVpnEndpoint_DirectoryServiceAuthenticationRequest struct { + + // DirectoryId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-directoryserviceauthenticationrequest.html#cfn-ec2-clientvpnendpoint-directoryserviceauthenticationrequest-directoryid + DirectoryId string `json:"DirectoryId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) AWSCloudFormationType() string { + return "AWS::EC2::ClientVpnEndpoint.DirectoryServiceAuthenticationRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-clientvpnendpoint_tagspecification.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_tagspecification.go new file mode 100644 index 0000000000..43634d2143 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_tagspecification.go @@ -0,0 +1,71 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) + +// ClientVpnEndpoint_TagSpecification AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.TagSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html +type ClientVpnEndpoint_TagSpecification struct { + + // ResourceType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html#cfn-ec2-clientvpnendpoint-tagspecification-resourcetype + ResourceType string `json:"ResourceType,omitempty"` + + // Tags AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html#cfn-ec2-clientvpnendpoint-tagspecification-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ClientVpnEndpoint_TagSpecification) AWSCloudFormationType() string { + return "AWS::EC2::ClientVpnEndpoint.TagSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_TagSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClientVpnEndpoint_TagSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_TagSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClientVpnEndpoint_TagSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_TagSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClientVpnEndpoint_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-clientvpnroute.go b/cloudformation/ec2/aws-ec2-clientvpnroute.go similarity index 82% rename from cloudformation/resources/aws-ec2-clientvpnroute.go rename to cloudformation/ec2/aws-ec2-clientvpnroute.go index fe932fe2e9..0ed454dc76 100644 --- a/cloudformation/resources/aws-ec2-clientvpnroute.go +++ b/cloudformation/ec2/aws-ec2-clientvpnroute.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2ClientVpnRoute AWS CloudFormation Resource (AWS::EC2::ClientVpnRoute) +// ClientVpnRoute AWS CloudFormation Resource (AWS::EC2::ClientVpnRoute) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html -type AWSEC2ClientVpnRoute struct { +type ClientVpnRoute struct { // ClientVpnEndpointId AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSEC2ClientVpnRoute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnRoute) AWSCloudFormationType() string { +func (r *ClientVpnRoute) AWSCloudFormationType() string { return "AWS::EC2::ClientVpnRoute" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnRoute) DependsOn() []string { +func (r *ClientVpnRoute) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnRoute) SetDependsOn(dependencies []string) { +func (r *ClientVpnRoute) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnRoute) Metadata() map[string]interface{} { +func (r *ClientVpnRoute) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnRoute) SetMetadata(metadata map[string]interface{}) { +func (r *ClientVpnRoute) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnRoute) DeletionPolicy() policies.DeletionPolicy { +func (r *ClientVpnRoute) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientVpnRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2ClientVpnRoute) MarshalJSON() ([]byte, error) { - type Properties AWSEC2ClientVpnRoute +func (r ClientVpnRoute) MarshalJSON() ([]byte, error) { + type Properties ClientVpnRoute return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSEC2ClientVpnRoute) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2ClientVpnRoute) UnmarshalJSON(b []byte) error { - type Properties AWSEC2ClientVpnRoute +func (r *ClientVpnRoute) UnmarshalJSON(b []byte) error { + type Properties ClientVpnRoute res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSEC2ClientVpnRoute) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2ClientVpnRoute(*res.Properties) + *r = ClientVpnRoute(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-clientvpntargetnetworkassociation.go b/cloudformation/ec2/aws-ec2-clientvpntargetnetworkassociation.go similarity index 76% rename from cloudformation/resources/aws-ec2-clientvpntargetnetworkassociation.go rename to cloudformation/ec2/aws-ec2-clientvpntargetnetworkassociation.go index 29f9714d06..d954101876 100644 --- a/cloudformation/resources/aws-ec2-clientvpntargetnetworkassociation.go +++ b/cloudformation/ec2/aws-ec2-clientvpntargetnetworkassociation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2ClientVpnTargetNetworkAssociation AWS CloudFormation Resource (AWS::EC2::ClientVpnTargetNetworkAssociation) +// ClientVpnTargetNetworkAssociation AWS CloudFormation Resource (AWS::EC2::ClientVpnTargetNetworkAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html -type AWSEC2ClientVpnTargetNetworkAssociation struct { +type ClientVpnTargetNetworkAssociation struct { // ClientVpnEndpointId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2ClientVpnTargetNetworkAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnTargetNetworkAssociation) AWSCloudFormationType() string { +func (r *ClientVpnTargetNetworkAssociation) AWSCloudFormationType() string { return "AWS::EC2::ClientVpnTargetNetworkAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnTargetNetworkAssociation) DependsOn() []string { +func (r *ClientVpnTargetNetworkAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnTargetNetworkAssociation) SetDependsOn(dependencies []string) { +func (r *ClientVpnTargetNetworkAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnTargetNetworkAssociation) Metadata() map[string]interface{} { +func (r *ClientVpnTargetNetworkAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnTargetNetworkAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *ClientVpnTargetNetworkAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnTargetNetworkAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *ClientVpnTargetNetworkAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnTargetNetworkAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientVpnTargetNetworkAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2ClientVpnTargetNetworkAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2ClientVpnTargetNetworkAssociation +func (r ClientVpnTargetNetworkAssociation) MarshalJSON() ([]byte, error) { + type Properties ClientVpnTargetNetworkAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2ClientVpnTargetNetworkAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2ClientVpnTargetNetworkAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2ClientVpnTargetNetworkAssociation +func (r *ClientVpnTargetNetworkAssociation) UnmarshalJSON(b []byte) error { + type Properties ClientVpnTargetNetworkAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2ClientVpnTargetNetworkAssociation) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2ClientVpnTargetNetworkAssociation(*res.Properties) + *r = ClientVpnTargetNetworkAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-customergateway.go b/cloudformation/ec2/aws-ec2-customergateway.go similarity index 81% rename from cloudformation/resources/aws-ec2-customergateway.go rename to cloudformation/ec2/aws-ec2-customergateway.go index 80122d0d3e..8011a50e24 100644 --- a/cloudformation/resources/aws-ec2-customergateway.go +++ b/cloudformation/ec2/aws-ec2-customergateway.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2CustomerGateway AWS CloudFormation Resource (AWS::EC2::CustomerGateway) +// CustomerGateway AWS CloudFormation Resource (AWS::EC2::CustomerGateway) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html -type AWSEC2CustomerGateway struct { +type CustomerGateway struct { // BgpAsn AWS CloudFormation Property // Required: true @@ -24,7 +26,7 @@ type AWSEC2CustomerGateway struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -42,50 +44,50 @@ type AWSEC2CustomerGateway struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2CustomerGateway) AWSCloudFormationType() string { +func (r *CustomerGateway) AWSCloudFormationType() string { return "AWS::EC2::CustomerGateway" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2CustomerGateway) DependsOn() []string { +func (r *CustomerGateway) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2CustomerGateway) SetDependsOn(dependencies []string) { +func (r *CustomerGateway) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2CustomerGateway) Metadata() map[string]interface{} { +func (r *CustomerGateway) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2CustomerGateway) SetMetadata(metadata map[string]interface{}) { +func (r *CustomerGateway) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2CustomerGateway) DeletionPolicy() policies.DeletionPolicy { +func (r *CustomerGateway) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2CustomerGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CustomerGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2CustomerGateway) MarshalJSON() ([]byte, error) { - type Properties AWSEC2CustomerGateway +func (r CustomerGateway) MarshalJSON() ([]byte, error) { + type Properties CustomerGateway return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSEC2CustomerGateway) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2CustomerGateway) UnmarshalJSON(b []byte) error { - type Properties AWSEC2CustomerGateway +func (r *CustomerGateway) UnmarshalJSON(b []byte) error { + type Properties CustomerGateway res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSEC2CustomerGateway) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2CustomerGateway(*res.Properties) + *r = CustomerGateway(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-dhcpoptions.go b/cloudformation/ec2/aws-ec2-dhcpoptions.go similarity index 83% rename from cloudformation/resources/aws-ec2-dhcpoptions.go rename to cloudformation/ec2/aws-ec2-dhcpoptions.go index 15308dab09..eeb8cade21 100644 --- a/cloudformation/resources/aws-ec2-dhcpoptions.go +++ b/cloudformation/ec2/aws-ec2-dhcpoptions.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2DHCPOptions AWS CloudFormation Resource (AWS::EC2::DHCPOptions) +// DHCPOptions AWS CloudFormation Resource (AWS::EC2::DHCPOptions) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html -type AWSEC2DHCPOptions struct { +type DHCPOptions struct { // DomainName AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSEC2DHCPOptions struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +54,50 @@ type AWSEC2DHCPOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2DHCPOptions) AWSCloudFormationType() string { +func (r *DHCPOptions) AWSCloudFormationType() string { return "AWS::EC2::DHCPOptions" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2DHCPOptions) DependsOn() []string { +func (r *DHCPOptions) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2DHCPOptions) SetDependsOn(dependencies []string) { +func (r *DHCPOptions) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2DHCPOptions) Metadata() map[string]interface{} { +func (r *DHCPOptions) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2DHCPOptions) SetMetadata(metadata map[string]interface{}) { +func (r *DHCPOptions) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2DHCPOptions) DeletionPolicy() policies.DeletionPolicy { +func (r *DHCPOptions) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2DHCPOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DHCPOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2DHCPOptions) MarshalJSON() ([]byte, error) { - type Properties AWSEC2DHCPOptions +func (r DHCPOptions) MarshalJSON() ([]byte, error) { + type Properties DHCPOptions return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +115,8 @@ func (r AWSEC2DHCPOptions) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2DHCPOptions) UnmarshalJSON(b []byte) error { - type Properties AWSEC2DHCPOptions +func (r *DHCPOptions) UnmarshalJSON(b []byte) error { + type Properties DHCPOptions res := &struct { Type string Properties *Properties @@ -133,7 +135,7 @@ func (r *AWSEC2DHCPOptions) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2DHCPOptions(*res.Properties) + *r = DHCPOptions(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-ec2fleet.go b/cloudformation/ec2/aws-ec2-ec2fleet.go similarity index 81% rename from cloudformation/resources/aws-ec2-ec2fleet.go rename to cloudformation/ec2/aws-ec2-ec2fleet.go index 642987d96c..03f6a00e24 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2EC2Fleet AWS CloudFormation Resource (AWS::EC2::EC2Fleet) +// EC2Fleet AWS CloudFormation Resource (AWS::EC2::EC2Fleet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html -type AWSEC2EC2Fleet struct { +type EC2Fleet struct { // ExcessCapacityTerminationPolicy AWS CloudFormation Property // Required: false @@ -19,12 +20,12 @@ type AWSEC2EC2Fleet struct { // LaunchTemplateConfigs AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-launchtemplateconfigs - LaunchTemplateConfigs []AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest `json:"LaunchTemplateConfigs,omitempty"` + LaunchTemplateConfigs []EC2Fleet_FleetLaunchTemplateConfigRequest `json:"LaunchTemplateConfigs,omitempty"` // OnDemandOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-ondemandoptions - OnDemandOptions *AWSEC2EC2Fleet_OnDemandOptionsRequest `json:"OnDemandOptions,omitempty"` + OnDemandOptions *EC2Fleet_OnDemandOptionsRequest `json:"OnDemandOptions,omitempty"` // ReplaceUnhealthyInstances AWS CloudFormation Property // Required: false @@ -34,17 +35,17 @@ type AWSEC2EC2Fleet struct { // SpotOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-spotoptions - SpotOptions *AWSEC2EC2Fleet_SpotOptionsRequest `json:"SpotOptions,omitempty"` + SpotOptions *EC2Fleet_SpotOptionsRequest `json:"SpotOptions,omitempty"` // TagSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-tagspecifications - TagSpecifications []AWSEC2EC2Fleet_TagSpecification `json:"TagSpecifications,omitempty"` + TagSpecifications []EC2Fleet_TagSpecification `json:"TagSpecifications,omitempty"` // TargetCapacitySpecification AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-targetcapacityspecification - TargetCapacitySpecification *AWSEC2EC2Fleet_TargetCapacitySpecificationRequest `json:"TargetCapacitySpecification,omitempty"` + TargetCapacitySpecification *EC2Fleet_TargetCapacitySpecificationRequest `json:"TargetCapacitySpecification,omitempty"` // TerminateInstancesWithExpiration AWS CloudFormation Property // Required: false @@ -77,50 +78,50 @@ type AWSEC2EC2Fleet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet) AWSCloudFormationType() string { +func (r *EC2Fleet) AWSCloudFormationType() string { return "AWS::EC2::EC2Fleet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet) DependsOn() []string { +func (r *EC2Fleet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet) SetDependsOn(dependencies []string) { +func (r *EC2Fleet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet) Metadata() map[string]interface{} { +func (r *EC2Fleet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet) SetMetadata(metadata map[string]interface{}) { +func (r *EC2Fleet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet) DeletionPolicy() policies.DeletionPolicy { +func (r *EC2Fleet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EC2Fleet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2EC2Fleet) MarshalJSON() ([]byte, error) { - type Properties AWSEC2EC2Fleet +func (r EC2Fleet) MarshalJSON() ([]byte, error) { + type Properties EC2Fleet return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +139,8 @@ func (r AWSEC2EC2Fleet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2EC2Fleet) UnmarshalJSON(b []byte) error { - type Properties AWSEC2EC2Fleet +func (r *EC2Fleet) UnmarshalJSON(b []byte) error { + type Properties EC2Fleet res := &struct { Type string Properties *Properties @@ -158,7 +159,7 @@ func (r *AWSEC2EC2Fleet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2EC2Fleet(*res.Properties) + *r = EC2Fleet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go new file mode 100644 index 0000000000..d09157bbcd --- /dev/null +++ b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// EC2Fleet_FleetLaunchTemplateConfigRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.FleetLaunchTemplateConfigRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html +type EC2Fleet_FleetLaunchTemplateConfigRequest struct { + + // LaunchTemplateSpecification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateconfigrequest-launchtemplatespecification + LaunchTemplateSpecification *EC2Fleet_FleetLaunchTemplateSpecificationRequest `json:"LaunchTemplateSpecification,omitempty"` + + // Overrides AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateconfigrequest-overrides + Overrides []EC2Fleet_FleetLaunchTemplateOverridesRequest `json:"Overrides,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *EC2Fleet_FleetLaunchTemplateConfigRequest) AWSCloudFormationType() string { + return "AWS::EC2::EC2Fleet.FleetLaunchTemplateConfigRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EC2Fleet_FleetLaunchTemplateConfigRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EC2Fleet_FleetLaunchTemplateConfigRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EC2Fleet_FleetLaunchTemplateConfigRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EC2Fleet_FleetLaunchTemplateConfigRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EC2Fleet_FleetLaunchTemplateConfigRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EC2Fleet_FleetLaunchTemplateConfigRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplateoverridesrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateoverridesrequest.go similarity index 79% rename from cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplateoverridesrequest.go rename to cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateoverridesrequest.go index d2812661d3..10cf7d007d 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplateoverridesrequest.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateoverridesrequest.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.FleetLaunchTemplateOverridesRequest) +// EC2Fleet_FleetLaunchTemplateOverridesRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.FleetLaunchTemplateOverridesRequest) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html -type AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest struct { +type EC2Fleet_FleetLaunchTemplateOverridesRequest struct { // AvailabilityZone AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest) AWSCloudFormationType() string { +func (r *EC2Fleet_FleetLaunchTemplateOverridesRequest) AWSCloudFormationType() string { return "AWS::EC2::EC2Fleet.FleetLaunchTemplateOverridesRequest" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest) DependsOn() []string { +func (r *EC2Fleet_FleetLaunchTemplateOverridesRequest) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest) SetDependsOn(dependencies []string) { +func (r *EC2Fleet_FleetLaunchTemplateOverridesRequest) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest) Metadata() map[string]interface{} { +func (r *EC2Fleet_FleetLaunchTemplateOverridesRequest) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest) SetMetadata(metadata map[string]interface{}) { +func (r *EC2Fleet_FleetLaunchTemplateOverridesRequest) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest) DeletionPolicy() policies.DeletionPolicy { +func (r *EC2Fleet_FleetLaunchTemplateOverridesRequest) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EC2Fleet_FleetLaunchTemplateOverridesRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go new file mode 100644 index 0000000000..baf582352b --- /dev/null +++ b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go @@ -0,0 +1,75 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// EC2Fleet_FleetLaunchTemplateSpecificationRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.FleetLaunchTemplateSpecificationRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html +type EC2Fleet_FleetLaunchTemplateSpecificationRequest struct { + + // LaunchTemplateId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-launchtemplateid + LaunchTemplateId string `json:"LaunchTemplateId,omitempty"` + + // LaunchTemplateName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-launchtemplatename + LaunchTemplateName string `json:"LaunchTemplateName,omitempty"` + + // Version AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *EC2Fleet_FleetLaunchTemplateSpecificationRequest) AWSCloudFormationType() string { + return "AWS::EC2::EC2Fleet.FleetLaunchTemplateSpecificationRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EC2Fleet_FleetLaunchTemplateSpecificationRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EC2Fleet_FleetLaunchTemplateSpecificationRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EC2Fleet_FleetLaunchTemplateSpecificationRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-ec2fleet_ondemandoptionsrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_ondemandoptionsrequest.go new file mode 100644 index 0000000000..c9c8568d79 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-ec2fleet_ondemandoptionsrequest.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// EC2Fleet_OnDemandOptionsRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.OnDemandOptionsRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html +type EC2Fleet_OnDemandOptionsRequest struct { + + // AllocationStrategy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-allocationstrategy + AllocationStrategy string `json:"AllocationStrategy,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *EC2Fleet_OnDemandOptionsRequest) AWSCloudFormationType() string { + return "AWS::EC2::EC2Fleet.OnDemandOptionsRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EC2Fleet_OnDemandOptionsRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EC2Fleet_OnDemandOptionsRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EC2Fleet_OnDemandOptionsRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EC2Fleet_OnDemandOptionsRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EC2Fleet_OnDemandOptionsRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EC2Fleet_OnDemandOptionsRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-ec2fleet_spotoptionsrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_spotoptionsrequest.go similarity index 77% rename from cloudformation/resources/aws-ec2-ec2fleet_spotoptionsrequest.go rename to cloudformation/ec2/aws-ec2-ec2fleet_spotoptionsrequest.go index 6f3a23b55c..322a16e7b0 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet_spotoptionsrequest.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet_spotoptionsrequest.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2EC2Fleet_SpotOptionsRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.SpotOptionsRequest) +// EC2Fleet_SpotOptionsRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.SpotOptionsRequest) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html -type AWSEC2EC2Fleet_SpotOptionsRequest struct { +type EC2Fleet_SpotOptionsRequest struct { // AllocationStrategy AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEC2EC2Fleet_SpotOptionsRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_SpotOptionsRequest) AWSCloudFormationType() string { +func (r *EC2Fleet_SpotOptionsRequest) AWSCloudFormationType() string { return "AWS::EC2::EC2Fleet.SpotOptionsRequest" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_SpotOptionsRequest) DependsOn() []string { +func (r *EC2Fleet_SpotOptionsRequest) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_SpotOptionsRequest) SetDependsOn(dependencies []string) { +func (r *EC2Fleet_SpotOptionsRequest) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_SpotOptionsRequest) Metadata() map[string]interface{} { +func (r *EC2Fleet_SpotOptionsRequest) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_SpotOptionsRequest) SetMetadata(metadata map[string]interface{}) { +func (r *EC2Fleet_SpotOptionsRequest) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_SpotOptionsRequest) DeletionPolicy() policies.DeletionPolicy { +func (r *EC2Fleet_SpotOptionsRequest) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_SpotOptionsRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EC2Fleet_SpotOptionsRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-ec2fleet_tagrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_tagrequest.go similarity index 75% rename from cloudformation/resources/aws-ec2-ec2fleet_tagrequest.go rename to cloudformation/ec2/aws-ec2-ec2fleet_tagrequest.go index f343917313..c53f6c7d4a 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet_tagrequest.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet_tagrequest.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2EC2Fleet_TagRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.TagRequest) +// EC2Fleet_TagRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.TagRequest) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagrequest.html -type AWSEC2EC2Fleet_TagRequest struct { +type EC2Fleet_TagRequest struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2EC2Fleet_TagRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_TagRequest) AWSCloudFormationType() string { +func (r *EC2Fleet_TagRequest) AWSCloudFormationType() string { return "AWS::EC2::EC2Fleet.TagRequest" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_TagRequest) DependsOn() []string { +func (r *EC2Fleet_TagRequest) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_TagRequest) SetDependsOn(dependencies []string) { +func (r *EC2Fleet_TagRequest) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_TagRequest) Metadata() map[string]interface{} { +func (r *EC2Fleet_TagRequest) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_TagRequest) SetMetadata(metadata map[string]interface{}) { +func (r *EC2Fleet_TagRequest) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_TagRequest) DeletionPolicy() policies.DeletionPolicy { +func (r *EC2Fleet_TagRequest) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_TagRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EC2Fleet_TagRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-ec2fleet_tagspecification.go b/cloudformation/ec2/aws-ec2-ec2fleet_tagspecification.go new file mode 100644 index 0000000000..2fc0670827 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-ec2fleet_tagspecification.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// EC2Fleet_TagSpecification AWS CloudFormation Resource (AWS::EC2::EC2Fleet.TagSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html +type EC2Fleet_TagSpecification struct { + + // ResourceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html#cfn-ec2-ec2fleet-tagspecification-resourcetype + ResourceType string `json:"ResourceType,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html#cfn-ec2-ec2fleet-tagspecification-tags + Tags []EC2Fleet_TagRequest `json:"Tags,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *EC2Fleet_TagSpecification) AWSCloudFormationType() string { + return "AWS::EC2::EC2Fleet.TagSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EC2Fleet_TagSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *EC2Fleet_TagSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EC2Fleet_TagSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *EC2Fleet_TagSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EC2Fleet_TagSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *EC2Fleet_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-ec2fleet_targetcapacityspecificationrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_targetcapacityspecificationrequest.go similarity index 76% rename from cloudformation/resources/aws-ec2-ec2fleet_targetcapacityspecificationrequest.go rename to cloudformation/ec2/aws-ec2-ec2fleet_targetcapacityspecificationrequest.go index 3466133da6..12096b2fa2 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet_targetcapacityspecificationrequest.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet_targetcapacityspecificationrequest.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2EC2Fleet_TargetCapacitySpecificationRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.TargetCapacitySpecificationRequest) +// EC2Fleet_TargetCapacitySpecificationRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.TargetCapacitySpecificationRequest) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html -type AWSEC2EC2Fleet_TargetCapacitySpecificationRequest struct { +type EC2Fleet_TargetCapacitySpecificationRequest struct { // DefaultTargetCapacityType AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSEC2EC2Fleet_TargetCapacitySpecificationRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_TargetCapacitySpecificationRequest) AWSCloudFormationType() string { +func (r *EC2Fleet_TargetCapacitySpecificationRequest) AWSCloudFormationType() string { return "AWS::EC2::EC2Fleet.TargetCapacitySpecificationRequest" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_TargetCapacitySpecificationRequest) DependsOn() []string { +func (r *EC2Fleet_TargetCapacitySpecificationRequest) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_TargetCapacitySpecificationRequest) SetDependsOn(dependencies []string) { +func (r *EC2Fleet_TargetCapacitySpecificationRequest) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_TargetCapacitySpecificationRequest) Metadata() map[string]interface{} { +func (r *EC2Fleet_TargetCapacitySpecificationRequest) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_TargetCapacitySpecificationRequest) SetMetadata(metadata map[string]interface{}) { +func (r *EC2Fleet_TargetCapacitySpecificationRequest) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_TargetCapacitySpecificationRequest) DeletionPolicy() policies.DeletionPolicy { +func (r *EC2Fleet_TargetCapacitySpecificationRequest) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_TargetCapacitySpecificationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EC2Fleet_TargetCapacitySpecificationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-egressonlyinternetgateway.go b/cloudformation/ec2/aws-ec2-egressonlyinternetgateway.go similarity index 76% rename from cloudformation/resources/aws-ec2-egressonlyinternetgateway.go rename to cloudformation/ec2/aws-ec2-egressonlyinternetgateway.go index e78208c018..f1c4e26ea4 100644 --- a/cloudformation/resources/aws-ec2-egressonlyinternetgateway.go +++ b/cloudformation/ec2/aws-ec2-egressonlyinternetgateway.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2EgressOnlyInternetGateway AWS CloudFormation Resource (AWS::EC2::EgressOnlyInternetGateway) +// EgressOnlyInternetGateway AWS CloudFormation Resource (AWS::EC2::EgressOnlyInternetGateway) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html -type AWSEC2EgressOnlyInternetGateway struct { +type EgressOnlyInternetGateway struct { // VpcId AWS CloudFormation Property // Required: true @@ -27,50 +28,50 @@ type AWSEC2EgressOnlyInternetGateway struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EgressOnlyInternetGateway) AWSCloudFormationType() string { +func (r *EgressOnlyInternetGateway) AWSCloudFormationType() string { return "AWS::EC2::EgressOnlyInternetGateway" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EgressOnlyInternetGateway) DependsOn() []string { +func (r *EgressOnlyInternetGateway) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EgressOnlyInternetGateway) SetDependsOn(dependencies []string) { +func (r *EgressOnlyInternetGateway) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EgressOnlyInternetGateway) Metadata() map[string]interface{} { +func (r *EgressOnlyInternetGateway) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EgressOnlyInternetGateway) SetMetadata(metadata map[string]interface{}) { +func (r *EgressOnlyInternetGateway) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EgressOnlyInternetGateway) DeletionPolicy() policies.DeletionPolicy { +func (r *EgressOnlyInternetGateway) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EgressOnlyInternetGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EgressOnlyInternetGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2EgressOnlyInternetGateway) MarshalJSON() ([]byte, error) { - type Properties AWSEC2EgressOnlyInternetGateway +func (r EgressOnlyInternetGateway) MarshalJSON() ([]byte, error) { + type Properties EgressOnlyInternetGateway return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSEC2EgressOnlyInternetGateway) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2EgressOnlyInternetGateway) UnmarshalJSON(b []byte) error { - type Properties AWSEC2EgressOnlyInternetGateway +func (r *EgressOnlyInternetGateway) UnmarshalJSON(b []byte) error { + type Properties EgressOnlyInternetGateway res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSEC2EgressOnlyInternetGateway) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2EgressOnlyInternetGateway(*res.Properties) + *r = EgressOnlyInternetGateway(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-eip.go b/cloudformation/ec2/aws-ec2-eip.go similarity index 83% rename from cloudformation/resources/aws-ec2-eip.go rename to cloudformation/ec2/aws-ec2-eip.go index 426926227f..ef57a12abb 100644 --- a/cloudformation/resources/aws-ec2-eip.go +++ b/cloudformation/ec2/aws-ec2-eip.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2EIP AWS CloudFormation Resource (AWS::EC2::EIP) +// EIP AWS CloudFormation Resource (AWS::EC2::EIP) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html -type AWSEC2EIP struct { +type EIP struct { // Domain AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSEC2EIP struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EIP) AWSCloudFormationType() string { +func (r *EIP) AWSCloudFormationType() string { return "AWS::EC2::EIP" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EIP) DependsOn() []string { +func (r *EIP) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EIP) SetDependsOn(dependencies []string) { +func (r *EIP) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EIP) Metadata() map[string]interface{} { +func (r *EIP) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EIP) SetMetadata(metadata map[string]interface{}) { +func (r *EIP) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EIP) DeletionPolicy() policies.DeletionPolicy { +func (r *EIP) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EIP) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EIP) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2EIP) MarshalJSON() ([]byte, error) { - type Properties AWSEC2EIP +func (r EIP) MarshalJSON() ([]byte, error) { + type Properties EIP return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSEC2EIP) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2EIP) UnmarshalJSON(b []byte) error { - type Properties AWSEC2EIP +func (r *EIP) UnmarshalJSON(b []byte) error { + type Properties EIP res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSEC2EIP) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2EIP(*res.Properties) + *r = EIP(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-eipassociation.go b/cloudformation/ec2/aws-ec2-eipassociation.go similarity index 83% rename from cloudformation/resources/aws-ec2-eipassociation.go rename to cloudformation/ec2/aws-ec2-eipassociation.go index 309da4ac73..abe247583b 100644 --- a/cloudformation/resources/aws-ec2-eipassociation.go +++ b/cloudformation/ec2/aws-ec2-eipassociation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2EIPAssociation AWS CloudFormation Resource (AWS::EC2::EIPAssociation) +// EIPAssociation AWS CloudFormation Resource (AWS::EC2::EIPAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html -type AWSEC2EIPAssociation struct { +type EIPAssociation struct { // AllocationId AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSEC2EIPAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EIPAssociation) AWSCloudFormationType() string { +func (r *EIPAssociation) AWSCloudFormationType() string { return "AWS::EC2::EIPAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EIPAssociation) DependsOn() []string { +func (r *EIPAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EIPAssociation) SetDependsOn(dependencies []string) { +func (r *EIPAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EIPAssociation) Metadata() map[string]interface{} { +func (r *EIPAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EIPAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *EIPAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EIPAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *EIPAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EIPAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EIPAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2EIPAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2EIPAssociation +func (r EIPAssociation) MarshalJSON() ([]byte, error) { + type Properties EIPAssociation return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSEC2EIPAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2EIPAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2EIPAssociation +func (r *EIPAssociation) UnmarshalJSON(b []byte) error { + type Properties EIPAssociation res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSEC2EIPAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2EIPAssociation(*res.Properties) + *r = EIPAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-flowlog.go b/cloudformation/ec2/aws-ec2-flowlog.go similarity index 86% rename from cloudformation/resources/aws-ec2-flowlog.go rename to cloudformation/ec2/aws-ec2-flowlog.go index 19ece9cbd9..80e50c7a6d 100644 --- a/cloudformation/resources/aws-ec2-flowlog.go +++ b/cloudformation/ec2/aws-ec2-flowlog.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2FlowLog AWS CloudFormation Resource (AWS::EC2::FlowLog) +// FlowLog AWS CloudFormation Resource (AWS::EC2::FlowLog) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html -type AWSEC2FlowLog struct { +type FlowLog struct { // DeliverLogsPermissionArn AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSEC2FlowLog struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2FlowLog) AWSCloudFormationType() string { +func (r *FlowLog) AWSCloudFormationType() string { return "AWS::EC2::FlowLog" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2FlowLog) DependsOn() []string { +func (r *FlowLog) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2FlowLog) SetDependsOn(dependencies []string) { +func (r *FlowLog) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2FlowLog) Metadata() map[string]interface{} { +func (r *FlowLog) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2FlowLog) SetMetadata(metadata map[string]interface{}) { +func (r *FlowLog) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2FlowLog) DeletionPolicy() policies.DeletionPolicy { +func (r *FlowLog) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2FlowLog) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FlowLog) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2FlowLog) MarshalJSON() ([]byte, error) { - type Properties AWSEC2FlowLog +func (r FlowLog) MarshalJSON() ([]byte, error) { + type Properties FlowLog return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSEC2FlowLog) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2FlowLog) UnmarshalJSON(b []byte) error { - type Properties AWSEC2FlowLog +func (r *FlowLog) UnmarshalJSON(b []byte) error { + type Properties FlowLog res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSEC2FlowLog) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2FlowLog(*res.Properties) + *r = FlowLog(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-host.go b/cloudformation/ec2/aws-ec2-host.go similarity index 84% rename from cloudformation/resources/aws-ec2-host.go rename to cloudformation/ec2/aws-ec2-host.go index 2dd22798f5..c3ed1978f5 100644 --- a/cloudformation/resources/aws-ec2-host.go +++ b/cloudformation/ec2/aws-ec2-host.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2Host AWS CloudFormation Resource (AWS::EC2::Host) +// Host AWS CloudFormation Resource (AWS::EC2::Host) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html -type AWSEC2Host struct { +type Host struct { // AutoPlacement AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSEC2Host struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Host) AWSCloudFormationType() string { +func (r *Host) AWSCloudFormationType() string { return "AWS::EC2::Host" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Host) DependsOn() []string { +func (r *Host) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Host) SetDependsOn(dependencies []string) { +func (r *Host) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Host) Metadata() map[string]interface{} { +func (r *Host) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Host) SetMetadata(metadata map[string]interface{}) { +func (r *Host) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Host) DeletionPolicy() policies.DeletionPolicy { +func (r *Host) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Host) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Host) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2Host) MarshalJSON() ([]byte, error) { - type Properties AWSEC2Host +func (r Host) MarshalJSON() ([]byte, error) { + type Properties Host return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSEC2Host) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2Host) UnmarshalJSON(b []byte) error { - type Properties AWSEC2Host +func (r *Host) UnmarshalJSON(b []byte) error { + type Properties Host res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSEC2Host) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2Host(*res.Properties) + *r = Host(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-instance.go b/cloudformation/ec2/aws-ec2-instance.go similarity index 86% rename from cloudformation/resources/aws-ec2-instance.go rename to cloudformation/ec2/aws-ec2-instance.go index bb99c68a8e..cfa43b518d 100644 --- a/cloudformation/resources/aws-ec2-instance.go +++ b/cloudformation/ec2/aws-ec2-instance.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2Instance AWS CloudFormation Resource (AWS::EC2::Instance) +// Instance AWS CloudFormation Resource (AWS::EC2::Instance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html -type AWSEC2Instance struct { +type Instance struct { // AdditionalInfo AWS CloudFormation Property // Required: false @@ -29,17 +31,17 @@ type AWSEC2Instance struct { // BlockDeviceMappings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-blockdevicemappings - BlockDeviceMappings []AWSEC2Instance_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` + BlockDeviceMappings []Instance_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` // CpuOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-cpuoptions - CpuOptions *AWSEC2Instance_CpuOptions `json:"CpuOptions,omitempty"` + CpuOptions *Instance_CpuOptions `json:"CpuOptions,omitempty"` // CreditSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-creditspecification - CreditSpecification *AWSEC2Instance_CreditSpecification `json:"CreditSpecification,omitempty"` + CreditSpecification *Instance_CreditSpecification `json:"CreditSpecification,omitempty"` // DisableApiTermination AWS CloudFormation Property // Required: false @@ -54,12 +56,12 @@ type AWSEC2Instance struct { // ElasticGpuSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-elasticgpuspecifications - ElasticGpuSpecifications []AWSEC2Instance_ElasticGpuSpecification `json:"ElasticGpuSpecifications,omitempty"` + ElasticGpuSpecifications []Instance_ElasticGpuSpecification `json:"ElasticGpuSpecifications,omitempty"` // ElasticInferenceAccelerators AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-elasticinferenceaccelerators - ElasticInferenceAccelerators []AWSEC2Instance_ElasticInferenceAccelerator `json:"ElasticInferenceAccelerators,omitempty"` + ElasticInferenceAccelerators []Instance_ElasticInferenceAccelerator `json:"ElasticInferenceAccelerators,omitempty"` // HostId AWS CloudFormation Property // Required: false @@ -94,7 +96,7 @@ type AWSEC2Instance struct { // Ipv6Addresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ipv6addresses - Ipv6Addresses []AWSEC2Instance_InstanceIpv6Address `json:"Ipv6Addresses,omitempty"` + Ipv6Addresses []Instance_InstanceIpv6Address `json:"Ipv6Addresses,omitempty"` // KernelId AWS CloudFormation Property // Required: false @@ -109,12 +111,12 @@ type AWSEC2Instance struct { // LaunchTemplate AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-launchtemplate - LaunchTemplate *AWSEC2Instance_LaunchTemplateSpecification `json:"LaunchTemplate,omitempty"` + LaunchTemplate *Instance_LaunchTemplateSpecification `json:"LaunchTemplate,omitempty"` // LicenseSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-licensespecifications - LicenseSpecifications []AWSEC2Instance_LicenseSpecification `json:"LicenseSpecifications,omitempty"` + LicenseSpecifications []Instance_LicenseSpecification `json:"LicenseSpecifications,omitempty"` // Monitoring AWS CloudFormation Property // Required: false @@ -124,7 +126,7 @@ type AWSEC2Instance struct { // NetworkInterfaces AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-networkinterfaces - NetworkInterfaces []AWSEC2Instance_NetworkInterface `json:"NetworkInterfaces,omitempty"` + NetworkInterfaces []Instance_NetworkInterface `json:"NetworkInterfaces,omitempty"` // PlacementGroupName AWS CloudFormation Property // Required: false @@ -159,7 +161,7 @@ type AWSEC2Instance struct { // SsmAssociations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ssmassociations - SsmAssociations []AWSEC2Instance_SsmAssociation `json:"SsmAssociations,omitempty"` + SsmAssociations []Instance_SsmAssociation `json:"SsmAssociations,omitempty"` // SubnetId AWS CloudFormation Property // Required: false @@ -169,7 +171,7 @@ type AWSEC2Instance struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Tenancy AWS CloudFormation Property // Required: false @@ -184,7 +186,7 @@ type AWSEC2Instance struct { // Volumes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-volumes - Volumes []AWSEC2Instance_Volume `json:"Volumes,omitempty"` + Volumes []Instance_Volume `json:"Volumes,omitempty"` // _creationPolicy represents a CloudFormation CreationPolicy _creationPolicy *policies.CreationPolicy @@ -200,56 +202,56 @@ type AWSEC2Instance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance) AWSCloudFormationType() string { +func (r *Instance) AWSCloudFormationType() string { return "AWS::EC2::Instance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance) DependsOn() []string { +func (r *Instance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance) SetDependsOn(dependencies []string) { +func (r *Instance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance) Metadata() map[string]interface{} { +func (r *Instance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance) SetMetadata(metadata map[string]interface{}) { +func (r *Instance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // SetCreationPolicy applies an AWS CloudFormation CreationPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html -func (r *AWSEC2Instance) SetCreationPolicy(policy *policies.CreationPolicy) { +func (r *Instance) SetCreationPolicy(policy *policies.CreationPolicy) { r._creationPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2Instance) MarshalJSON() ([]byte, error) { - type Properties AWSEC2Instance +func (r Instance) MarshalJSON() ([]byte, error) { + type Properties Instance return json.Marshal(&struct { Type string Properties Properties @@ -271,8 +273,8 @@ func (r AWSEC2Instance) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2Instance) UnmarshalJSON(b []byte) error { - type Properties AWSEC2Instance +func (r *Instance) UnmarshalJSON(b []byte) error { + type Properties Instance res := &struct { Type string Properties *Properties @@ -291,7 +293,7 @@ func (r *AWSEC2Instance) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2Instance(*res.Properties) + *r = Instance(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ec2/aws-ec2-instance_associationparameter.go b/cloudformation/ec2/aws-ec2-instance_associationparameter.go new file mode 100644 index 0000000000..f06586ff46 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_associationparameter.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_AssociationParameter AWS CloudFormation Resource (AWS::EC2::Instance.AssociationParameter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html +type Instance_AssociationParameter struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-value + Value []string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_AssociationParameter) AWSCloudFormationType() string { + return "AWS::EC2::Instance.AssociationParameter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_AssociationParameter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_AssociationParameter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_AssociationParameter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_AssociationParameter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_AssociationParameter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_AssociationParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-instance_blockdevicemapping.go b/cloudformation/ec2/aws-ec2-instance_blockdevicemapping.go new file mode 100644 index 0000000000..28929e6c6f --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_blockdevicemapping.go @@ -0,0 +1,80 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_BlockDeviceMapping AWS CloudFormation Resource (AWS::EC2::Instance.BlockDeviceMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html +type Instance_BlockDeviceMapping struct { + + // DeviceName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-devicename + DeviceName string `json:"DeviceName,omitempty"` + + // Ebs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-ebs + Ebs *Instance_Ebs `json:"Ebs,omitempty"` + + // NoDevice AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-nodevice + NoDevice *Instance_NoDevice `json:"NoDevice,omitempty"` + + // VirtualName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-virtualname + VirtualName string `json:"VirtualName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_BlockDeviceMapping) AWSCloudFormationType() string { + return "AWS::EC2::Instance.BlockDeviceMapping" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_BlockDeviceMapping) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_BlockDeviceMapping) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_BlockDeviceMapping) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-instance_cpuoptions.go b/cloudformation/ec2/aws-ec2-instance_cpuoptions.go similarity index 75% rename from cloudformation/resources/aws-ec2-instance_cpuoptions.go rename to cloudformation/ec2/aws-ec2-instance_cpuoptions.go index d32f9eb011..bee8aa1897 100644 --- a/cloudformation/resources/aws-ec2-instance_cpuoptions.go +++ b/cloudformation/ec2/aws-ec2-instance_cpuoptions.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2Instance_CpuOptions AWS CloudFormation Resource (AWS::EC2::Instance.CpuOptions) +// Instance_CpuOptions AWS CloudFormation Resource (AWS::EC2::Instance.CpuOptions) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-cpuoptions.html -type AWSEC2Instance_CpuOptions struct { +type Instance_CpuOptions struct { // CoreCount AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2Instance_CpuOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_CpuOptions) AWSCloudFormationType() string { +func (r *Instance_CpuOptions) AWSCloudFormationType() string { return "AWS::EC2::Instance.CpuOptions" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_CpuOptions) DependsOn() []string { +func (r *Instance_CpuOptions) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_CpuOptions) SetDependsOn(dependencies []string) { +func (r *Instance_CpuOptions) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_CpuOptions) Metadata() map[string]interface{} { +func (r *Instance_CpuOptions) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_CpuOptions) SetMetadata(metadata map[string]interface{}) { +func (r *Instance_CpuOptions) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_CpuOptions) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance_CpuOptions) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_CpuOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_CpuOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-instance_creditspecification.go b/cloudformation/ec2/aws-ec2-instance_creditspecification.go new file mode 100644 index 0000000000..76b4601352 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_creditspecification.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_CreditSpecification AWS CloudFormation Resource (AWS::EC2::Instance.CreditSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html +type Instance_CreditSpecification struct { + + // CPUCredits AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html#cfn-ec2-instance-creditspecification-cpucredits + CPUCredits string `json:"CPUCredits,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_CreditSpecification) AWSCloudFormationType() string { + return "AWS::EC2::Instance.CreditSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_CreditSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_CreditSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_CreditSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_CreditSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_CreditSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_CreditSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-instance_ebs.go b/cloudformation/ec2/aws-ec2-instance_ebs.go similarity index 84% rename from cloudformation/resources/aws-ec2-instance_ebs.go rename to cloudformation/ec2/aws-ec2-instance_ebs.go index b5a5e2dd5c..41ef45e7a2 100644 --- a/cloudformation/resources/aws-ec2-instance_ebs.go +++ b/cloudformation/ec2/aws-ec2-instance_ebs.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2Instance_Ebs AWS CloudFormation Resource (AWS::EC2::Instance.Ebs) +// Instance_Ebs AWS CloudFormation Resource (AWS::EC2::Instance.Ebs) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html -type AWSEC2Instance_Ebs struct { +type Instance_Ebs struct { // DeleteOnTermination AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSEC2Instance_Ebs struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_Ebs) AWSCloudFormationType() string { +func (r *Instance_Ebs) AWSCloudFormationType() string { return "AWS::EC2::Instance.Ebs" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_Ebs) DependsOn() []string { +func (r *Instance_Ebs) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_Ebs) SetDependsOn(dependencies []string) { +func (r *Instance_Ebs) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_Ebs) Metadata() map[string]interface{} { +func (r *Instance_Ebs) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_Ebs) SetMetadata(metadata map[string]interface{}) { +func (r *Instance_Ebs) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_Ebs) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance_Ebs) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_Ebs) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_Ebs) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-instance_elasticgpuspecification.go b/cloudformation/ec2/aws-ec2-instance_elasticgpuspecification.go new file mode 100644 index 0000000000..b8b6bff511 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_elasticgpuspecification.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_ElasticGpuSpecification AWS CloudFormation Resource (AWS::EC2::Instance.ElasticGpuSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html +type Instance_ElasticGpuSpecification struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html#cfn-ec2-instance-elasticgpuspecification-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_ElasticGpuSpecification) AWSCloudFormationType() string { + return "AWS::EC2::Instance.ElasticGpuSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_ElasticGpuSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_ElasticGpuSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_ElasticGpuSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_ElasticGpuSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_ElasticGpuSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_ElasticGpuSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-instance_elasticinferenceaccelerator.go b/cloudformation/ec2/aws-ec2-instance_elasticinferenceaccelerator.go new file mode 100644 index 0000000000..9063c47c24 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_elasticinferenceaccelerator.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_ElasticInferenceAccelerator AWS CloudFormation Resource (AWS::EC2::Instance.ElasticInferenceAccelerator) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html +type Instance_ElasticInferenceAccelerator struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html#cfn-ec2-instance-elasticinferenceaccelerator-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_ElasticInferenceAccelerator) AWSCloudFormationType() string { + return "AWS::EC2::Instance.ElasticInferenceAccelerator" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_ElasticInferenceAccelerator) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_ElasticInferenceAccelerator) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_ElasticInferenceAccelerator) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_ElasticInferenceAccelerator) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_ElasticInferenceAccelerator) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_ElasticInferenceAccelerator) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-instance_instanceipv6address.go b/cloudformation/ec2/aws-ec2-instance_instanceipv6address.go new file mode 100644 index 0000000000..5b8dc5f61e --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_instanceipv6address.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::Instance.InstanceIpv6Address) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html +type Instance_InstanceIpv6Address struct { + + // Ipv6Address AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html#cfn-ec2-instance-instanceipv6address-ipv6address + Ipv6Address string `json:"Ipv6Address,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_InstanceIpv6Address) AWSCloudFormationType() string { + return "AWS::EC2::Instance.InstanceIpv6Address" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_InstanceIpv6Address) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_InstanceIpv6Address) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_InstanceIpv6Address) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-instance_launchtemplatespecification.go b/cloudformation/ec2/aws-ec2-instance_launchtemplatespecification.go similarity index 75% rename from cloudformation/resources/aws-ec2-instance_launchtemplatespecification.go rename to cloudformation/ec2/aws-ec2-instance_launchtemplatespecification.go index 27a63070fd..0379796a44 100644 --- a/cloudformation/resources/aws-ec2-instance_launchtemplatespecification.go +++ b/cloudformation/ec2/aws-ec2-instance_launchtemplatespecification.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2Instance_LaunchTemplateSpecification AWS CloudFormation Resource (AWS::EC2::Instance.LaunchTemplateSpecification) +// Instance_LaunchTemplateSpecification AWS CloudFormation Resource (AWS::EC2::Instance.LaunchTemplateSpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html -type AWSEC2Instance_LaunchTemplateSpecification struct { +type Instance_LaunchTemplateSpecification struct { // LaunchTemplateId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEC2Instance_LaunchTemplateSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_LaunchTemplateSpecification) AWSCloudFormationType() string { +func (r *Instance_LaunchTemplateSpecification) AWSCloudFormationType() string { return "AWS::EC2::Instance.LaunchTemplateSpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_LaunchTemplateSpecification) DependsOn() []string { +func (r *Instance_LaunchTemplateSpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_LaunchTemplateSpecification) SetDependsOn(dependencies []string) { +func (r *Instance_LaunchTemplateSpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_LaunchTemplateSpecification) Metadata() map[string]interface{} { +func (r *Instance_LaunchTemplateSpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_LaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { +func (r *Instance_LaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_LaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance_LaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_LaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_LaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-instance_licensespecification.go b/cloudformation/ec2/aws-ec2-instance_licensespecification.go new file mode 100644 index 0000000000..61a90e1cc2 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_licensespecification.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_LicenseSpecification AWS CloudFormation Resource (AWS::EC2::Instance.LicenseSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html +type Instance_LicenseSpecification struct { + + // LicenseConfigurationArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html#cfn-ec2-instance-licensespecification-licenseconfigurationarn + LicenseConfigurationArn string `json:"LicenseConfigurationArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_LicenseSpecification) AWSCloudFormationType() string { + return "AWS::EC2::Instance.LicenseSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_LicenseSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_LicenseSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_LicenseSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_LicenseSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_LicenseSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_LicenseSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-instance_networkinterface.go b/cloudformation/ec2/aws-ec2-instance_networkinterface.go similarity index 84% rename from cloudformation/resources/aws-ec2-instance_networkinterface.go rename to cloudformation/ec2/aws-ec2-instance_networkinterface.go index 9b3ffb9175..ede6fe9b32 100644 --- a/cloudformation/resources/aws-ec2-instance_networkinterface.go +++ b/cloudformation/ec2/aws-ec2-instance_networkinterface.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2Instance_NetworkInterface AWS CloudFormation Resource (AWS::EC2::Instance.NetworkInterface) +// Instance_NetworkInterface AWS CloudFormation Resource (AWS::EC2::Instance.NetworkInterface) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html -type AWSEC2Instance_NetworkInterface struct { +type Instance_NetworkInterface struct { // AssociatePublicIpAddress AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSEC2Instance_NetworkInterface struct { // Ipv6Addresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#cfn-ec2-instance-networkinterface-ipv6addresses - Ipv6Addresses []AWSEC2Instance_InstanceIpv6Address `json:"Ipv6Addresses,omitempty"` + Ipv6Addresses []Instance_InstanceIpv6Address `json:"Ipv6Addresses,omitempty"` // NetworkInterfaceId AWS CloudFormation Property // Required: false @@ -54,7 +56,7 @@ type AWSEC2Instance_NetworkInterface struct { // PrivateIpAddresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-privateipaddresses - PrivateIpAddresses []AWSEC2Instance_PrivateIpAddressSpecification `json:"PrivateIpAddresses,omitempty"` + PrivateIpAddresses []Instance_PrivateIpAddressSpecification `json:"PrivateIpAddresses,omitempty"` // SecondaryPrivateIpAddressCount AWS CloudFormation Property // Required: false @@ -77,42 +79,42 @@ type AWSEC2Instance_NetworkInterface struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_NetworkInterface) AWSCloudFormationType() string { +func (r *Instance_NetworkInterface) AWSCloudFormationType() string { return "AWS::EC2::Instance.NetworkInterface" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_NetworkInterface) DependsOn() []string { +func (r *Instance_NetworkInterface) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_NetworkInterface) SetDependsOn(dependencies []string) { +func (r *Instance_NetworkInterface) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_NetworkInterface) Metadata() map[string]interface{} { +func (r *Instance_NetworkInterface) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_NetworkInterface) SetMetadata(metadata map[string]interface{}) { +func (r *Instance_NetworkInterface) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_NetworkInterface) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance_NetworkInterface) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_NetworkInterface) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_NetworkInterface) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-instance_nodevice.go b/cloudformation/ec2/aws-ec2-instance_nodevice.go new file mode 100644 index 0000000000..ec53cbc0e1 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_nodevice.go @@ -0,0 +1,60 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_NoDevice AWS CloudFormation Resource (AWS::EC2::Instance.NoDevice) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-nodevice.html +type Instance_NoDevice struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_NoDevice) AWSCloudFormationType() string { + return "AWS::EC2::Instance.NoDevice" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_NoDevice) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_NoDevice) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_NoDevice) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_NoDevice) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_NoDevice) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_NoDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-instance_privateipaddressspecification.go b/cloudformation/ec2/aws-ec2-instance_privateipaddressspecification.go new file mode 100644 index 0000000000..be7e10026c --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_privateipaddressspecification.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::Instance.PrivateIpAddressSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html +type Instance_PrivateIpAddressSpecification struct { + + // Primary AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary + Primary bool `json:"Primary"` + + // PrivateIpAddress AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress + PrivateIpAddress string `json:"PrivateIpAddress,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_PrivateIpAddressSpecification) AWSCloudFormationType() string { + return "AWS::EC2::Instance.PrivateIpAddressSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_PrivateIpAddressSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_PrivateIpAddressSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-instance_ssmassociation.go b/cloudformation/ec2/aws-ec2-instance_ssmassociation.go new file mode 100644 index 0000000000..8620e4bd98 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_ssmassociation.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Instance_SsmAssociation AWS CloudFormation Resource (AWS::EC2::Instance.SsmAssociation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html +type Instance_SsmAssociation struct { + + // AssociationParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-associationparameters + AssociationParameters []Instance_AssociationParameter `json:"AssociationParameters,omitempty"` + + // DocumentName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-documentname + DocumentName string `json:"DocumentName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Instance_SsmAssociation) AWSCloudFormationType() string { + return "AWS::EC2::Instance.SsmAssociation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_SsmAssociation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Instance_SsmAssociation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_SsmAssociation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Instance_SsmAssociation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_SsmAssociation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Instance_SsmAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-instance_volume.go b/cloudformation/ec2/aws-ec2-instance_volume.go similarity index 76% rename from cloudformation/resources/aws-ec2-instance_volume.go rename to cloudformation/ec2/aws-ec2-instance_volume.go index 1fa1f14753..f63bd4181f 100644 --- a/cloudformation/resources/aws-ec2-instance_volume.go +++ b/cloudformation/ec2/aws-ec2-instance_volume.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2Instance_Volume AWS CloudFormation Resource (AWS::EC2::Instance.Volume) +// Instance_Volume AWS CloudFormation Resource (AWS::EC2::Instance.Volume) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html -type AWSEC2Instance_Volume struct { +type Instance_Volume struct { // Device AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEC2Instance_Volume struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_Volume) AWSCloudFormationType() string { +func (r *Instance_Volume) AWSCloudFormationType() string { return "AWS::EC2::Instance.Volume" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_Volume) DependsOn() []string { +func (r *Instance_Volume) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_Volume) SetDependsOn(dependencies []string) { +func (r *Instance_Volume) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_Volume) Metadata() map[string]interface{} { +func (r *Instance_Volume) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_Volume) SetMetadata(metadata map[string]interface{}) { +func (r *Instance_Volume) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_Volume) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance_Volume) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_Volume) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_Volume) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-internetgateway.go b/cloudformation/ec2/aws-ec2-internetgateway.go similarity index 78% rename from cloudformation/resources/aws-ec2-internetgateway.go rename to cloudformation/ec2/aws-ec2-internetgateway.go index fe16e71e8e..566848792d 100644 --- a/cloudformation/resources/aws-ec2-internetgateway.go +++ b/cloudformation/ec2/aws-ec2-internetgateway.go @@ -1,20 +1,22 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2InternetGateway AWS CloudFormation Resource (AWS::EC2::InternetGateway) +// InternetGateway AWS CloudFormation Resource (AWS::EC2::InternetGateway) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html -type AWSEC2InternetGateway struct { +type InternetGateway struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html#cfn-ec2-internetgateway-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,50 +29,50 @@ type AWSEC2InternetGateway struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2InternetGateway) AWSCloudFormationType() string { +func (r *InternetGateway) AWSCloudFormationType() string { return "AWS::EC2::InternetGateway" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2InternetGateway) DependsOn() []string { +func (r *InternetGateway) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2InternetGateway) SetDependsOn(dependencies []string) { +func (r *InternetGateway) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2InternetGateway) Metadata() map[string]interface{} { +func (r *InternetGateway) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2InternetGateway) SetMetadata(metadata map[string]interface{}) { +func (r *InternetGateway) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2InternetGateway) DeletionPolicy() policies.DeletionPolicy { +func (r *InternetGateway) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2InternetGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InternetGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2InternetGateway) MarshalJSON() ([]byte, error) { - type Properties AWSEC2InternetGateway +func (r InternetGateway) MarshalJSON() ([]byte, error) { + type Properties InternetGateway return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +90,8 @@ func (r AWSEC2InternetGateway) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2InternetGateway) UnmarshalJSON(b []byte) error { - type Properties AWSEC2InternetGateway +func (r *InternetGateway) UnmarshalJSON(b []byte) error { + type Properties InternetGateway res := &struct { Type string Properties *Properties @@ -108,7 +110,7 @@ func (r *AWSEC2InternetGateway) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2InternetGateway(*res.Properties) + *r = InternetGateway(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-launchtemplate.go b/cloudformation/ec2/aws-ec2-launchtemplate.go similarity index 78% rename from cloudformation/resources/aws-ec2-launchtemplate.go rename to cloudformation/ec2/aws-ec2-launchtemplate.go index 36d7fd5e7a..3fcead1708 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate.go @@ -1,20 +1,21 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2LaunchTemplate AWS CloudFormation Resource (AWS::EC2::LaunchTemplate) +// LaunchTemplate AWS CloudFormation Resource (AWS::EC2::LaunchTemplate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html -type AWSEC2LaunchTemplate struct { +type LaunchTemplate struct { // LaunchTemplateData AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#cfn-ec2-launchtemplate-launchtemplatedata - LaunchTemplateData *AWSEC2LaunchTemplate_LaunchTemplateData `json:"LaunchTemplateData,omitempty"` + LaunchTemplateData *LaunchTemplate_LaunchTemplateData `json:"LaunchTemplateData,omitempty"` // LaunchTemplateName AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSEC2LaunchTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate) AWSCloudFormationType() string { +func (r *LaunchTemplate) AWSCloudFormationType() string { return "AWS::EC2::LaunchTemplate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate) DependsOn() []string { +func (r *LaunchTemplate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate) SetDependsOn(dependencies []string) { +func (r *LaunchTemplate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate) Metadata() map[string]interface{} { +func (r *LaunchTemplate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2LaunchTemplate) MarshalJSON() ([]byte, error) { - type Properties AWSEC2LaunchTemplate +func (r LaunchTemplate) MarshalJSON() ([]byte, error) { + type Properties LaunchTemplate return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2LaunchTemplate) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2LaunchTemplate) UnmarshalJSON(b []byte) error { - type Properties AWSEC2LaunchTemplate +func (r *LaunchTemplate) UnmarshalJSON(b []byte) error { + type Properties LaunchTemplate res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2LaunchTemplate) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2LaunchTemplate(*res.Properties) + *r = LaunchTemplate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-launchtemplate_blockdevicemapping.go b/cloudformation/ec2/aws-ec2-launchtemplate_blockdevicemapping.go similarity index 75% rename from cloudformation/resources/aws-ec2-launchtemplate_blockdevicemapping.go rename to cloudformation/ec2/aws-ec2-launchtemplate_blockdevicemapping.go index 902d1c50df..2f6c0665f5 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_blockdevicemapping.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_blockdevicemapping.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2LaunchTemplate_BlockDeviceMapping AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.BlockDeviceMapping) +// LaunchTemplate_BlockDeviceMapping AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.BlockDeviceMapping) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html -type AWSEC2LaunchTemplate_BlockDeviceMapping struct { +type LaunchTemplate_BlockDeviceMapping struct { // DeviceName AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSEC2LaunchTemplate_BlockDeviceMapping struct { // Ebs AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs - Ebs *AWSEC2LaunchTemplate_Ebs `json:"Ebs,omitempty"` + Ebs *LaunchTemplate_Ebs `json:"Ebs,omitempty"` // NoDevice AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSEC2LaunchTemplate_BlockDeviceMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_BlockDeviceMapping) AWSCloudFormationType() string { +func (r *LaunchTemplate_BlockDeviceMapping) AWSCloudFormationType() string { return "AWS::EC2::LaunchTemplate.BlockDeviceMapping" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_BlockDeviceMapping) DependsOn() []string { +func (r *LaunchTemplate_BlockDeviceMapping) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_BlockDeviceMapping) SetDependsOn(dependencies []string) { +func (r *LaunchTemplate_BlockDeviceMapping) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_BlockDeviceMapping) Metadata() map[string]interface{} { +func (r *LaunchTemplate_BlockDeviceMapping) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplate_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplate_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationpreference.go b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationpreference.go new file mode 100644 index 0000000000..1197b3c7d5 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationpreference.go @@ -0,0 +1,60 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_CapacityReservationPreference AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationPreference) +// See: +type LaunchTemplate_CapacityReservationPreference struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_CapacityReservationPreference) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.CapacityReservationPreference" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_CapacityReservationPreference) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_CapacityReservationPreference) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_CapacityReservationPreference) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_CapacityReservationPreference) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_CapacityReservationPreference) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_CapacityReservationPreference) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationspecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationspecification.go new file mode 100644 index 0000000000..b3a28b3636 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationspecification.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_CapacityReservationSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html +type LaunchTemplate_CapacityReservationSpecification struct { + + // CapacityReservationPreference AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification-capacityreservationpreference + CapacityReservationPreference *LaunchTemplate_CapacityReservationPreference `json:"CapacityReservationPreference,omitempty"` + + // CapacityReservationTarget AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification-capacityreservationtarget + CapacityReservationTarget *LaunchTemplate_CapacityReservationTarget `json:"CapacityReservationTarget,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_CapacityReservationSpecification) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.CapacityReservationSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_CapacityReservationSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_CapacityReservationSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_CapacityReservationSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_CapacityReservationSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_CapacityReservationSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_CapacityReservationSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationtarget.go b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationtarget.go new file mode 100644 index 0000000000..67d081825f --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationtarget.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_CapacityReservationTarget AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationTarget) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html +type LaunchTemplate_CapacityReservationTarget struct { + + // CapacityReservationId AWS CloudFormation Property + // Required: false + // 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"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_CapacityReservationTarget) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.CapacityReservationTarget" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_CapacityReservationTarget) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_CapacityReservationTarget) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_CapacityReservationTarget) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_CapacityReservationTarget) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_CapacityReservationTarget) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_CapacityReservationTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_cpuoptions.go b/cloudformation/ec2/aws-ec2-launchtemplate_cpuoptions.go similarity index 75% rename from cloudformation/resources/aws-ec2-launchtemplate_cpuoptions.go rename to cloudformation/ec2/aws-ec2-launchtemplate_cpuoptions.go index a7d60c0365..56edd6f510 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_cpuoptions.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_cpuoptions.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2LaunchTemplate_CpuOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CpuOptions) +// LaunchTemplate_CpuOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CpuOptions) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-cpuoptions.html -type AWSEC2LaunchTemplate_CpuOptions struct { +type LaunchTemplate_CpuOptions struct { // CoreCount AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2LaunchTemplate_CpuOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CpuOptions) AWSCloudFormationType() string { +func (r *LaunchTemplate_CpuOptions) AWSCloudFormationType() string { return "AWS::EC2::LaunchTemplate.CpuOptions" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CpuOptions) DependsOn() []string { +func (r *LaunchTemplate_CpuOptions) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CpuOptions) SetDependsOn(dependencies []string) { +func (r *LaunchTemplate_CpuOptions) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CpuOptions) Metadata() map[string]interface{} { +func (r *LaunchTemplate_CpuOptions) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CpuOptions) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplate_CpuOptions) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CpuOptions) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplate_CpuOptions) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CpuOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_CpuOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_creditspecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_creditspecification.go new file mode 100644 index 0000000000..1f6841f430 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_creditspecification.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_CreditSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CreditSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-creditspecification.html +type LaunchTemplate_CreditSpecification struct { + + // CpuCredits AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-creditspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-creditspecification-cpucredits + CpuCredits string `json:"CpuCredits,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_CreditSpecification) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.CreditSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_CreditSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_CreditSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_CreditSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_CreditSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_CreditSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_CreditSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_ebs.go b/cloudformation/ec2/aws-ec2-launchtemplate_ebs.go similarity index 84% rename from cloudformation/resources/aws-ec2-launchtemplate_ebs.go rename to cloudformation/ec2/aws-ec2-launchtemplate_ebs.go index 7aeaeef4dd..4b14adc364 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_ebs.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_ebs.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2LaunchTemplate_Ebs AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Ebs) +// LaunchTemplate_Ebs AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Ebs) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html -type AWSEC2LaunchTemplate_Ebs struct { +type LaunchTemplate_Ebs struct { // DeleteOnTermination AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSEC2LaunchTemplate_Ebs struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_Ebs) AWSCloudFormationType() string { +func (r *LaunchTemplate_Ebs) AWSCloudFormationType() string { return "AWS::EC2::LaunchTemplate.Ebs" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_Ebs) DependsOn() []string { +func (r *LaunchTemplate_Ebs) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_Ebs) SetDependsOn(dependencies []string) { +func (r *LaunchTemplate_Ebs) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_Ebs) Metadata() map[string]interface{} { +func (r *LaunchTemplate_Ebs) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_Ebs) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplate_Ebs) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_Ebs) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplate_Ebs) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_Ebs) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_Ebs) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_elasticgpuspecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_elasticgpuspecification.go new file mode 100644 index 0000000000..0e5652d1e7 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_elasticgpuspecification.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_ElasticGpuSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.ElasticGpuSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-elasticgpuspecification.html +type LaunchTemplate_ElasticGpuSpecification struct { + + // Type AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-elasticgpuspecification.html#cfn-ec2-launchtemplate-elasticgpuspecification-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_ElasticGpuSpecification) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.ElasticGpuSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_ElasticGpuSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_ElasticGpuSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_ElasticGpuSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_ElasticGpuSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_ElasticGpuSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_ElasticGpuSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_hibernationoptions.go b/cloudformation/ec2/aws-ec2-launchtemplate_hibernationoptions.go new file mode 100644 index 0000000000..e74fabd8bd --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_hibernationoptions.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_HibernationOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.HibernationOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-hibernationoptions.html +type LaunchTemplate_HibernationOptions struct { + + // Configured AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-hibernationoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-hibernationoptions-configured + Configured bool `json:"Configured,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_HibernationOptions) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.HibernationOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_HibernationOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_HibernationOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_HibernationOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_HibernationOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_HibernationOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_HibernationOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_iaminstanceprofile.go b/cloudformation/ec2/aws-ec2-launchtemplate_iaminstanceprofile.go new file mode 100644 index 0000000000..59bd5c46f2 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_iaminstanceprofile.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_IamInstanceProfile AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.IamInstanceProfile) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html +type LaunchTemplate_IamInstanceProfile struct { + + // Arn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile-arn + Arn string `json:"Arn,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_IamInstanceProfile) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.IamInstanceProfile" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_IamInstanceProfile) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_IamInstanceProfile) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_IamInstanceProfile) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_IamInstanceProfile) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_IamInstanceProfile) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_IamInstanceProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_instancemarketoptions.go b/cloudformation/ec2/aws-ec2-launchtemplate_instancemarketoptions.go new file mode 100644 index 0000000000..201cc158af --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_instancemarketoptions.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_InstanceMarketOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.InstanceMarketOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html +type LaunchTemplate_InstanceMarketOptions struct { + + // MarketType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-markettype + MarketType string `json:"MarketType,omitempty"` + + // SpotOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions + SpotOptions *LaunchTemplate_SpotOptions `json:"SpotOptions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_InstanceMarketOptions) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.InstanceMarketOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_InstanceMarketOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_InstanceMarketOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_InstanceMarketOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_InstanceMarketOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_InstanceMarketOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_InstanceMarketOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_ipv6add.go b/cloudformation/ec2/aws-ec2-launchtemplate_ipv6add.go new file mode 100644 index 0000000000..c779ac3305 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_ipv6add.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_Ipv6Add AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Ipv6Add) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ipv6add.html +type LaunchTemplate_Ipv6Add struct { + + // Ipv6Address AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ipv6add.html#cfn-ec2-launchtemplate-ipv6add-ipv6address + Ipv6Address string `json:"Ipv6Address,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_Ipv6Add) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.Ipv6Add" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_Ipv6Add) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_Ipv6Add) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_Ipv6Add) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_Ipv6Add) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_Ipv6Add) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_Ipv6Add) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_launchtemplatedata.go b/cloudformation/ec2/aws-ec2-launchtemplate_launchtemplatedata.go similarity index 79% rename from cloudformation/resources/aws-ec2-launchtemplate_launchtemplatedata.go rename to cloudformation/ec2/aws-ec2-launchtemplate_launchtemplatedata.go index 4c89d6c40b..fff0e5b5da 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_launchtemplatedata.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_launchtemplatedata.go @@ -1,30 +1,32 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2LaunchTemplate_LaunchTemplateData AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.LaunchTemplateData) +// LaunchTemplate_LaunchTemplateData AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.LaunchTemplateData) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html -type AWSEC2LaunchTemplate_LaunchTemplateData struct { +type LaunchTemplate_LaunchTemplateData struct { // BlockDeviceMappings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-blockdevicemappings - BlockDeviceMappings []AWSEC2LaunchTemplate_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` + BlockDeviceMappings []LaunchTemplate_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` // CapacityReservationSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification - CapacityReservationSpecification *AWSEC2LaunchTemplate_CapacityReservationSpecification `json:"CapacityReservationSpecification,omitempty"` + CapacityReservationSpecification *LaunchTemplate_CapacityReservationSpecification `json:"CapacityReservationSpecification,omitempty"` // CpuOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-cpuoptions - CpuOptions *AWSEC2LaunchTemplate_CpuOptions `json:"CpuOptions,omitempty"` + CpuOptions *LaunchTemplate_CpuOptions `json:"CpuOptions,omitempty"` // CreditSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-creditspecification - CreditSpecification *AWSEC2LaunchTemplate_CreditSpecification `json:"CreditSpecification,omitempty"` + CreditSpecification *LaunchTemplate_CreditSpecification `json:"CreditSpecification,omitempty"` // DisableApiTermination AWS CloudFormation Property // Required: false @@ -39,22 +41,22 @@ type AWSEC2LaunchTemplate_LaunchTemplateData struct { // ElasticGpuSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-elasticgpuspecifications - ElasticGpuSpecifications []AWSEC2LaunchTemplate_ElasticGpuSpecification `json:"ElasticGpuSpecifications,omitempty"` + ElasticGpuSpecifications []LaunchTemplate_ElasticGpuSpecification `json:"ElasticGpuSpecifications,omitempty"` // ElasticInferenceAccelerators AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-elasticinferenceaccelerators - ElasticInferenceAccelerators []AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator `json:"ElasticInferenceAccelerators,omitempty"` + ElasticInferenceAccelerators []LaunchTemplate_LaunchTemplateElasticInferenceAccelerator `json:"ElasticInferenceAccelerators,omitempty"` // HibernationOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-hibernationoptions - HibernationOptions *AWSEC2LaunchTemplate_HibernationOptions `json:"HibernationOptions,omitempty"` + HibernationOptions *LaunchTemplate_HibernationOptions `json:"HibernationOptions,omitempty"` // IamInstanceProfile AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile - IamInstanceProfile *AWSEC2LaunchTemplate_IamInstanceProfile `json:"IamInstanceProfile,omitempty"` + IamInstanceProfile *LaunchTemplate_IamInstanceProfile `json:"IamInstanceProfile,omitempty"` // ImageId AWS CloudFormation Property // Required: false @@ -69,7 +71,7 @@ type AWSEC2LaunchTemplate_LaunchTemplateData struct { // InstanceMarketOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions - InstanceMarketOptions *AWSEC2LaunchTemplate_InstanceMarketOptions `json:"InstanceMarketOptions,omitempty"` + InstanceMarketOptions *LaunchTemplate_InstanceMarketOptions `json:"InstanceMarketOptions,omitempty"` // InstanceType AWS CloudFormation Property // Required: false @@ -89,22 +91,22 @@ type AWSEC2LaunchTemplate_LaunchTemplateData struct { // LicenseSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-licensespecifications - LicenseSpecifications []AWSEC2LaunchTemplate_LicenseSpecification `json:"LicenseSpecifications,omitempty"` + LicenseSpecifications []LaunchTemplate_LicenseSpecification `json:"LicenseSpecifications,omitempty"` // Monitoring AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-monitoring - Monitoring *AWSEC2LaunchTemplate_Monitoring `json:"Monitoring,omitempty"` + Monitoring *LaunchTemplate_Monitoring `json:"Monitoring,omitempty"` // NetworkInterfaces AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-networkinterfaces - NetworkInterfaces []AWSEC2LaunchTemplate_NetworkInterface `json:"NetworkInterfaces,omitempty"` + NetworkInterfaces []LaunchTemplate_NetworkInterface `json:"NetworkInterfaces,omitempty"` // Placement AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-placement - Placement *AWSEC2LaunchTemplate_Placement `json:"Placement,omitempty"` + Placement *LaunchTemplate_Placement `json:"Placement,omitempty"` // RamDiskId AWS CloudFormation Property // Required: false @@ -124,7 +126,7 @@ type AWSEC2LaunchTemplate_LaunchTemplateData struct { // TagSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-tagspecifications - TagSpecifications []AWSEC2LaunchTemplate_TagSpecification `json:"TagSpecifications,omitempty"` + TagSpecifications []LaunchTemplate_TagSpecification `json:"TagSpecifications,omitempty"` // UserData AWS CloudFormation Property // Required: false @@ -142,42 +144,42 @@ type AWSEC2LaunchTemplate_LaunchTemplateData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_LaunchTemplateData) AWSCloudFormationType() string { +func (r *LaunchTemplate_LaunchTemplateData) AWSCloudFormationType() string { return "AWS::EC2::LaunchTemplate.LaunchTemplateData" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateData) DependsOn() []string { +func (r *LaunchTemplate_LaunchTemplateData) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateData) SetDependsOn(dependencies []string) { +func (r *LaunchTemplate_LaunchTemplateData) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateData) Metadata() map[string]interface{} { +func (r *LaunchTemplate_LaunchTemplateData) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateData) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplate_LaunchTemplateData) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateData) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplate_LaunchTemplateData) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_LaunchTemplateData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go b/cloudformation/ec2/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go new file mode 100644 index 0000000000..749b94fbcc --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_LaunchTemplateElasticInferenceAccelerator AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.LaunchTemplateElasticInferenceAccelerator) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html +type LaunchTemplate_LaunchTemplateElasticInferenceAccelerator struct { + + // Type AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html#cfn-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.LaunchTemplateElasticInferenceAccelerator" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_licensespecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_licensespecification.go new file mode 100644 index 0000000000..0819de8dec --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_licensespecification.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_LicenseSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.LicenseSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-licensespecification.html +type LaunchTemplate_LicenseSpecification struct { + + // LicenseConfigurationArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-licensespecification.html#cfn-ec2-launchtemplate-licensespecification-licenseconfigurationarn + LicenseConfigurationArn string `json:"LicenseConfigurationArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_LicenseSpecification) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.LicenseSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_LicenseSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_LicenseSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_LicenseSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_LicenseSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_LicenseSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_LicenseSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_monitoring.go b/cloudformation/ec2/aws-ec2-launchtemplate_monitoring.go new file mode 100644 index 0000000000..e835d74eac --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_monitoring.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_Monitoring AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Monitoring) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-monitoring.html +type LaunchTemplate_Monitoring struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-monitoring.html#cfn-ec2-launchtemplate-launchtemplatedata-monitoring-enabled + Enabled bool `json:"Enabled,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_Monitoring) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.Monitoring" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_Monitoring) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_Monitoring) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_Monitoring) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_Monitoring) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_Monitoring) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_Monitoring) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_networkinterface.go b/cloudformation/ec2/aws-ec2-launchtemplate_networkinterface.go similarity index 84% rename from cloudformation/resources/aws-ec2-launchtemplate_networkinterface.go rename to cloudformation/ec2/aws-ec2-launchtemplate_networkinterface.go index 16d90fd1fc..673424abe4 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_networkinterface.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_networkinterface.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2LaunchTemplate_NetworkInterface AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.NetworkInterface) +// LaunchTemplate_NetworkInterface AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.NetworkInterface) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html -type AWSEC2LaunchTemplate_NetworkInterface struct { +type LaunchTemplate_NetworkInterface struct { // AssociatePublicIpAddress AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSEC2LaunchTemplate_NetworkInterface struct { // Ipv6Addresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-ipv6addresses - Ipv6Addresses []AWSEC2LaunchTemplate_Ipv6Add `json:"Ipv6Addresses,omitempty"` + Ipv6Addresses []LaunchTemplate_Ipv6Add `json:"Ipv6Addresses,omitempty"` // NetworkInterfaceId AWS CloudFormation Property // Required: false @@ -59,7 +61,7 @@ type AWSEC2LaunchTemplate_NetworkInterface struct { // PrivateIpAddresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-privateipaddresses - PrivateIpAddresses []AWSEC2LaunchTemplate_PrivateIpAdd `json:"PrivateIpAddresses,omitempty"` + PrivateIpAddresses []LaunchTemplate_PrivateIpAdd `json:"PrivateIpAddresses,omitempty"` // SecondaryPrivateIpAddressCount AWS CloudFormation Property // Required: false @@ -82,42 +84,42 @@ type AWSEC2LaunchTemplate_NetworkInterface struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_NetworkInterface) AWSCloudFormationType() string { +func (r *LaunchTemplate_NetworkInterface) AWSCloudFormationType() string { return "AWS::EC2::LaunchTemplate.NetworkInterface" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_NetworkInterface) DependsOn() []string { +func (r *LaunchTemplate_NetworkInterface) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_NetworkInterface) SetDependsOn(dependencies []string) { +func (r *LaunchTemplate_NetworkInterface) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_NetworkInterface) Metadata() map[string]interface{} { +func (r *LaunchTemplate_NetworkInterface) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_NetworkInterface) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplate_NetworkInterface) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_NetworkInterface) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplate_NetworkInterface) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_NetworkInterface) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_NetworkInterface) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_placement.go b/cloudformation/ec2/aws-ec2-launchtemplate_placement.go similarity index 81% rename from cloudformation/resources/aws-ec2-launchtemplate_placement.go rename to cloudformation/ec2/aws-ec2-launchtemplate_placement.go index b6492605f2..a87116e051 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_placement.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_placement.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2LaunchTemplate_Placement AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Placement) +// LaunchTemplate_Placement AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Placement) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html -type AWSEC2LaunchTemplate_Placement struct { +type LaunchTemplate_Placement struct { // Affinity AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSEC2LaunchTemplate_Placement struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_Placement) AWSCloudFormationType() string { +func (r *LaunchTemplate_Placement) AWSCloudFormationType() string { return "AWS::EC2::LaunchTemplate.Placement" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_Placement) DependsOn() []string { +func (r *LaunchTemplate_Placement) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_Placement) SetDependsOn(dependencies []string) { +func (r *LaunchTemplate_Placement) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_Placement) Metadata() map[string]interface{} { +func (r *LaunchTemplate_Placement) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_Placement) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplate_Placement) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_Placement) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplate_Placement) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_Placement) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_Placement) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_privateipadd.go b/cloudformation/ec2/aws-ec2-launchtemplate_privateipadd.go new file mode 100644 index 0000000000..68fd1effe3 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_privateipadd.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LaunchTemplate_PrivateIpAdd AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.PrivateIpAdd) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html +type LaunchTemplate_PrivateIpAdd struct { + + // Primary AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html#cfn-ec2-launchtemplate-privateipadd-primary + Primary bool `json:"Primary,omitempty"` + + // PrivateIpAddress AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html#cfn-ec2-launchtemplate-privateipadd-privateipaddress + PrivateIpAddress string `json:"PrivateIpAddress,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_PrivateIpAdd) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.PrivateIpAdd" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_PrivateIpAdd) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_PrivateIpAdd) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_PrivateIpAdd) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_PrivateIpAdd) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_PrivateIpAdd) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_PrivateIpAdd) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_spotoptions.go b/cloudformation/ec2/aws-ec2-launchtemplate_spotoptions.go similarity index 82% rename from cloudformation/resources/aws-ec2-launchtemplate_spotoptions.go rename to cloudformation/ec2/aws-ec2-launchtemplate_spotoptions.go index fcecb2d1c7..e659830067 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_spotoptions.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_spotoptions.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2LaunchTemplate_SpotOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.SpotOptions) +// LaunchTemplate_SpotOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.SpotOptions) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html -type AWSEC2LaunchTemplate_SpotOptions struct { +type LaunchTemplate_SpotOptions struct { // BlockDurationMinutes AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSEC2LaunchTemplate_SpotOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_SpotOptions) AWSCloudFormationType() string { +func (r *LaunchTemplate_SpotOptions) AWSCloudFormationType() string { return "AWS::EC2::LaunchTemplate.SpotOptions" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_SpotOptions) DependsOn() []string { +func (r *LaunchTemplate_SpotOptions) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_SpotOptions) SetDependsOn(dependencies []string) { +func (r *LaunchTemplate_SpotOptions) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_SpotOptions) Metadata() map[string]interface{} { +func (r *LaunchTemplate_SpotOptions) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_SpotOptions) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplate_SpotOptions) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_SpotOptions) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplate_SpotOptions) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_SpotOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_SpotOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_tagspecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_tagspecification.go new file mode 100644 index 0000000000..f3858a74c8 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-launchtemplate_tagspecification.go @@ -0,0 +1,71 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) + +// LaunchTemplate_TagSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.TagSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html +type LaunchTemplate_TagSpecification struct { + + // ResourceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html#cfn-ec2-launchtemplate-tagspecification-resourcetype + ResourceType string `json:"ResourceType,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html#cfn-ec2-launchtemplate-tagspecification-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LaunchTemplate_TagSpecification) AWSCloudFormationType() string { + return "AWS::EC2::LaunchTemplate.TagSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_TagSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LaunchTemplate_TagSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_TagSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LaunchTemplate_TagSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_TagSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LaunchTemplate_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-natgateway.go b/cloudformation/ec2/aws-ec2-natgateway.go similarity index 81% rename from cloudformation/resources/aws-ec2-natgateway.go rename to cloudformation/ec2/aws-ec2-natgateway.go index 985fae1f84..c529e87b91 100644 --- a/cloudformation/resources/aws-ec2-natgateway.go +++ b/cloudformation/ec2/aws-ec2-natgateway.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2NatGateway AWS CloudFormation Resource (AWS::EC2::NatGateway) +// NatGateway AWS CloudFormation Resource (AWS::EC2::NatGateway) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html -type AWSEC2NatGateway struct { +type NatGateway struct { // AllocationId AWS CloudFormation Property // Required: true @@ -24,7 +26,7 @@ type AWSEC2NatGateway struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +39,50 @@ type AWSEC2NatGateway struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NatGateway) AWSCloudFormationType() string { +func (r *NatGateway) AWSCloudFormationType() string { return "AWS::EC2::NatGateway" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NatGateway) DependsOn() []string { +func (r *NatGateway) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NatGateway) SetDependsOn(dependencies []string) { +func (r *NatGateway) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NatGateway) Metadata() map[string]interface{} { +func (r *NatGateway) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NatGateway) SetMetadata(metadata map[string]interface{}) { +func (r *NatGateway) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NatGateway) DeletionPolicy() policies.DeletionPolicy { +func (r *NatGateway) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NatGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NatGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2NatGateway) MarshalJSON() ([]byte, error) { - type Properties AWSEC2NatGateway +func (r NatGateway) MarshalJSON() ([]byte, error) { + type Properties NatGateway return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +100,8 @@ func (r AWSEC2NatGateway) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2NatGateway) UnmarshalJSON(b []byte) error { - type Properties AWSEC2NatGateway +func (r *NatGateway) UnmarshalJSON(b []byte) error { + type Properties NatGateway res := &struct { Type string Properties *Properties @@ -118,7 +120,7 @@ func (r *AWSEC2NatGateway) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2NatGateway(*res.Properties) + *r = NatGateway(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-networkacl.go b/cloudformation/ec2/aws-ec2-networkacl.go similarity index 80% rename from cloudformation/resources/aws-ec2-networkacl.go rename to cloudformation/ec2/aws-ec2-networkacl.go index 9b6d00a96b..57021913a7 100644 --- a/cloudformation/resources/aws-ec2-networkacl.go +++ b/cloudformation/ec2/aws-ec2-networkacl.go @@ -1,20 +1,22 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2NetworkAcl AWS CloudFormation Resource (AWS::EC2::NetworkAcl) +// NetworkAcl AWS CloudFormation Resource (AWS::EC2::NetworkAcl) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html -type AWSEC2NetworkAcl struct { +type NetworkAcl struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcId AWS CloudFormation Property // Required: true @@ -32,50 +34,50 @@ type AWSEC2NetworkAcl struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkAcl) AWSCloudFormationType() string { +func (r *NetworkAcl) AWSCloudFormationType() string { return "AWS::EC2::NetworkAcl" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkAcl) DependsOn() []string { +func (r *NetworkAcl) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkAcl) SetDependsOn(dependencies []string) { +func (r *NetworkAcl) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkAcl) Metadata() map[string]interface{} { +func (r *NetworkAcl) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkAcl) SetMetadata(metadata map[string]interface{}) { +func (r *NetworkAcl) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkAcl) DeletionPolicy() policies.DeletionPolicy { +func (r *NetworkAcl) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkAcl) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NetworkAcl) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2NetworkAcl) MarshalJSON() ([]byte, error) { - type Properties AWSEC2NetworkAcl +func (r NetworkAcl) MarshalJSON() ([]byte, error) { + type Properties NetworkAcl return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +95,8 @@ func (r AWSEC2NetworkAcl) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2NetworkAcl) UnmarshalJSON(b []byte) error { - type Properties AWSEC2NetworkAcl +func (r *NetworkAcl) UnmarshalJSON(b []byte) error { + type Properties NetworkAcl res := &struct { Type string Properties *Properties @@ -113,7 +115,7 @@ func (r *AWSEC2NetworkAcl) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2NetworkAcl(*res.Properties) + *r = NetworkAcl(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-networkaclentry.go b/cloudformation/ec2/aws-ec2-networkaclentry.go similarity index 83% rename from cloudformation/resources/aws-ec2-networkaclentry.go rename to cloudformation/ec2/aws-ec2-networkaclentry.go index 2e940ff888..e677a6dcf3 100644 --- a/cloudformation/resources/aws-ec2-networkaclentry.go +++ b/cloudformation/ec2/aws-ec2-networkaclentry.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2NetworkAclEntry AWS CloudFormation Resource (AWS::EC2::NetworkAclEntry) +// NetworkAclEntry AWS CloudFormation Resource (AWS::EC2::NetworkAclEntry) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html -type AWSEC2NetworkAclEntry struct { +type NetworkAclEntry struct { // CidrBlock AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSEC2NetworkAclEntry struct { // Icmp AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-icmp - Icmp *AWSEC2NetworkAclEntry_Icmp `json:"Icmp,omitempty"` + Icmp *NetworkAclEntry_Icmp `json:"Icmp,omitempty"` // Ipv6CidrBlock AWS CloudFormation Property // Required: false @@ -39,7 +40,7 @@ type AWSEC2NetworkAclEntry struct { // PortRange AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-portrange - PortRange *AWSEC2NetworkAclEntry_PortRange `json:"PortRange,omitempty"` + PortRange *NetworkAclEntry_PortRange `json:"PortRange,omitempty"` // Protocol AWS CloudFormation Property // Required: true @@ -67,50 +68,50 @@ type AWSEC2NetworkAclEntry struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkAclEntry) AWSCloudFormationType() string { +func (r *NetworkAclEntry) AWSCloudFormationType() string { return "AWS::EC2::NetworkAclEntry" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkAclEntry) DependsOn() []string { +func (r *NetworkAclEntry) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkAclEntry) SetDependsOn(dependencies []string) { +func (r *NetworkAclEntry) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkAclEntry) Metadata() map[string]interface{} { +func (r *NetworkAclEntry) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkAclEntry) SetMetadata(metadata map[string]interface{}) { +func (r *NetworkAclEntry) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkAclEntry) DeletionPolicy() policies.DeletionPolicy { +func (r *NetworkAclEntry) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkAclEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NetworkAclEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2NetworkAclEntry) MarshalJSON() ([]byte, error) { - type Properties AWSEC2NetworkAclEntry +func (r NetworkAclEntry) MarshalJSON() ([]byte, error) { + type Properties NetworkAclEntry return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSEC2NetworkAclEntry) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2NetworkAclEntry) UnmarshalJSON(b []byte) error { - type Properties AWSEC2NetworkAclEntry +func (r *NetworkAclEntry) UnmarshalJSON(b []byte) error { + type Properties NetworkAclEntry res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSEC2NetworkAclEntry) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2NetworkAclEntry(*res.Properties) + *r = NetworkAclEntry(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-networkaclentry_icmp.go b/cloudformation/ec2/aws-ec2-networkaclentry_icmp.go similarity index 75% rename from cloudformation/resources/aws-ec2-networkaclentry_icmp.go rename to cloudformation/ec2/aws-ec2-networkaclentry_icmp.go index 46542385b2..63fa7a787a 100644 --- a/cloudformation/resources/aws-ec2-networkaclentry_icmp.go +++ b/cloudformation/ec2/aws-ec2-networkaclentry_icmp.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2NetworkAclEntry_Icmp AWS CloudFormation Resource (AWS::EC2::NetworkAclEntry.Icmp) +// NetworkAclEntry_Icmp AWS CloudFormation Resource (AWS::EC2::NetworkAclEntry.Icmp) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html -type AWSEC2NetworkAclEntry_Icmp struct { +type NetworkAclEntry_Icmp struct { // Code AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2NetworkAclEntry_Icmp struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkAclEntry_Icmp) AWSCloudFormationType() string { +func (r *NetworkAclEntry_Icmp) AWSCloudFormationType() string { return "AWS::EC2::NetworkAclEntry.Icmp" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkAclEntry_Icmp) DependsOn() []string { +func (r *NetworkAclEntry_Icmp) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkAclEntry_Icmp) SetDependsOn(dependencies []string) { +func (r *NetworkAclEntry_Icmp) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkAclEntry_Icmp) Metadata() map[string]interface{} { +func (r *NetworkAclEntry_Icmp) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkAclEntry_Icmp) SetMetadata(metadata map[string]interface{}) { +func (r *NetworkAclEntry_Icmp) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkAclEntry_Icmp) DeletionPolicy() policies.DeletionPolicy { +func (r *NetworkAclEntry_Icmp) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkAclEntry_Icmp) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NetworkAclEntry_Icmp) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-networkaclentry_portrange.go b/cloudformation/ec2/aws-ec2-networkaclentry_portrange.go new file mode 100644 index 0000000000..0bb95f1458 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-networkaclentry_portrange.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// NetworkAclEntry_PortRange AWS CloudFormation Resource (AWS::EC2::NetworkAclEntry.PortRange) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html +type NetworkAclEntry_PortRange struct { + + // From AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-from + From int `json:"From,omitempty"` + + // To AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-to + To int `json:"To,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *NetworkAclEntry_PortRange) AWSCloudFormationType() string { + return "AWS::EC2::NetworkAclEntry.PortRange" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NetworkAclEntry_PortRange) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NetworkAclEntry_PortRange) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NetworkAclEntry_PortRange) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NetworkAclEntry_PortRange) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NetworkAclEntry_PortRange) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NetworkAclEntry_PortRange) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-networkinterface.go b/cloudformation/ec2/aws-ec2-networkinterface.go similarity index 83% rename from cloudformation/resources/aws-ec2-networkinterface.go rename to cloudformation/ec2/aws-ec2-networkinterface.go index 561847c4eb..e52650ab5d 100644 --- a/cloudformation/resources/aws-ec2-networkinterface.go +++ b/cloudformation/ec2/aws-ec2-networkinterface.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2NetworkInterface AWS CloudFormation Resource (AWS::EC2::NetworkInterface) +// NetworkInterface AWS CloudFormation Resource (AWS::EC2::NetworkInterface) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html -type AWSEC2NetworkInterface struct { +type NetworkInterface struct { // Description AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSEC2NetworkInterface struct { // Ipv6Addresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-ipv6addresses - Ipv6Addresses *AWSEC2NetworkInterface_InstanceIpv6Address `json:"Ipv6Addresses,omitempty"` + Ipv6Addresses *NetworkInterface_InstanceIpv6Address `json:"Ipv6Addresses,omitempty"` // PrivateIpAddress AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSEC2NetworkInterface struct { // PrivateIpAddresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-privateipaddresses - PrivateIpAddresses []AWSEC2NetworkInterface_PrivateIpAddressSpecification `json:"PrivateIpAddresses,omitempty"` + PrivateIpAddresses []NetworkInterface_PrivateIpAddressSpecification `json:"PrivateIpAddresses,omitempty"` // SecondaryPrivateIpAddressCount AWS CloudFormation Property // Required: false @@ -64,7 +66,7 @@ type AWSEC2NetworkInterface struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -77,50 +79,50 @@ type AWSEC2NetworkInterface struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkInterface) AWSCloudFormationType() string { +func (r *NetworkInterface) AWSCloudFormationType() string { return "AWS::EC2::NetworkInterface" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterface) DependsOn() []string { +func (r *NetworkInterface) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterface) SetDependsOn(dependencies []string) { +func (r *NetworkInterface) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterface) Metadata() map[string]interface{} { +func (r *NetworkInterface) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterface) SetMetadata(metadata map[string]interface{}) { +func (r *NetworkInterface) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterface) DeletionPolicy() policies.DeletionPolicy { +func (r *NetworkInterface) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterface) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NetworkInterface) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2NetworkInterface) MarshalJSON() ([]byte, error) { - type Properties AWSEC2NetworkInterface +func (r NetworkInterface) MarshalJSON() ([]byte, error) { + type Properties NetworkInterface return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +140,8 @@ func (r AWSEC2NetworkInterface) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2NetworkInterface) UnmarshalJSON(b []byte) error { - type Properties AWSEC2NetworkInterface +func (r *NetworkInterface) UnmarshalJSON(b []byte) error { + type Properties NetworkInterface res := &struct { Type string Properties *Properties @@ -158,7 +160,7 @@ func (r *AWSEC2NetworkInterface) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2NetworkInterface(*res.Properties) + *r = NetworkInterface(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ec2/aws-ec2-networkinterface_instanceipv6address.go b/cloudformation/ec2/aws-ec2-networkinterface_instanceipv6address.go new file mode 100644 index 0000000000..129557cd8c --- /dev/null +++ b/cloudformation/ec2/aws-ec2-networkinterface_instanceipv6address.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// NetworkInterface_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::NetworkInterface.InstanceIpv6Address) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html +type NetworkInterface_InstanceIpv6Address struct { + + // Ipv6Address AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html#cfn-ec2-networkinterface-instanceipv6address-ipv6address + Ipv6Address string `json:"Ipv6Address,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *NetworkInterface_InstanceIpv6Address) AWSCloudFormationType() string { + return "AWS::EC2::NetworkInterface.InstanceIpv6Address" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NetworkInterface_InstanceIpv6Address) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NetworkInterface_InstanceIpv6Address) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NetworkInterface_InstanceIpv6Address) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NetworkInterface_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NetworkInterface_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NetworkInterface_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-networkinterface_privateipaddressspecification.go b/cloudformation/ec2/aws-ec2-networkinterface_privateipaddressspecification.go new file mode 100644 index 0000000000..db3b2386fc --- /dev/null +++ b/cloudformation/ec2/aws-ec2-networkinterface_privateipaddressspecification.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// NetworkInterface_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::NetworkInterface.PrivateIpAddressSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html +type NetworkInterface_PrivateIpAddressSpecification struct { + + // Primary AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary + Primary bool `json:"Primary"` + + // PrivateIpAddress AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress + PrivateIpAddress string `json:"PrivateIpAddress,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *NetworkInterface_PrivateIpAddressSpecification) AWSCloudFormationType() string { + return "AWS::EC2::NetworkInterface.PrivateIpAddressSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NetworkInterface_PrivateIpAddressSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NetworkInterface_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NetworkInterface_PrivateIpAddressSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NetworkInterface_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NetworkInterface_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NetworkInterface_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-networkinterfaceattachment.go b/cloudformation/ec2/aws-ec2-networkinterfaceattachment.go similarity index 80% rename from cloudformation/resources/aws-ec2-networkinterfaceattachment.go rename to cloudformation/ec2/aws-ec2-networkinterfaceattachment.go index 979bef00a1..bc1c473912 100644 --- a/cloudformation/resources/aws-ec2-networkinterfaceattachment.go +++ b/cloudformation/ec2/aws-ec2-networkinterfaceattachment.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2NetworkInterfaceAttachment AWS CloudFormation Resource (AWS::EC2::NetworkInterfaceAttachment) +// NetworkInterfaceAttachment AWS CloudFormation Resource (AWS::EC2::NetworkInterfaceAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html -type AWSEC2NetworkInterfaceAttachment struct { +type NetworkInterfaceAttachment struct { // DeleteOnTermination AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSEC2NetworkInterfaceAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkInterfaceAttachment) AWSCloudFormationType() string { +func (r *NetworkInterfaceAttachment) AWSCloudFormationType() string { return "AWS::EC2::NetworkInterfaceAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterfaceAttachment) DependsOn() []string { +func (r *NetworkInterfaceAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterfaceAttachment) SetDependsOn(dependencies []string) { +func (r *NetworkInterfaceAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterfaceAttachment) Metadata() map[string]interface{} { +func (r *NetworkInterfaceAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterfaceAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *NetworkInterfaceAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterfaceAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *NetworkInterfaceAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterfaceAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NetworkInterfaceAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2NetworkInterfaceAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSEC2NetworkInterfaceAttachment +func (r NetworkInterfaceAttachment) MarshalJSON() ([]byte, error) { + type Properties NetworkInterfaceAttachment return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSEC2NetworkInterfaceAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2NetworkInterfaceAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSEC2NetworkInterfaceAttachment +func (r *NetworkInterfaceAttachment) UnmarshalJSON(b []byte) error { + type Properties NetworkInterfaceAttachment res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSEC2NetworkInterfaceAttachment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2NetworkInterfaceAttachment(*res.Properties) + *r = NetworkInterfaceAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-networkinterfacepermission.go b/cloudformation/ec2/aws-ec2-networkinterfacepermission.go similarity index 79% rename from cloudformation/resources/aws-ec2-networkinterfacepermission.go rename to cloudformation/ec2/aws-ec2-networkinterfacepermission.go index c58862a144..6fe8b3ef0b 100644 --- a/cloudformation/resources/aws-ec2-networkinterfacepermission.go +++ b/cloudformation/ec2/aws-ec2-networkinterfacepermission.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2NetworkInterfacePermission AWS CloudFormation Resource (AWS::EC2::NetworkInterfacePermission) +// NetworkInterfacePermission AWS CloudFormation Resource (AWS::EC2::NetworkInterfacePermission) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html -type AWSEC2NetworkInterfacePermission struct { +type NetworkInterfacePermission struct { // AwsAccountId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSEC2NetworkInterfacePermission struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkInterfacePermission) AWSCloudFormationType() string { +func (r *NetworkInterfacePermission) AWSCloudFormationType() string { return "AWS::EC2::NetworkInterfacePermission" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterfacePermission) DependsOn() []string { +func (r *NetworkInterfacePermission) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterfacePermission) SetDependsOn(dependencies []string) { +func (r *NetworkInterfacePermission) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterfacePermission) Metadata() map[string]interface{} { +func (r *NetworkInterfacePermission) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterfacePermission) SetMetadata(metadata map[string]interface{}) { +func (r *NetworkInterfacePermission) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterfacePermission) DeletionPolicy() policies.DeletionPolicy { +func (r *NetworkInterfacePermission) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterfacePermission) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NetworkInterfacePermission) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2NetworkInterfacePermission) MarshalJSON() ([]byte, error) { - type Properties AWSEC2NetworkInterfacePermission +func (r NetworkInterfacePermission) MarshalJSON() ([]byte, error) { + type Properties NetworkInterfacePermission return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSEC2NetworkInterfacePermission) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2NetworkInterfacePermission) UnmarshalJSON(b []byte) error { - type Properties AWSEC2NetworkInterfacePermission +func (r *NetworkInterfacePermission) UnmarshalJSON(b []byte) error { + type Properties NetworkInterfacePermission res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSEC2NetworkInterfacePermission) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2NetworkInterfacePermission(*res.Properties) + *r = NetworkInterfacePermission(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-placementgroup.go b/cloudformation/ec2/aws-ec2-placementgroup.go similarity index 79% rename from cloudformation/resources/aws-ec2-placementgroup.go rename to cloudformation/ec2/aws-ec2-placementgroup.go index ebffab6df3..c8239e3f0d 100644 --- a/cloudformation/resources/aws-ec2-placementgroup.go +++ b/cloudformation/ec2/aws-ec2-placementgroup.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2PlacementGroup AWS CloudFormation Resource (AWS::EC2::PlacementGroup) +// PlacementGroup AWS CloudFormation Resource (AWS::EC2::PlacementGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html -type AWSEC2PlacementGroup struct { +type PlacementGroup struct { // Strategy AWS CloudFormation Property // Required: false @@ -27,50 +28,50 @@ type AWSEC2PlacementGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2PlacementGroup) AWSCloudFormationType() string { +func (r *PlacementGroup) AWSCloudFormationType() string { return "AWS::EC2::PlacementGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2PlacementGroup) DependsOn() []string { +func (r *PlacementGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2PlacementGroup) SetDependsOn(dependencies []string) { +func (r *PlacementGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2PlacementGroup) Metadata() map[string]interface{} { +func (r *PlacementGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2PlacementGroup) SetMetadata(metadata map[string]interface{}) { +func (r *PlacementGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2PlacementGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *PlacementGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2PlacementGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PlacementGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2PlacementGroup) MarshalJSON() ([]byte, error) { - type Properties AWSEC2PlacementGroup +func (r PlacementGroup) MarshalJSON() ([]byte, error) { + type Properties PlacementGroup return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSEC2PlacementGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2PlacementGroup) UnmarshalJSON(b []byte) error { - type Properties AWSEC2PlacementGroup +func (r *PlacementGroup) UnmarshalJSON(b []byte) error { + type Properties PlacementGroup res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSEC2PlacementGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2PlacementGroup(*res.Properties) + *r = PlacementGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-route.go b/cloudformation/ec2/aws-ec2-route.go similarity index 88% rename from cloudformation/resources/aws-ec2-route.go rename to cloudformation/ec2/aws-ec2-route.go index 8072b3404c..8ae35fcf07 100644 --- a/cloudformation/resources/aws-ec2-route.go +++ b/cloudformation/ec2/aws-ec2-route.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2Route AWS CloudFormation Resource (AWS::EC2::Route) +// Route AWS CloudFormation Resource (AWS::EC2::Route) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html -type AWSEC2Route struct { +type Route struct { // DestinationCidrBlock AWS CloudFormation Property // Required: false @@ -72,50 +73,50 @@ type AWSEC2Route struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Route) AWSCloudFormationType() string { +func (r *Route) AWSCloudFormationType() string { return "AWS::EC2::Route" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Route) DependsOn() []string { +func (r *Route) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Route) SetDependsOn(dependencies []string) { +func (r *Route) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Route) Metadata() map[string]interface{} { +func (r *Route) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Route) SetMetadata(metadata map[string]interface{}) { +func (r *Route) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Route) DeletionPolicy() policies.DeletionPolicy { +func (r *Route) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Route) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2Route) MarshalJSON() ([]byte, error) { - type Properties AWSEC2Route +func (r Route) MarshalJSON() ([]byte, error) { + type Properties Route return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSEC2Route) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2Route) UnmarshalJSON(b []byte) error { - type Properties AWSEC2Route +func (r *Route) UnmarshalJSON(b []byte) error { + type Properties Route res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSEC2Route) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2Route(*res.Properties) + *r = Route(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-routetable.go b/cloudformation/ec2/aws-ec2-routetable.go similarity index 80% rename from cloudformation/resources/aws-ec2-routetable.go rename to cloudformation/ec2/aws-ec2-routetable.go index dd13eacdb4..32ac157c71 100644 --- a/cloudformation/resources/aws-ec2-routetable.go +++ b/cloudformation/ec2/aws-ec2-routetable.go @@ -1,20 +1,22 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2RouteTable AWS CloudFormation Resource (AWS::EC2::RouteTable) +// RouteTable AWS CloudFormation Resource (AWS::EC2::RouteTable) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html -type AWSEC2RouteTable struct { +type RouteTable struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcId AWS CloudFormation Property // Required: true @@ -32,50 +34,50 @@ type AWSEC2RouteTable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2RouteTable) AWSCloudFormationType() string { +func (r *RouteTable) AWSCloudFormationType() string { return "AWS::EC2::RouteTable" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2RouteTable) DependsOn() []string { +func (r *RouteTable) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2RouteTable) SetDependsOn(dependencies []string) { +func (r *RouteTable) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2RouteTable) Metadata() map[string]interface{} { +func (r *RouteTable) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2RouteTable) SetMetadata(metadata map[string]interface{}) { +func (r *RouteTable) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2RouteTable) DeletionPolicy() policies.DeletionPolicy { +func (r *RouteTable) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2RouteTable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RouteTable) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2RouteTable) MarshalJSON() ([]byte, error) { - type Properties AWSEC2RouteTable +func (r RouteTable) MarshalJSON() ([]byte, error) { + type Properties RouteTable return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +95,8 @@ func (r AWSEC2RouteTable) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2RouteTable) UnmarshalJSON(b []byte) error { - type Properties AWSEC2RouteTable +func (r *RouteTable) UnmarshalJSON(b []byte) error { + type Properties RouteTable res := &struct { Type string Properties *Properties @@ -113,7 +115,7 @@ func (r *AWSEC2RouteTable) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2RouteTable(*res.Properties) + *r = RouteTable(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-securitygroup.go b/cloudformation/ec2/aws-ec2-securitygroup.go similarity index 80% rename from cloudformation/resources/aws-ec2-securitygroup.go rename to cloudformation/ec2/aws-ec2-securitygroup.go index 84882946ef..a3a44c8072 100644 --- a/cloudformation/resources/aws-ec2-securitygroup.go +++ b/cloudformation/ec2/aws-ec2-securitygroup.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2SecurityGroup AWS CloudFormation Resource (AWS::EC2::SecurityGroup) +// SecurityGroup AWS CloudFormation Resource (AWS::EC2::SecurityGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html -type AWSEC2SecurityGroup struct { +type SecurityGroup struct { // GroupDescription AWS CloudFormation Property // Required: true @@ -24,17 +26,17 @@ type AWSEC2SecurityGroup struct { // SecurityGroupEgress AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupegress - SecurityGroupEgress []AWSEC2SecurityGroup_Egress `json:"SecurityGroupEgress,omitempty"` + SecurityGroupEgress []SecurityGroup_Egress `json:"SecurityGroupEgress,omitempty"` // SecurityGroupIngress AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupingress - SecurityGroupIngress []AWSEC2SecurityGroup_Ingress `json:"SecurityGroupIngress,omitempty"` + SecurityGroupIngress []SecurityGroup_Ingress `json:"SecurityGroupIngress,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcId AWS CloudFormation Property // Required: false @@ -52,50 +54,50 @@ type AWSEC2SecurityGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SecurityGroup) AWSCloudFormationType() string { +func (r *SecurityGroup) AWSCloudFormationType() string { return "AWS::EC2::SecurityGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroup) DependsOn() []string { +func (r *SecurityGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroup) SetDependsOn(dependencies []string) { +func (r *SecurityGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroup) Metadata() map[string]interface{} { +func (r *SecurityGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroup) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2SecurityGroup) MarshalJSON() ([]byte, error) { - type Properties AWSEC2SecurityGroup +func (r SecurityGroup) MarshalJSON() ([]byte, error) { + type Properties SecurityGroup return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +115,8 @@ func (r AWSEC2SecurityGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2SecurityGroup) UnmarshalJSON(b []byte) error { - type Properties AWSEC2SecurityGroup +func (r *SecurityGroup) UnmarshalJSON(b []byte) error { + type Properties SecurityGroup res := &struct { Type string Properties *Properties @@ -133,7 +135,7 @@ func (r *AWSEC2SecurityGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2SecurityGroup(*res.Properties) + *r = SecurityGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-securitygroup_egress.go b/cloudformation/ec2/aws-ec2-securitygroup_egress.go similarity index 84% rename from cloudformation/resources/aws-ec2-securitygroup_egress.go rename to cloudformation/ec2/aws-ec2-securitygroup_egress.go index a37cac6478..7a219a26a2 100644 --- a/cloudformation/resources/aws-ec2-securitygroup_egress.go +++ b/cloudformation/ec2/aws-ec2-securitygroup_egress.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SecurityGroup_Egress AWS CloudFormation Resource (AWS::EC2::SecurityGroup.Egress) +// SecurityGroup_Egress AWS CloudFormation Resource (AWS::EC2::SecurityGroup.Egress) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html -type AWSEC2SecurityGroup_Egress struct { +type SecurityGroup_Egress struct { // CidrIp AWS CloudFormation Property // Required: false @@ -57,42 +59,42 @@ type AWSEC2SecurityGroup_Egress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SecurityGroup_Egress) AWSCloudFormationType() string { +func (r *SecurityGroup_Egress) AWSCloudFormationType() string { return "AWS::EC2::SecurityGroup.Egress" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroup_Egress) DependsOn() []string { +func (r *SecurityGroup_Egress) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroup_Egress) SetDependsOn(dependencies []string) { +func (r *SecurityGroup_Egress) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroup_Egress) Metadata() map[string]interface{} { +func (r *SecurityGroup_Egress) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroup_Egress) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityGroup_Egress) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroup_Egress) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityGroup_Egress) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroup_Egress) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityGroup_Egress) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-securitygroup_ingress.go b/cloudformation/ec2/aws-ec2-securitygroup_ingress.go similarity index 85% rename from cloudformation/resources/aws-ec2-securitygroup_ingress.go rename to cloudformation/ec2/aws-ec2-securitygroup_ingress.go index 2b4cdd6a78..44d23f7f2b 100644 --- a/cloudformation/resources/aws-ec2-securitygroup_ingress.go +++ b/cloudformation/ec2/aws-ec2-securitygroup_ingress.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SecurityGroup_Ingress AWS CloudFormation Resource (AWS::EC2::SecurityGroup.Ingress) +// SecurityGroup_Ingress AWS CloudFormation Resource (AWS::EC2::SecurityGroup.Ingress) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html -type AWSEC2SecurityGroup_Ingress struct { +type SecurityGroup_Ingress struct { // CidrIp AWS CloudFormation Property // Required: false @@ -67,42 +69,42 @@ type AWSEC2SecurityGroup_Ingress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SecurityGroup_Ingress) AWSCloudFormationType() string { +func (r *SecurityGroup_Ingress) AWSCloudFormationType() string { return "AWS::EC2::SecurityGroup.Ingress" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroup_Ingress) DependsOn() []string { +func (r *SecurityGroup_Ingress) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroup_Ingress) SetDependsOn(dependencies []string) { +func (r *SecurityGroup_Ingress) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroup_Ingress) Metadata() map[string]interface{} { +func (r *SecurityGroup_Ingress) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroup_Ingress) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityGroup_Ingress) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroup_Ingress) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityGroup_Ingress) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroup_Ingress) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityGroup_Ingress) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-securitygroupegress.go b/cloudformation/ec2/aws-ec2-securitygroupegress.go similarity index 85% rename from cloudformation/resources/aws-ec2-securitygroupegress.go rename to cloudformation/ec2/aws-ec2-securitygroupegress.go index 8d023b6ae3..9986f6cef6 100644 --- a/cloudformation/resources/aws-ec2-securitygroupegress.go +++ b/cloudformation/ec2/aws-ec2-securitygroupegress.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2SecurityGroupEgress AWS CloudFormation Resource (AWS::EC2::SecurityGroupEgress) +// SecurityGroupEgress AWS CloudFormation Resource (AWS::EC2::SecurityGroupEgress) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html -type AWSEC2SecurityGroupEgress struct { +type SecurityGroupEgress struct { // CidrIp AWS CloudFormation Property // Required: false @@ -67,50 +68,50 @@ type AWSEC2SecurityGroupEgress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SecurityGroupEgress) AWSCloudFormationType() string { +func (r *SecurityGroupEgress) AWSCloudFormationType() string { return "AWS::EC2::SecurityGroupEgress" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroupEgress) DependsOn() []string { +func (r *SecurityGroupEgress) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroupEgress) SetDependsOn(dependencies []string) { +func (r *SecurityGroupEgress) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroupEgress) Metadata() map[string]interface{} { +func (r *SecurityGroupEgress) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroupEgress) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityGroupEgress) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroupEgress) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityGroupEgress) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroupEgress) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityGroupEgress) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2SecurityGroupEgress) MarshalJSON() ([]byte, error) { - type Properties AWSEC2SecurityGroupEgress +func (r SecurityGroupEgress) MarshalJSON() ([]byte, error) { + type Properties SecurityGroupEgress return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSEC2SecurityGroupEgress) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2SecurityGroupEgress) UnmarshalJSON(b []byte) error { - type Properties AWSEC2SecurityGroupEgress +func (r *SecurityGroupEgress) UnmarshalJSON(b []byte) error { + type Properties SecurityGroupEgress res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSEC2SecurityGroupEgress) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2SecurityGroupEgress(*res.Properties) + *r = SecurityGroupEgress(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-securitygroupingress.go b/cloudformation/ec2/aws-ec2-securitygroupingress.go similarity index 86% rename from cloudformation/resources/aws-ec2-securitygroupingress.go rename to cloudformation/ec2/aws-ec2-securitygroupingress.go index 17906cf588..9047127183 100644 --- a/cloudformation/resources/aws-ec2-securitygroupingress.go +++ b/cloudformation/ec2/aws-ec2-securitygroupingress.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2SecurityGroupIngress AWS CloudFormation Resource (AWS::EC2::SecurityGroupIngress) +// SecurityGroupIngress AWS CloudFormation Resource (AWS::EC2::SecurityGroupIngress) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html -type AWSEC2SecurityGroupIngress struct { +type SecurityGroupIngress struct { // CidrIp AWS CloudFormation Property // Required: false @@ -82,50 +83,50 @@ type AWSEC2SecurityGroupIngress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SecurityGroupIngress) AWSCloudFormationType() string { +func (r *SecurityGroupIngress) AWSCloudFormationType() string { return "AWS::EC2::SecurityGroupIngress" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroupIngress) DependsOn() []string { +func (r *SecurityGroupIngress) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SecurityGroupIngress) SetDependsOn(dependencies []string) { +func (r *SecurityGroupIngress) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroupIngress) Metadata() map[string]interface{} { +func (r *SecurityGroupIngress) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SecurityGroupIngress) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityGroupIngress) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroupIngress) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityGroupIngress) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SecurityGroupIngress) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityGroupIngress) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2SecurityGroupIngress) MarshalJSON() ([]byte, error) { - type Properties AWSEC2SecurityGroupIngress +func (r SecurityGroupIngress) MarshalJSON() ([]byte, error) { + type Properties SecurityGroupIngress return json.Marshal(&struct { Type string Properties Properties @@ -143,8 +144,8 @@ func (r AWSEC2SecurityGroupIngress) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2SecurityGroupIngress) UnmarshalJSON(b []byte) error { - type Properties AWSEC2SecurityGroupIngress +func (r *SecurityGroupIngress) UnmarshalJSON(b []byte) error { + type Properties SecurityGroupIngress res := &struct { Type string Properties *Properties @@ -163,7 +164,7 @@ func (r *AWSEC2SecurityGroupIngress) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2SecurityGroupIngress(*res.Properties) + *r = SecurityGroupIngress(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-spotfleet.go b/cloudformation/ec2/aws-ec2-spotfleet.go similarity index 78% rename from cloudformation/resources/aws-ec2-spotfleet.go rename to cloudformation/ec2/aws-ec2-spotfleet.go index f260594c33..2a4dcebe47 100644 --- a/cloudformation/resources/aws-ec2-spotfleet.go +++ b/cloudformation/ec2/aws-ec2-spotfleet.go @@ -1,20 +1,21 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2SpotFleet AWS CloudFormation Resource (AWS::EC2::SpotFleet) +// SpotFleet AWS CloudFormation Resource (AWS::EC2::SpotFleet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html -type AWSEC2SpotFleet struct { +type SpotFleet struct { // SpotFleetRequestConfigData AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata - SpotFleetRequestConfigData *AWSEC2SpotFleet_SpotFleetRequestConfigData `json:"SpotFleetRequestConfigData,omitempty"` + SpotFleetRequestConfigData *SpotFleet_SpotFleetRequestConfigData `json:"SpotFleetRequestConfigData,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,50 +28,50 @@ type AWSEC2SpotFleet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet) AWSCloudFormationType() string { +func (r *SpotFleet) AWSCloudFormationType() string { return "AWS::EC2::SpotFleet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet) DependsOn() []string { +func (r *SpotFleet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet) SetDependsOn(dependencies []string) { +func (r *SpotFleet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet) Metadata() map[string]interface{} { +func (r *SpotFleet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet) SetMetadata(metadata map[string]interface{}) { +func (r *SpotFleet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet) DeletionPolicy() policies.DeletionPolicy { +func (r *SpotFleet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2SpotFleet) MarshalJSON() ([]byte, error) { - type Properties AWSEC2SpotFleet +func (r SpotFleet) MarshalJSON() ([]byte, error) { + type Properties SpotFleet return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSEC2SpotFleet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2SpotFleet) UnmarshalJSON(b []byte) error { - type Properties AWSEC2SpotFleet +func (r *SpotFleet) UnmarshalJSON(b []byte) error { + type Properties SpotFleet res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSEC2SpotFleet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2SpotFleet(*res.Properties) + *r = SpotFleet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-spotfleet_blockdevicemapping.go b/cloudformation/ec2/aws-ec2-spotfleet_blockdevicemapping.go similarity index 77% rename from cloudformation/resources/aws-ec2-spotfleet_blockdevicemapping.go rename to cloudformation/ec2/aws-ec2-spotfleet_blockdevicemapping.go index 784ba878b8..8928780a38 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_blockdevicemapping.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_blockdevicemapping.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_BlockDeviceMapping AWS CloudFormation Resource (AWS::EC2::SpotFleet.BlockDeviceMapping) +// SpotFleet_BlockDeviceMapping AWS CloudFormation Resource (AWS::EC2::SpotFleet.BlockDeviceMapping) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html -type AWSEC2SpotFleet_BlockDeviceMapping struct { +type SpotFleet_BlockDeviceMapping struct { // DeviceName AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSEC2SpotFleet_BlockDeviceMapping struct { // Ebs AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-ebs - Ebs *AWSEC2SpotFleet_EbsBlockDevice `json:"Ebs,omitempty"` + Ebs *SpotFleet_EbsBlockDevice `json:"Ebs,omitempty"` // NoDevice AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSEC2SpotFleet_BlockDeviceMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_BlockDeviceMapping) AWSCloudFormationType() string { +func (r *SpotFleet_BlockDeviceMapping) AWSCloudFormationType() string { return "AWS::EC2::SpotFleet.BlockDeviceMapping" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_BlockDeviceMapping) DependsOn() []string { +func (r *SpotFleet_BlockDeviceMapping) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_BlockDeviceMapping) SetDependsOn(dependencies []string) { +func (r *SpotFleet_BlockDeviceMapping) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_BlockDeviceMapping) Metadata() map[string]interface{} { +func (r *SpotFleet_BlockDeviceMapping) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { +func (r *SpotFleet_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { +func (r *SpotFleet_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancer.go b/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancer.go new file mode 100644 index 0000000000..ef3228b11a --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancer.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_ClassicLoadBalancer AWS CloudFormation Resource (AWS::EC2::SpotFleet.ClassicLoadBalancer) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancer.html +type SpotFleet_ClassicLoadBalancer struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancer.html#cfn-ec2-spotfleet-classicloadbalancer-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_ClassicLoadBalancer) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.ClassicLoadBalancer" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_ClassicLoadBalancer) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_ClassicLoadBalancer) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_ClassicLoadBalancer) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_ClassicLoadBalancer) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_ClassicLoadBalancer) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_ClassicLoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancersconfig.go b/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancersconfig.go new file mode 100644 index 0000000000..550b35939a --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancersconfig.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_ClassicLoadBalancersConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.ClassicLoadBalancersConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html +type SpotFleet_ClassicLoadBalancersConfig struct { + + // ClassicLoadBalancers AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html#cfn-ec2-spotfleet-classicloadbalancersconfig-classicloadbalancers + ClassicLoadBalancers []SpotFleet_ClassicLoadBalancer `json:"ClassicLoadBalancers,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_ClassicLoadBalancersConfig) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.ClassicLoadBalancersConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_ClassicLoadBalancersConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_ClassicLoadBalancersConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_ClassicLoadBalancersConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_ClassicLoadBalancersConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_ClassicLoadBalancersConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_ClassicLoadBalancersConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-spotfleet_ebsblockdevice.go b/cloudformation/ec2/aws-ec2-spotfleet_ebsblockdevice.go similarity index 82% rename from cloudformation/resources/aws-ec2-spotfleet_ebsblockdevice.go rename to cloudformation/ec2/aws-ec2-spotfleet_ebsblockdevice.go index a43eea42f2..89870fa680 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_ebsblockdevice.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_ebsblockdevice.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_EbsBlockDevice AWS CloudFormation Resource (AWS::EC2::SpotFleet.EbsBlockDevice) +// SpotFleet_EbsBlockDevice AWS CloudFormation Resource (AWS::EC2::SpotFleet.EbsBlockDevice) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html -type AWSEC2SpotFleet_EbsBlockDevice struct { +type SpotFleet_EbsBlockDevice struct { // DeleteOnTermination AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSEC2SpotFleet_EbsBlockDevice struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_EbsBlockDevice) AWSCloudFormationType() string { +func (r *SpotFleet_EbsBlockDevice) AWSCloudFormationType() string { return "AWS::EC2::SpotFleet.EbsBlockDevice" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_EbsBlockDevice) DependsOn() []string { +func (r *SpotFleet_EbsBlockDevice) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_EbsBlockDevice) SetDependsOn(dependencies []string) { +func (r *SpotFleet_EbsBlockDevice) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_EbsBlockDevice) Metadata() map[string]interface{} { +func (r *SpotFleet_EbsBlockDevice) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_EbsBlockDevice) SetMetadata(metadata map[string]interface{}) { +func (r *SpotFleet_EbsBlockDevice) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_EbsBlockDevice) DeletionPolicy() policies.DeletionPolicy { +func (r *SpotFleet_EbsBlockDevice) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_EbsBlockDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_EbsBlockDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go b/cloudformation/ec2/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go new file mode 100644 index 0000000000..3e2f1e0d89 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go @@ -0,0 +1,75 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_FleetLaunchTemplateSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.FleetLaunchTemplateSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html +type SpotFleet_FleetLaunchTemplateSpecification struct { + + // LaunchTemplateId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-launchtemplateid + LaunchTemplateId string `json:"LaunchTemplateId,omitempty"` + + // LaunchTemplateName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-launchtemplatename + LaunchTemplateName string `json:"LaunchTemplateName,omitempty"` + + // Version AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_FleetLaunchTemplateSpecification) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.FleetLaunchTemplateSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_FleetLaunchTemplateSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_FleetLaunchTemplateSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_FleetLaunchTemplateSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_FleetLaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_FleetLaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_FleetLaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-spotfleet_groupidentifier.go b/cloudformation/ec2/aws-ec2-spotfleet_groupidentifier.go new file mode 100644 index 0000000000..73c1563057 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_groupidentifier.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_GroupIdentifier AWS CloudFormation Resource (AWS::EC2::SpotFleet.GroupIdentifier) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html +type SpotFleet_GroupIdentifier struct { + + // GroupId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html#cfn-ec2-spotfleet-groupidentifier-groupid + GroupId string `json:"GroupId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_GroupIdentifier) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.GroupIdentifier" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_GroupIdentifier) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_GroupIdentifier) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_GroupIdentifier) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_GroupIdentifier) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_GroupIdentifier) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_GroupIdentifier) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-spotfleet_iaminstanceprofilespecification.go b/cloudformation/ec2/aws-ec2-spotfleet_iaminstanceprofilespecification.go new file mode 100644 index 0000000000..7802fcb699 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_iaminstanceprofilespecification.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_IamInstanceProfileSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.IamInstanceProfileSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html +type SpotFleet_IamInstanceProfileSpecification struct { + + // Arn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html#cfn-ec2-spotfleet-iaminstanceprofilespecification-arn + Arn string `json:"Arn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_IamInstanceProfileSpecification) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.IamInstanceProfileSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_IamInstanceProfileSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_IamInstanceProfileSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_IamInstanceProfileSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_IamInstanceProfileSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_IamInstanceProfileSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_IamInstanceProfileSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-spotfleet_instanceipv6address.go b/cloudformation/ec2/aws-ec2-spotfleet_instanceipv6address.go new file mode 100644 index 0000000000..3b4e477896 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_instanceipv6address.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::SpotFleet.InstanceIpv6Address) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html +type SpotFleet_InstanceIpv6Address struct { + + // Ipv6Address AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html#cfn-ec2-spotfleet-instanceipv6address-ipv6address + Ipv6Address string `json:"Ipv6Address,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_InstanceIpv6Address) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.InstanceIpv6Address" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_InstanceIpv6Address) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_InstanceIpv6Address) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_InstanceIpv6Address) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-spotfleet_instancenetworkinterfacespecification.go b/cloudformation/ec2/aws-ec2-spotfleet_instancenetworkinterfacespecification.go similarity index 82% rename from cloudformation/resources/aws-ec2-spotfleet_instancenetworkinterfacespecification.go rename to cloudformation/ec2/aws-ec2-spotfleet_instancenetworkinterfacespecification.go index 05f64ed899..6a00ffe990 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_instancenetworkinterfacespecification.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_instancenetworkinterfacespecification.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.InstanceNetworkInterfaceSpecification) +// SpotFleet_InstanceNetworkInterfaceSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.InstanceNetworkInterfaceSpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html -type AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification struct { +type SpotFleet_InstanceNetworkInterfaceSpecification struct { // AssociatePublicIpAddress AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification struct { // Ipv6Addresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-ipv6addresses - Ipv6Addresses []AWSEC2SpotFleet_InstanceIpv6Address `json:"Ipv6Addresses,omitempty"` + Ipv6Addresses []SpotFleet_InstanceIpv6Address `json:"Ipv6Addresses,omitempty"` // NetworkInterfaceId AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification struct { // PrivateIpAddresses AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-privateipaddresses - PrivateIpAddresses []AWSEC2SpotFleet_PrivateIpAddressSpecification `json:"PrivateIpAddresses,omitempty"` + PrivateIpAddresses []SpotFleet_PrivateIpAddressSpecification `json:"PrivateIpAddresses,omitempty"` // SecondaryPrivateIpAddressCount AWS CloudFormation Property // Required: false @@ -72,42 +74,42 @@ type AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification) AWSCloudFormationType() string { +func (r *SpotFleet_InstanceNetworkInterfaceSpecification) AWSCloudFormationType() string { return "AWS::EC2::SpotFleet.InstanceNetworkInterfaceSpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification) DependsOn() []string { +func (r *SpotFleet_InstanceNetworkInterfaceSpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification) SetDependsOn(dependencies []string) { +func (r *SpotFleet_InstanceNetworkInterfaceSpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification) Metadata() map[string]interface{} { +func (r *SpotFleet_InstanceNetworkInterfaceSpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification) SetMetadata(metadata map[string]interface{}) { +func (r *SpotFleet_InstanceNetworkInterfaceSpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *SpotFleet_InstanceNetworkInterfaceSpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_InstanceNetworkInterfaceSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-spotfleet_launchtemplateconfig.go b/cloudformation/ec2/aws-ec2-spotfleet_launchtemplateconfig.go new file mode 100644 index 0000000000..897c799fcc --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_launchtemplateconfig.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_LaunchTemplateConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.LaunchTemplateConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html +type SpotFleet_LaunchTemplateConfig struct { + + // LaunchTemplateSpecification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html#cfn-ec2-spotfleet-launchtemplateconfig-launchtemplatespecification + LaunchTemplateSpecification *SpotFleet_FleetLaunchTemplateSpecification `json:"LaunchTemplateSpecification,omitempty"` + + // Overrides AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html#cfn-ec2-spotfleet-launchtemplateconfig-overrides + Overrides []SpotFleet_LaunchTemplateOverrides `json:"Overrides,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_LaunchTemplateConfig) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.LaunchTemplateConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_LaunchTemplateConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_LaunchTemplateConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_LaunchTemplateConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_LaunchTemplateConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_LaunchTemplateConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_LaunchTemplateConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-spotfleet_launchtemplateoverrides.go b/cloudformation/ec2/aws-ec2-spotfleet_launchtemplateoverrides.go similarity index 79% rename from cloudformation/resources/aws-ec2-spotfleet_launchtemplateoverrides.go rename to cloudformation/ec2/aws-ec2-spotfleet_launchtemplateoverrides.go index 0b79a08c74..ad7587d22d 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_launchtemplateoverrides.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_launchtemplateoverrides.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_LaunchTemplateOverrides AWS CloudFormation Resource (AWS::EC2::SpotFleet.LaunchTemplateOverrides) +// SpotFleet_LaunchTemplateOverrides AWS CloudFormation Resource (AWS::EC2::SpotFleet.LaunchTemplateOverrides) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html -type AWSEC2SpotFleet_LaunchTemplateOverrides struct { +type SpotFleet_LaunchTemplateOverrides struct { // AvailabilityZone AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSEC2SpotFleet_LaunchTemplateOverrides struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_LaunchTemplateOverrides) AWSCloudFormationType() string { +func (r *SpotFleet_LaunchTemplateOverrides) AWSCloudFormationType() string { return "AWS::EC2::SpotFleet.LaunchTemplateOverrides" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_LaunchTemplateOverrides) DependsOn() []string { +func (r *SpotFleet_LaunchTemplateOverrides) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_LaunchTemplateOverrides) SetDependsOn(dependencies []string) { +func (r *SpotFleet_LaunchTemplateOverrides) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_LaunchTemplateOverrides) Metadata() map[string]interface{} { +func (r *SpotFleet_LaunchTemplateOverrides) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_LaunchTemplateOverrides) SetMetadata(metadata map[string]interface{}) { +func (r *SpotFleet_LaunchTemplateOverrides) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_LaunchTemplateOverrides) DeletionPolicy() policies.DeletionPolicy { +func (r *SpotFleet_LaunchTemplateOverrides) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_LaunchTemplateOverrides) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_LaunchTemplateOverrides) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-spotfleet_loadbalancersconfig.go b/cloudformation/ec2/aws-ec2-spotfleet_loadbalancersconfig.go new file mode 100644 index 0000000000..38bde751e8 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_loadbalancersconfig.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_LoadBalancersConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.LoadBalancersConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html +type SpotFleet_LoadBalancersConfig struct { + + // ClassicLoadBalancersConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html#cfn-ec2-spotfleet-loadbalancersconfig-classicloadbalancersconfig + ClassicLoadBalancersConfig *SpotFleet_ClassicLoadBalancersConfig `json:"ClassicLoadBalancersConfig,omitempty"` + + // TargetGroupsConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html#cfn-ec2-spotfleet-loadbalancersconfig-targetgroupsconfig + TargetGroupsConfig *SpotFleet_TargetGroupsConfig `json:"TargetGroupsConfig,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_LoadBalancersConfig) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.LoadBalancersConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_LoadBalancersConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_LoadBalancersConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_LoadBalancersConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_LoadBalancersConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_LoadBalancersConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_LoadBalancersConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-spotfleet_privateipaddressspecification.go b/cloudformation/ec2/aws-ec2-spotfleet_privateipaddressspecification.go new file mode 100644 index 0000000000..546508ec5f --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_privateipaddressspecification.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.PrivateIpAddressSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html +type SpotFleet_PrivateIpAddressSpecification struct { + + // Primary AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-primary + Primary bool `json:"Primary,omitempty"` + + // PrivateIpAddress AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-privateipaddress + PrivateIpAddress string `json:"PrivateIpAddress,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_PrivateIpAddressSpecification) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.PrivateIpAddressSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_PrivateIpAddressSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_PrivateIpAddressSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-spotfleet_spotfleetlaunchspecification.go b/cloudformation/ec2/aws-ec2-spotfleet_spotfleetlaunchspecification.go similarity index 81% rename from cloudformation/resources/aws-ec2-spotfleet_spotfleetlaunchspecification.go rename to cloudformation/ec2/aws-ec2-spotfleet_spotfleetlaunchspecification.go index b8b7379172..526c7dd589 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_spotfleetlaunchspecification.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_spotfleetlaunchspecification.go @@ -1,15 +1,17 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_SpotFleetLaunchSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetLaunchSpecification) +// SpotFleet_SpotFleetLaunchSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetLaunchSpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html -type AWSEC2SpotFleet_SpotFleetLaunchSpecification struct { +type SpotFleet_SpotFleetLaunchSpecification struct { // BlockDeviceMappings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-blockdevicemappings - BlockDeviceMappings []AWSEC2SpotFleet_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` + BlockDeviceMappings []SpotFleet_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` // EbsOptimized AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSEC2SpotFleet_SpotFleetLaunchSpecification struct { // IamInstanceProfile AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-iaminstanceprofile - IamInstanceProfile *AWSEC2SpotFleet_IamInstanceProfileSpecification `json:"IamInstanceProfile,omitempty"` + IamInstanceProfile *SpotFleet_IamInstanceProfileSpecification `json:"IamInstanceProfile,omitempty"` // ImageId AWS CloudFormation Property // Required: true @@ -44,17 +46,17 @@ type AWSEC2SpotFleet_SpotFleetLaunchSpecification struct { // Monitoring AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-monitoring - Monitoring *AWSEC2SpotFleet_SpotFleetMonitoring `json:"Monitoring,omitempty"` + Monitoring *SpotFleet_SpotFleetMonitoring `json:"Monitoring,omitempty"` // NetworkInterfaces AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-networkinterfaces - NetworkInterfaces []AWSEC2SpotFleet_InstanceNetworkInterfaceSpecification `json:"NetworkInterfaces,omitempty"` + NetworkInterfaces []SpotFleet_InstanceNetworkInterfaceSpecification `json:"NetworkInterfaces,omitempty"` // Placement AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-placement - Placement *AWSEC2SpotFleet_SpotPlacement `json:"Placement,omitempty"` + Placement *SpotFleet_SpotPlacement `json:"Placement,omitempty"` // RamdiskId AWS CloudFormation Property // Required: false @@ -64,7 +66,7 @@ type AWSEC2SpotFleet_SpotFleetLaunchSpecification struct { // SecurityGroups AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-securitygroups - SecurityGroups []AWSEC2SpotFleet_GroupIdentifier `json:"SecurityGroups,omitempty"` + SecurityGroups []SpotFleet_GroupIdentifier `json:"SecurityGroups,omitempty"` // SpotPrice AWS CloudFormation Property // Required: false @@ -79,7 +81,7 @@ type AWSEC2SpotFleet_SpotFleetLaunchSpecification struct { // TagSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-tagspecifications - TagSpecifications []AWSEC2SpotFleet_SpotFleetTagSpecification `json:"TagSpecifications,omitempty"` + TagSpecifications []SpotFleet_SpotFleetTagSpecification `json:"TagSpecifications,omitempty"` // UserData AWS CloudFormation Property // Required: false @@ -102,42 +104,42 @@ type AWSEC2SpotFleet_SpotFleetLaunchSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_SpotFleetLaunchSpecification) AWSCloudFormationType() string { +func (r *SpotFleet_SpotFleetLaunchSpecification) AWSCloudFormationType() string { return "AWS::EC2::SpotFleet.SpotFleetLaunchSpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotFleetLaunchSpecification) DependsOn() []string { +func (r *SpotFleet_SpotFleetLaunchSpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotFleetLaunchSpecification) SetDependsOn(dependencies []string) { +func (r *SpotFleet_SpotFleetLaunchSpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotFleetLaunchSpecification) Metadata() map[string]interface{} { +func (r *SpotFleet_SpotFleetLaunchSpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotFleetLaunchSpecification) SetMetadata(metadata map[string]interface{}) { +func (r *SpotFleet_SpotFleetLaunchSpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotFleetLaunchSpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *SpotFleet_SpotFleetLaunchSpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotFleetLaunchSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_SpotFleetLaunchSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-spotfleet_spotfleetmonitoring.go b/cloudformation/ec2/aws-ec2-spotfleet_spotfleetmonitoring.go new file mode 100644 index 0000000000..f48ba7a6aa --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_spotfleetmonitoring.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_SpotFleetMonitoring AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetMonitoring) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html +type SpotFleet_SpotFleetMonitoring struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html#cfn-ec2-spotfleet-spotfleetmonitoring-enabled + Enabled bool `json:"Enabled,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_SpotFleetMonitoring) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.SpotFleetMonitoring" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_SpotFleetMonitoring) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_SpotFleetMonitoring) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_SpotFleetMonitoring) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_SpotFleetMonitoring) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_SpotFleetMonitoring) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_SpotFleetMonitoring) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-spotfleet_spotfleetrequestconfigdata.go b/cloudformation/ec2/aws-ec2-spotfleet_spotfleetrequestconfigdata.go similarity index 83% rename from cloudformation/resources/aws-ec2-spotfleet_spotfleetrequestconfigdata.go rename to cloudformation/ec2/aws-ec2-spotfleet_spotfleetrequestconfigdata.go index 3c75a5808d..1fac3d8b51 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_spotfleetrequestconfigdata.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_spotfleetrequestconfigdata.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_SpotFleetRequestConfigData AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetRequestConfigData) +// SpotFleet_SpotFleetRequestConfigData AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetRequestConfigData) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html -type AWSEC2SpotFleet_SpotFleetRequestConfigData struct { +type SpotFleet_SpotFleetRequestConfigData struct { // AllocationStrategy AWS CloudFormation Property // Required: false @@ -29,17 +31,17 @@ type AWSEC2SpotFleet_SpotFleetRequestConfigData struct { // LaunchSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications - LaunchSpecifications []AWSEC2SpotFleet_SpotFleetLaunchSpecification `json:"LaunchSpecifications,omitempty"` + LaunchSpecifications []SpotFleet_SpotFleetLaunchSpecification `json:"LaunchSpecifications,omitempty"` // LaunchTemplateConfigs AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-launchtemplateconfigs - LaunchTemplateConfigs []AWSEC2SpotFleet_LaunchTemplateConfig `json:"LaunchTemplateConfigs,omitempty"` + LaunchTemplateConfigs []SpotFleet_LaunchTemplateConfig `json:"LaunchTemplateConfigs,omitempty"` // LoadBalancersConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-loadbalancersconfig - LoadBalancersConfig *AWSEC2SpotFleet_LoadBalancersConfig `json:"LoadBalancersConfig,omitempty"` + LoadBalancersConfig *SpotFleet_LoadBalancersConfig `json:"LoadBalancersConfig,omitempty"` // ReplaceUnhealthyInstances AWS CloudFormation Property // Required: false @@ -87,42 +89,42 @@ type AWSEC2SpotFleet_SpotFleetRequestConfigData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_SpotFleetRequestConfigData) AWSCloudFormationType() string { +func (r *SpotFleet_SpotFleetRequestConfigData) AWSCloudFormationType() string { return "AWS::EC2::SpotFleet.SpotFleetRequestConfigData" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotFleetRequestConfigData) DependsOn() []string { +func (r *SpotFleet_SpotFleetRequestConfigData) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotFleetRequestConfigData) SetDependsOn(dependencies []string) { +func (r *SpotFleet_SpotFleetRequestConfigData) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotFleetRequestConfigData) Metadata() map[string]interface{} { +func (r *SpotFleet_SpotFleetRequestConfigData) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotFleetRequestConfigData) SetMetadata(metadata map[string]interface{}) { +func (r *SpotFleet_SpotFleetRequestConfigData) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotFleetRequestConfigData) DeletionPolicy() policies.DeletionPolicy { +func (r *SpotFleet_SpotFleetRequestConfigData) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotFleetRequestConfigData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_SpotFleetRequestConfigData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-spotfleet_spotfleettagspecification.go b/cloudformation/ec2/aws-ec2-spotfleet_spotfleettagspecification.go new file mode 100644 index 0000000000..2631321436 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_spotfleettagspecification.go @@ -0,0 +1,71 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) + +// SpotFleet_SpotFleetTagSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetTagSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html +type SpotFleet_SpotFleetTagSpecification struct { + + // ResourceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html#cfn-ec2-spotfleet-spotfleettagspecification-resourcetype + ResourceType string `json:"ResourceType,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html#cfn-ec2-spotfleet-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_SpotFleetTagSpecification) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.SpotFleetTagSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_SpotFleetTagSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_SpotFleetTagSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_SpotFleetTagSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_SpotFleetTagSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_SpotFleetTagSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_SpotFleetTagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-spotfleet_spotplacement.go b/cloudformation/ec2/aws-ec2-spotfleet_spotplacement.go similarity index 78% rename from cloudformation/resources/aws-ec2-spotfleet_spotplacement.go rename to cloudformation/ec2/aws-ec2-spotfleet_spotplacement.go index 96e1aa2883..90e5e6aa19 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_spotplacement.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_spotplacement.go @@ -1,10 +1,12 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_SpotPlacement AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotPlacement) +// SpotFleet_SpotPlacement AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotPlacement) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html -type AWSEC2SpotFleet_SpotPlacement struct { +type SpotFleet_SpotPlacement struct { // AvailabilityZone AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEC2SpotFleet_SpotPlacement struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_SpotPlacement) AWSCloudFormationType() string { +func (r *SpotFleet_SpotPlacement) AWSCloudFormationType() string { return "AWS::EC2::SpotFleet.SpotPlacement" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotPlacement) DependsOn() []string { +func (r *SpotFleet_SpotPlacement) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotPlacement) SetDependsOn(dependencies []string) { +func (r *SpotFleet_SpotPlacement) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotPlacement) Metadata() map[string]interface{} { +func (r *SpotFleet_SpotPlacement) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotPlacement) SetMetadata(metadata map[string]interface{}) { +func (r *SpotFleet_SpotPlacement) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotPlacement) DeletionPolicy() policies.DeletionPolicy { +func (r *SpotFleet_SpotPlacement) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotPlacement) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_SpotPlacement) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ec2/aws-ec2-spotfleet_targetgroup.go b/cloudformation/ec2/aws-ec2-spotfleet_targetgroup.go new file mode 100644 index 0000000000..e895d7e241 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_targetgroup.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_TargetGroup AWS CloudFormation Resource (AWS::EC2::SpotFleet.TargetGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroup.html +type SpotFleet_TargetGroup struct { + + // Arn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroup.html#cfn-ec2-spotfleet-targetgroup-arn + Arn string `json:"Arn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_TargetGroup) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.TargetGroup" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_TargetGroup) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_TargetGroup) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_TargetGroup) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_TargetGroup) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_TargetGroup) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_TargetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ec2/aws-ec2-spotfleet_targetgroupsconfig.go b/cloudformation/ec2/aws-ec2-spotfleet_targetgroupsconfig.go new file mode 100644 index 0000000000..5c269ed3e7 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-spotfleet_targetgroupsconfig.go @@ -0,0 +1,65 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SpotFleet_TargetGroupsConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.TargetGroupsConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroupsconfig.html +type SpotFleet_TargetGroupsConfig struct { + + // TargetGroups AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroupsconfig.html#cfn-ec2-spotfleet-targetgroupsconfig-targetgroups + TargetGroups []SpotFleet_TargetGroup `json:"TargetGroups,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SpotFleet_TargetGroupsConfig) AWSCloudFormationType() string { + return "AWS::EC2::SpotFleet.TargetGroupsConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_TargetGroupsConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SpotFleet_TargetGroupsConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_TargetGroupsConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SpotFleet_TargetGroupsConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_TargetGroupsConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SpotFleet_TargetGroupsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-subnet.go b/cloudformation/ec2/aws-ec2-subnet.go similarity index 85% rename from cloudformation/resources/aws-ec2-subnet.go rename to cloudformation/ec2/aws-ec2-subnet.go index 8e5b8571c5..716d192a3c 100644 --- a/cloudformation/resources/aws-ec2-subnet.go +++ b/cloudformation/ec2/aws-ec2-subnet.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2Subnet AWS CloudFormation Resource (AWS::EC2::Subnet) +// Subnet AWS CloudFormation Resource (AWS::EC2::Subnet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html -type AWSEC2Subnet struct { +type Subnet struct { // AssignIpv6AddressOnCreation AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSEC2Subnet struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcId AWS CloudFormation Property // Required: true @@ -57,50 +59,50 @@ type AWSEC2Subnet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Subnet) AWSCloudFormationType() string { +func (r *Subnet) AWSCloudFormationType() string { return "AWS::EC2::Subnet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Subnet) DependsOn() []string { +func (r *Subnet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Subnet) SetDependsOn(dependencies []string) { +func (r *Subnet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Subnet) Metadata() map[string]interface{} { +func (r *Subnet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Subnet) SetMetadata(metadata map[string]interface{}) { +func (r *Subnet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Subnet) DeletionPolicy() policies.DeletionPolicy { +func (r *Subnet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Subnet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Subnet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2Subnet) MarshalJSON() ([]byte, error) { - type Properties AWSEC2Subnet +func (r Subnet) MarshalJSON() ([]byte, error) { + type Properties Subnet return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +120,8 @@ func (r AWSEC2Subnet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2Subnet) UnmarshalJSON(b []byte) error { - type Properties AWSEC2Subnet +func (r *Subnet) UnmarshalJSON(b []byte) error { + type Properties Subnet res := &struct { Type string Properties *Properties @@ -138,7 +140,7 @@ func (r *AWSEC2Subnet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2Subnet(*res.Properties) + *r = Subnet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-subnetcidrblock.go b/cloudformation/ec2/aws-ec2-subnetcidrblock.go similarity index 80% rename from cloudformation/resources/aws-ec2-subnetcidrblock.go rename to cloudformation/ec2/aws-ec2-subnetcidrblock.go index cd9b083f7e..fdb6bbcaf9 100644 --- a/cloudformation/resources/aws-ec2-subnetcidrblock.go +++ b/cloudformation/ec2/aws-ec2-subnetcidrblock.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2SubnetCidrBlock AWS CloudFormation Resource (AWS::EC2::SubnetCidrBlock) +// SubnetCidrBlock AWS CloudFormation Resource (AWS::EC2::SubnetCidrBlock) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html -type AWSEC2SubnetCidrBlock struct { +type SubnetCidrBlock struct { // Ipv6CidrBlock AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2SubnetCidrBlock struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SubnetCidrBlock) AWSCloudFormationType() string { +func (r *SubnetCidrBlock) AWSCloudFormationType() string { return "AWS::EC2::SubnetCidrBlock" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SubnetCidrBlock) DependsOn() []string { +func (r *SubnetCidrBlock) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SubnetCidrBlock) SetDependsOn(dependencies []string) { +func (r *SubnetCidrBlock) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SubnetCidrBlock) Metadata() map[string]interface{} { +func (r *SubnetCidrBlock) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SubnetCidrBlock) SetMetadata(metadata map[string]interface{}) { +func (r *SubnetCidrBlock) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SubnetCidrBlock) DeletionPolicy() policies.DeletionPolicy { +func (r *SubnetCidrBlock) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SubnetCidrBlock) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubnetCidrBlock) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2SubnetCidrBlock) MarshalJSON() ([]byte, error) { - type Properties AWSEC2SubnetCidrBlock +func (r SubnetCidrBlock) MarshalJSON() ([]byte, error) { + type Properties SubnetCidrBlock return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2SubnetCidrBlock) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2SubnetCidrBlock) UnmarshalJSON(b []byte) error { - type Properties AWSEC2SubnetCidrBlock +func (r *SubnetCidrBlock) UnmarshalJSON(b []byte) error { + type Properties SubnetCidrBlock res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2SubnetCidrBlock) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2SubnetCidrBlock(*res.Properties) + *r = SubnetCidrBlock(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-subnetnetworkaclassociation.go b/cloudformation/ec2/aws-ec2-subnetnetworkaclassociation.go similarity index 77% rename from cloudformation/resources/aws-ec2-subnetnetworkaclassociation.go rename to cloudformation/ec2/aws-ec2-subnetnetworkaclassociation.go index 822462a8bf..cde3c1495d 100644 --- a/cloudformation/resources/aws-ec2-subnetnetworkaclassociation.go +++ b/cloudformation/ec2/aws-ec2-subnetnetworkaclassociation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2SubnetNetworkAclAssociation AWS CloudFormation Resource (AWS::EC2::SubnetNetworkAclAssociation) +// SubnetNetworkAclAssociation AWS CloudFormation Resource (AWS::EC2::SubnetNetworkAclAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html -type AWSEC2SubnetNetworkAclAssociation struct { +type SubnetNetworkAclAssociation struct { // NetworkAclId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2SubnetNetworkAclAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SubnetNetworkAclAssociation) AWSCloudFormationType() string { +func (r *SubnetNetworkAclAssociation) AWSCloudFormationType() string { return "AWS::EC2::SubnetNetworkAclAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SubnetNetworkAclAssociation) DependsOn() []string { +func (r *SubnetNetworkAclAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SubnetNetworkAclAssociation) SetDependsOn(dependencies []string) { +func (r *SubnetNetworkAclAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SubnetNetworkAclAssociation) Metadata() map[string]interface{} { +func (r *SubnetNetworkAclAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SubnetNetworkAclAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *SubnetNetworkAclAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SubnetNetworkAclAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *SubnetNetworkAclAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SubnetNetworkAclAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubnetNetworkAclAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2SubnetNetworkAclAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2SubnetNetworkAclAssociation +func (r SubnetNetworkAclAssociation) MarshalJSON() ([]byte, error) { + type Properties SubnetNetworkAclAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2SubnetNetworkAclAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2SubnetNetworkAclAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2SubnetNetworkAclAssociation +func (r *SubnetNetworkAclAssociation) UnmarshalJSON(b []byte) error { + type Properties SubnetNetworkAclAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2SubnetNetworkAclAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2SubnetNetworkAclAssociation(*res.Properties) + *r = SubnetNetworkAclAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-subnetroutetableassociation.go b/cloudformation/ec2/aws-ec2-subnetroutetableassociation.go similarity index 77% rename from cloudformation/resources/aws-ec2-subnetroutetableassociation.go rename to cloudformation/ec2/aws-ec2-subnetroutetableassociation.go index 83ae642e21..44b6633b4f 100644 --- a/cloudformation/resources/aws-ec2-subnetroutetableassociation.go +++ b/cloudformation/ec2/aws-ec2-subnetroutetableassociation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2SubnetRouteTableAssociation AWS CloudFormation Resource (AWS::EC2::SubnetRouteTableAssociation) +// SubnetRouteTableAssociation AWS CloudFormation Resource (AWS::EC2::SubnetRouteTableAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html -type AWSEC2SubnetRouteTableAssociation struct { +type SubnetRouteTableAssociation struct { // RouteTableId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2SubnetRouteTableAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SubnetRouteTableAssociation) AWSCloudFormationType() string { +func (r *SubnetRouteTableAssociation) AWSCloudFormationType() string { return "AWS::EC2::SubnetRouteTableAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SubnetRouteTableAssociation) DependsOn() []string { +func (r *SubnetRouteTableAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SubnetRouteTableAssociation) SetDependsOn(dependencies []string) { +func (r *SubnetRouteTableAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SubnetRouteTableAssociation) Metadata() map[string]interface{} { +func (r *SubnetRouteTableAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SubnetRouteTableAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *SubnetRouteTableAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SubnetRouteTableAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *SubnetRouteTableAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SubnetRouteTableAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubnetRouteTableAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2SubnetRouteTableAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2SubnetRouteTableAssociation +func (r SubnetRouteTableAssociation) MarshalJSON() ([]byte, error) { + type Properties SubnetRouteTableAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2SubnetRouteTableAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2SubnetRouteTableAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2SubnetRouteTableAssociation +func (r *SubnetRouteTableAssociation) UnmarshalJSON(b []byte) error { + type Properties SubnetRouteTableAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2SubnetRouteTableAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2SubnetRouteTableAssociation(*res.Properties) + *r = SubnetRouteTableAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-trafficmirrorfilter.go b/cloudformation/ec2/aws-ec2-trafficmirrorfilter.go similarity index 79% rename from cloudformation/resources/aws-ec2-trafficmirrorfilter.go rename to cloudformation/ec2/aws-ec2-trafficmirrorfilter.go index 9f64442e94..bc037e10fd 100644 --- a/cloudformation/resources/aws-ec2-trafficmirrorfilter.go +++ b/cloudformation/ec2/aws-ec2-trafficmirrorfilter.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2TrafficMirrorFilter AWS CloudFormation Resource (AWS::EC2::TrafficMirrorFilter) +// TrafficMirrorFilter AWS CloudFormation Resource (AWS::EC2::TrafficMirrorFilter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html -type AWSEC2TrafficMirrorFilter struct { +type TrafficMirrorFilter struct { // Description AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSEC2TrafficMirrorFilter struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +39,50 @@ type AWSEC2TrafficMirrorFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TrafficMirrorFilter) AWSCloudFormationType() string { +func (r *TrafficMirrorFilter) AWSCloudFormationType() string { return "AWS::EC2::TrafficMirrorFilter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorFilter) DependsOn() []string { +func (r *TrafficMirrorFilter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorFilter) SetDependsOn(dependencies []string) { +func (r *TrafficMirrorFilter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorFilter) Metadata() map[string]interface{} { +func (r *TrafficMirrorFilter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorFilter) SetMetadata(metadata map[string]interface{}) { +func (r *TrafficMirrorFilter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorFilter) DeletionPolicy() policies.DeletionPolicy { +func (r *TrafficMirrorFilter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TrafficMirrorFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TrafficMirrorFilter) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TrafficMirrorFilter +func (r TrafficMirrorFilter) MarshalJSON() ([]byte, error) { + type Properties TrafficMirrorFilter return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +100,8 @@ func (r AWSEC2TrafficMirrorFilter) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TrafficMirrorFilter) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TrafficMirrorFilter +func (r *TrafficMirrorFilter) UnmarshalJSON(b []byte) error { + type Properties TrafficMirrorFilter res := &struct { Type string Properties *Properties @@ -118,7 +120,7 @@ func (r *AWSEC2TrafficMirrorFilter) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TrafficMirrorFilter(*res.Properties) + *r = TrafficMirrorFilter(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-trafficmirrorfilterrule.go b/cloudformation/ec2/aws-ec2-trafficmirrorfilterrule.go similarity index 82% rename from cloudformation/resources/aws-ec2-trafficmirrorfilterrule.go rename to cloudformation/ec2/aws-ec2-trafficmirrorfilterrule.go index 2be0115330..a2e9b56a80 100644 --- a/cloudformation/resources/aws-ec2-trafficmirrorfilterrule.go +++ b/cloudformation/ec2/aws-ec2-trafficmirrorfilterrule.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2TrafficMirrorFilterRule AWS CloudFormation Resource (AWS::EC2::TrafficMirrorFilterRule) +// TrafficMirrorFilterRule AWS CloudFormation Resource (AWS::EC2::TrafficMirrorFilterRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html -type AWSEC2TrafficMirrorFilterRule struct { +type TrafficMirrorFilterRule struct { // Description AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSEC2TrafficMirrorFilterRule struct { // DestinationPortRange AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-destinationportrange - DestinationPortRange *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange `json:"DestinationPortRange,omitempty"` + DestinationPortRange *TrafficMirrorFilterRule_TrafficMirrorPortRange `json:"DestinationPortRange,omitempty"` // Protocol AWS CloudFormation Property // Required: false @@ -49,7 +50,7 @@ type AWSEC2TrafficMirrorFilterRule struct { // SourcePortRange AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-sourceportrange - SourcePortRange *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange `json:"SourcePortRange,omitempty"` + SourcePortRange *TrafficMirrorFilterRule_TrafficMirrorPortRange `json:"SourcePortRange,omitempty"` // TrafficDirection AWS CloudFormation Property // Required: true @@ -72,50 +73,50 @@ type AWSEC2TrafficMirrorFilterRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TrafficMirrorFilterRule) AWSCloudFormationType() string { +func (r *TrafficMirrorFilterRule) AWSCloudFormationType() string { return "AWS::EC2::TrafficMirrorFilterRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorFilterRule) DependsOn() []string { +func (r *TrafficMirrorFilterRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorFilterRule) SetDependsOn(dependencies []string) { +func (r *TrafficMirrorFilterRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorFilterRule) Metadata() map[string]interface{} { +func (r *TrafficMirrorFilterRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorFilterRule) SetMetadata(metadata map[string]interface{}) { +func (r *TrafficMirrorFilterRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorFilterRule) DeletionPolicy() policies.DeletionPolicy { +func (r *TrafficMirrorFilterRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorFilterRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TrafficMirrorFilterRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TrafficMirrorFilterRule) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TrafficMirrorFilterRule +func (r TrafficMirrorFilterRule) MarshalJSON() ([]byte, error) { + type Properties TrafficMirrorFilterRule return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSEC2TrafficMirrorFilterRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TrafficMirrorFilterRule) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TrafficMirrorFilterRule +func (r *TrafficMirrorFilterRule) UnmarshalJSON(b []byte) error { + type Properties TrafficMirrorFilterRule res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSEC2TrafficMirrorFilterRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TrafficMirrorFilterRule(*res.Properties) + *r = TrafficMirrorFilterRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ec2/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go b/cloudformation/ec2/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go new file mode 100644 index 0000000000..8905340f27 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TrafficMirrorFilterRule_TrafficMirrorPortRange AWS CloudFormation Resource (AWS::EC2::TrafficMirrorFilterRule.TrafficMirrorPortRange) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html +type TrafficMirrorFilterRule_TrafficMirrorPortRange struct { + + // FromPort AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorportrange-fromport + FromPort int `json:"FromPort"` + + // ToPort AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorportrange-toport + ToPort int `json:"ToPort"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TrafficMirrorFilterRule_TrafficMirrorPortRange) AWSCloudFormationType() string { + return "AWS::EC2::TrafficMirrorFilterRule.TrafficMirrorPortRange" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TrafficMirrorFilterRule_TrafficMirrorPortRange) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TrafficMirrorFilterRule_TrafficMirrorPortRange) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TrafficMirrorFilterRule_TrafficMirrorPortRange) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TrafficMirrorFilterRule_TrafficMirrorPortRange) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TrafficMirrorFilterRule_TrafficMirrorPortRange) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TrafficMirrorFilterRule_TrafficMirrorPortRange) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-trafficmirrorsession.go b/cloudformation/ec2/aws-ec2-trafficmirrorsession.go similarity index 84% rename from cloudformation/resources/aws-ec2-trafficmirrorsession.go rename to cloudformation/ec2/aws-ec2-trafficmirrorsession.go index ad8511575e..588959ef0a 100644 --- a/cloudformation/resources/aws-ec2-trafficmirrorsession.go +++ b/cloudformation/ec2/aws-ec2-trafficmirrorsession.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2TrafficMirrorSession AWS CloudFormation Resource (AWS::EC2::TrafficMirrorSession) +// TrafficMirrorSession AWS CloudFormation Resource (AWS::EC2::TrafficMirrorSession) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html -type AWSEC2TrafficMirrorSession struct { +type TrafficMirrorSession struct { // Description AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSEC2TrafficMirrorSession struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TrafficMirrorFilterId AWS CloudFormation Property // Required: true @@ -62,50 +64,50 @@ type AWSEC2TrafficMirrorSession struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TrafficMirrorSession) AWSCloudFormationType() string { +func (r *TrafficMirrorSession) AWSCloudFormationType() string { return "AWS::EC2::TrafficMirrorSession" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorSession) DependsOn() []string { +func (r *TrafficMirrorSession) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorSession) SetDependsOn(dependencies []string) { +func (r *TrafficMirrorSession) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorSession) Metadata() map[string]interface{} { +func (r *TrafficMirrorSession) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorSession) SetMetadata(metadata map[string]interface{}) { +func (r *TrafficMirrorSession) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorSession) DeletionPolicy() policies.DeletionPolicy { +func (r *TrafficMirrorSession) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorSession) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TrafficMirrorSession) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TrafficMirrorSession) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TrafficMirrorSession +func (r TrafficMirrorSession) MarshalJSON() ([]byte, error) { + type Properties TrafficMirrorSession return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +125,8 @@ func (r AWSEC2TrafficMirrorSession) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TrafficMirrorSession) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TrafficMirrorSession +func (r *TrafficMirrorSession) UnmarshalJSON(b []byte) error { + type Properties TrafficMirrorSession res := &struct { Type string Properties *Properties @@ -143,7 +145,7 @@ func (r *AWSEC2TrafficMirrorSession) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TrafficMirrorSession(*res.Properties) + *r = TrafficMirrorSession(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-trafficmirrortarget.go b/cloudformation/ec2/aws-ec2-trafficmirrortarget.go similarity index 80% rename from cloudformation/resources/aws-ec2-trafficmirrortarget.go rename to cloudformation/ec2/aws-ec2-trafficmirrortarget.go index 824a654766..419194e2ec 100644 --- a/cloudformation/resources/aws-ec2-trafficmirrortarget.go +++ b/cloudformation/ec2/aws-ec2-trafficmirrortarget.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2TrafficMirrorTarget AWS CloudFormation Resource (AWS::EC2::TrafficMirrorTarget) +// TrafficMirrorTarget AWS CloudFormation Resource (AWS::EC2::TrafficMirrorTarget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html -type AWSEC2TrafficMirrorTarget struct { +type TrafficMirrorTarget struct { // Description AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSEC2TrafficMirrorTarget struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSEC2TrafficMirrorTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TrafficMirrorTarget) AWSCloudFormationType() string { +func (r *TrafficMirrorTarget) AWSCloudFormationType() string { return "AWS::EC2::TrafficMirrorTarget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorTarget) DependsOn() []string { +func (r *TrafficMirrorTarget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorTarget) SetDependsOn(dependencies []string) { +func (r *TrafficMirrorTarget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorTarget) Metadata() map[string]interface{} { +func (r *TrafficMirrorTarget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorTarget) SetMetadata(metadata map[string]interface{}) { +func (r *TrafficMirrorTarget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorTarget) DeletionPolicy() policies.DeletionPolicy { +func (r *TrafficMirrorTarget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TrafficMirrorTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TrafficMirrorTarget) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TrafficMirrorTarget +func (r TrafficMirrorTarget) MarshalJSON() ([]byte, error) { + type Properties TrafficMirrorTarget return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSEC2TrafficMirrorTarget) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TrafficMirrorTarget) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TrafficMirrorTarget +func (r *TrafficMirrorTarget) UnmarshalJSON(b []byte) error { + type Properties TrafficMirrorTarget res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSEC2TrafficMirrorTarget) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TrafficMirrorTarget(*res.Properties) + *r = TrafficMirrorTarget(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-transitgateway.go b/cloudformation/ec2/aws-ec2-transitgateway.go similarity index 85% rename from cloudformation/resources/aws-ec2-transitgateway.go rename to cloudformation/ec2/aws-ec2-transitgateway.go index e6ca1fc49b..3df0a28a7c 100644 --- a/cloudformation/resources/aws-ec2-transitgateway.go +++ b/cloudformation/ec2/aws-ec2-transitgateway.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2TransitGateway AWS CloudFormation Resource (AWS::EC2::TransitGateway) +// TransitGateway AWS CloudFormation Resource (AWS::EC2::TransitGateway) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html -type AWSEC2TransitGateway struct { +type TransitGateway struct { // AmazonSideAsn AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSEC2TransitGateway struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpnEcmpSupport AWS CloudFormation Property // Required: false @@ -62,50 +64,50 @@ type AWSEC2TransitGateway struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TransitGateway) AWSCloudFormationType() string { +func (r *TransitGateway) AWSCloudFormationType() string { return "AWS::EC2::TransitGateway" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGateway) DependsOn() []string { +func (r *TransitGateway) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGateway) SetDependsOn(dependencies []string) { +func (r *TransitGateway) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGateway) Metadata() map[string]interface{} { +func (r *TransitGateway) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGateway) SetMetadata(metadata map[string]interface{}) { +func (r *TransitGateway) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGateway) DeletionPolicy() policies.DeletionPolicy { +func (r *TransitGateway) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TransitGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TransitGateway) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TransitGateway +func (r TransitGateway) MarshalJSON() ([]byte, error) { + type Properties TransitGateway return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +125,8 @@ func (r AWSEC2TransitGateway) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TransitGateway) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TransitGateway +func (r *TransitGateway) UnmarshalJSON(b []byte) error { + type Properties TransitGateway res := &struct { Type string Properties *Properties @@ -143,7 +145,7 @@ func (r *AWSEC2TransitGateway) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TransitGateway(*res.Properties) + *r = TransitGateway(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-transitgatewayattachment.go b/cloudformation/ec2/aws-ec2-transitgatewayattachment.go similarity index 79% rename from cloudformation/resources/aws-ec2-transitgatewayattachment.go rename to cloudformation/ec2/aws-ec2-transitgatewayattachment.go index 5e0bf1befb..abf9e0fe11 100644 --- a/cloudformation/resources/aws-ec2-transitgatewayattachment.go +++ b/cloudformation/ec2/aws-ec2-transitgatewayattachment.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2TransitGatewayAttachment AWS CloudFormation Resource (AWS::EC2::TransitGatewayAttachment) +// TransitGatewayAttachment AWS CloudFormation Resource (AWS::EC2::TransitGatewayAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html -type AWSEC2TransitGatewayAttachment struct { +type TransitGatewayAttachment struct { // SubnetIds AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSEC2TransitGatewayAttachment struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TransitGatewayId AWS CloudFormation Property // Required: true @@ -42,50 +44,50 @@ type AWSEC2TransitGatewayAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TransitGatewayAttachment) AWSCloudFormationType() string { +func (r *TransitGatewayAttachment) AWSCloudFormationType() string { return "AWS::EC2::TransitGatewayAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayAttachment) DependsOn() []string { +func (r *TransitGatewayAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayAttachment) SetDependsOn(dependencies []string) { +func (r *TransitGatewayAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayAttachment) Metadata() map[string]interface{} { +func (r *TransitGatewayAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *TransitGatewayAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *TransitGatewayAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TransitGatewayAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TransitGatewayAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TransitGatewayAttachment +func (r TransitGatewayAttachment) MarshalJSON() ([]byte, error) { + type Properties TransitGatewayAttachment return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSEC2TransitGatewayAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TransitGatewayAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TransitGatewayAttachment +func (r *TransitGatewayAttachment) UnmarshalJSON(b []byte) error { + type Properties TransitGatewayAttachment res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSEC2TransitGatewayAttachment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TransitGatewayAttachment(*res.Properties) + *r = TransitGatewayAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-transitgatewayroute.go b/cloudformation/ec2/aws-ec2-transitgatewayroute.go similarity index 81% rename from cloudformation/resources/aws-ec2-transitgatewayroute.go rename to cloudformation/ec2/aws-ec2-transitgatewayroute.go index 6c13a76a65..ca69a7f22d 100644 --- a/cloudformation/resources/aws-ec2-transitgatewayroute.go +++ b/cloudformation/ec2/aws-ec2-transitgatewayroute.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2TransitGatewayRoute AWS CloudFormation Resource (AWS::EC2::TransitGatewayRoute) +// TransitGatewayRoute AWS CloudFormation Resource (AWS::EC2::TransitGatewayRoute) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html -type AWSEC2TransitGatewayRoute struct { +type TransitGatewayRoute struct { // Blackhole AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSEC2TransitGatewayRoute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TransitGatewayRoute) AWSCloudFormationType() string { +func (r *TransitGatewayRoute) AWSCloudFormationType() string { return "AWS::EC2::TransitGatewayRoute" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayRoute) DependsOn() []string { +func (r *TransitGatewayRoute) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayRoute) SetDependsOn(dependencies []string) { +func (r *TransitGatewayRoute) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayRoute) Metadata() map[string]interface{} { +func (r *TransitGatewayRoute) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayRoute) SetMetadata(metadata map[string]interface{}) { +func (r *TransitGatewayRoute) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayRoute) DeletionPolicy() policies.DeletionPolicy { +func (r *TransitGatewayRoute) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TransitGatewayRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TransitGatewayRoute) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TransitGatewayRoute +func (r TransitGatewayRoute) MarshalJSON() ([]byte, error) { + type Properties TransitGatewayRoute return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSEC2TransitGatewayRoute) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TransitGatewayRoute) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TransitGatewayRoute +func (r *TransitGatewayRoute) UnmarshalJSON(b []byte) error { + type Properties TransitGatewayRoute res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSEC2TransitGatewayRoute) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TransitGatewayRoute(*res.Properties) + *r = TransitGatewayRoute(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-transitgatewayroutetable.go b/cloudformation/ec2/aws-ec2-transitgatewayroutetable.go similarity index 77% rename from cloudformation/resources/aws-ec2-transitgatewayroutetable.go rename to cloudformation/ec2/aws-ec2-transitgatewayroutetable.go index 046fdeadcc..e9fe825eb6 100644 --- a/cloudformation/resources/aws-ec2-transitgatewayroutetable.go +++ b/cloudformation/ec2/aws-ec2-transitgatewayroutetable.go @@ -1,20 +1,22 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2TransitGatewayRouteTable AWS CloudFormation Resource (AWS::EC2::TransitGatewayRouteTable) +// TransitGatewayRouteTable AWS CloudFormation Resource (AWS::EC2::TransitGatewayRouteTable) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html -type AWSEC2TransitGatewayRouteTable struct { +type TransitGatewayRouteTable struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html#cfn-ec2-transitgatewayroutetable-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TransitGatewayId AWS CloudFormation Property // Required: true @@ -32,50 +34,50 @@ type AWSEC2TransitGatewayRouteTable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TransitGatewayRouteTable) AWSCloudFormationType() string { +func (r *TransitGatewayRouteTable) AWSCloudFormationType() string { return "AWS::EC2::TransitGatewayRouteTable" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayRouteTable) DependsOn() []string { +func (r *TransitGatewayRouteTable) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayRouteTable) SetDependsOn(dependencies []string) { +func (r *TransitGatewayRouteTable) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayRouteTable) Metadata() map[string]interface{} { +func (r *TransitGatewayRouteTable) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayRouteTable) SetMetadata(metadata map[string]interface{}) { +func (r *TransitGatewayRouteTable) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayRouteTable) DeletionPolicy() policies.DeletionPolicy { +func (r *TransitGatewayRouteTable) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayRouteTable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TransitGatewayRouteTable) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TransitGatewayRouteTable) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TransitGatewayRouteTable +func (r TransitGatewayRouteTable) MarshalJSON() ([]byte, error) { + type Properties TransitGatewayRouteTable return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +95,8 @@ func (r AWSEC2TransitGatewayRouteTable) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TransitGatewayRouteTable) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TransitGatewayRouteTable +func (r *TransitGatewayRouteTable) UnmarshalJSON(b []byte) error { + type Properties TransitGatewayRouteTable res := &struct { Type string Properties *Properties @@ -113,7 +115,7 @@ func (r *AWSEC2TransitGatewayRouteTable) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TransitGatewayRouteTable(*res.Properties) + *r = TransitGatewayRouteTable(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-transitgatewayroutetableassociation.go b/cloudformation/ec2/aws-ec2-transitgatewayroutetableassociation.go similarity index 76% rename from cloudformation/resources/aws-ec2-transitgatewayroutetableassociation.go rename to cloudformation/ec2/aws-ec2-transitgatewayroutetableassociation.go index be58076d3b..9e33772577 100644 --- a/cloudformation/resources/aws-ec2-transitgatewayroutetableassociation.go +++ b/cloudformation/ec2/aws-ec2-transitgatewayroutetableassociation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2TransitGatewayRouteTableAssociation AWS CloudFormation Resource (AWS::EC2::TransitGatewayRouteTableAssociation) +// TransitGatewayRouteTableAssociation AWS CloudFormation Resource (AWS::EC2::TransitGatewayRouteTableAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html -type AWSEC2TransitGatewayRouteTableAssociation struct { +type TransitGatewayRouteTableAssociation struct { // TransitGatewayAttachmentId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2TransitGatewayRouteTableAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TransitGatewayRouteTableAssociation) AWSCloudFormationType() string { +func (r *TransitGatewayRouteTableAssociation) AWSCloudFormationType() string { return "AWS::EC2::TransitGatewayRouteTableAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayRouteTableAssociation) DependsOn() []string { +func (r *TransitGatewayRouteTableAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayRouteTableAssociation) SetDependsOn(dependencies []string) { +func (r *TransitGatewayRouteTableAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayRouteTableAssociation) Metadata() map[string]interface{} { +func (r *TransitGatewayRouteTableAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayRouteTableAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *TransitGatewayRouteTableAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayRouteTableAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *TransitGatewayRouteTableAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayRouteTableAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TransitGatewayRouteTableAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TransitGatewayRouteTableAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TransitGatewayRouteTableAssociation +func (r TransitGatewayRouteTableAssociation) MarshalJSON() ([]byte, error) { + type Properties TransitGatewayRouteTableAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2TransitGatewayRouteTableAssociation) MarshalJSON() ([]byte, error) // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TransitGatewayRouteTableAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TransitGatewayRouteTableAssociation +func (r *TransitGatewayRouteTableAssociation) UnmarshalJSON(b []byte) error { + type Properties TransitGatewayRouteTableAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2TransitGatewayRouteTableAssociation) UnmarshalJSON(b []byte) erro // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TransitGatewayRouteTableAssociation(*res.Properties) + *r = TransitGatewayRouteTableAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-transitgatewayroutetablepropagation.go b/cloudformation/ec2/aws-ec2-transitgatewayroutetablepropagation.go similarity index 76% rename from cloudformation/resources/aws-ec2-transitgatewayroutetablepropagation.go rename to cloudformation/ec2/aws-ec2-transitgatewayroutetablepropagation.go index 50c7aeb6b3..beeb367de5 100644 --- a/cloudformation/resources/aws-ec2-transitgatewayroutetablepropagation.go +++ b/cloudformation/ec2/aws-ec2-transitgatewayroutetablepropagation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2TransitGatewayRouteTablePropagation AWS CloudFormation Resource (AWS::EC2::TransitGatewayRouteTablePropagation) +// TransitGatewayRouteTablePropagation AWS CloudFormation Resource (AWS::EC2::TransitGatewayRouteTablePropagation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html -type AWSEC2TransitGatewayRouteTablePropagation struct { +type TransitGatewayRouteTablePropagation struct { // TransitGatewayAttachmentId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2TransitGatewayRouteTablePropagation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TransitGatewayRouteTablePropagation) AWSCloudFormationType() string { +func (r *TransitGatewayRouteTablePropagation) AWSCloudFormationType() string { return "AWS::EC2::TransitGatewayRouteTablePropagation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayRouteTablePropagation) DependsOn() []string { +func (r *TransitGatewayRouteTablePropagation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TransitGatewayRouteTablePropagation) SetDependsOn(dependencies []string) { +func (r *TransitGatewayRouteTablePropagation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayRouteTablePropagation) Metadata() map[string]interface{} { +func (r *TransitGatewayRouteTablePropagation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TransitGatewayRouteTablePropagation) SetMetadata(metadata map[string]interface{}) { +func (r *TransitGatewayRouteTablePropagation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayRouteTablePropagation) DeletionPolicy() policies.DeletionPolicy { +func (r *TransitGatewayRouteTablePropagation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TransitGatewayRouteTablePropagation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TransitGatewayRouteTablePropagation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2TransitGatewayRouteTablePropagation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2TransitGatewayRouteTablePropagation +func (r TransitGatewayRouteTablePropagation) MarshalJSON() ([]byte, error) { + type Properties TransitGatewayRouteTablePropagation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2TransitGatewayRouteTablePropagation) MarshalJSON() ([]byte, error) // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2TransitGatewayRouteTablePropagation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2TransitGatewayRouteTablePropagation +func (r *TransitGatewayRouteTablePropagation) UnmarshalJSON(b []byte) error { + type Properties TransitGatewayRouteTablePropagation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2TransitGatewayRouteTablePropagation) UnmarshalJSON(b []byte) erro // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2TransitGatewayRouteTablePropagation(*res.Properties) + *r = TransitGatewayRouteTablePropagation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-volume.go b/cloudformation/ec2/aws-ec2-volume.go similarity index 86% rename from cloudformation/resources/aws-ec2-volume.go rename to cloudformation/ec2/aws-ec2-volume.go index 70a9bf76bb..2f0dc7a042 100644 --- a/cloudformation/resources/aws-ec2-volume.go +++ b/cloudformation/ec2/aws-ec2-volume.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2Volume AWS CloudFormation Resource (AWS::EC2::Volume) +// Volume AWS CloudFormation Resource (AWS::EC2::Volume) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html -type AWSEC2Volume struct { +type Volume struct { // AutoEnableIO AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSEC2Volume struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VolumeType AWS CloudFormation Property // Required: false @@ -67,50 +69,50 @@ type AWSEC2Volume struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Volume) AWSCloudFormationType() string { +func (r *Volume) AWSCloudFormationType() string { return "AWS::EC2::Volume" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Volume) DependsOn() []string { +func (r *Volume) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Volume) SetDependsOn(dependencies []string) { +func (r *Volume) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Volume) Metadata() map[string]interface{} { +func (r *Volume) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Volume) SetMetadata(metadata map[string]interface{}) { +func (r *Volume) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Volume) DeletionPolicy() policies.DeletionPolicy { +func (r *Volume) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Volume) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Volume) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2Volume) MarshalJSON() ([]byte, error) { - type Properties AWSEC2Volume +func (r Volume) MarshalJSON() ([]byte, error) { + type Properties Volume return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +130,8 @@ func (r AWSEC2Volume) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2Volume) UnmarshalJSON(b []byte) error { - type Properties AWSEC2Volume +func (r *Volume) UnmarshalJSON(b []byte) error { + type Properties Volume res := &struct { Type string Properties *Properties @@ -148,7 +150,7 @@ func (r *AWSEC2Volume) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2Volume(*res.Properties) + *r = Volume(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-volumeattachment.go b/cloudformation/ec2/aws-ec2-volumeattachment.go similarity index 81% rename from cloudformation/resources/aws-ec2-volumeattachment.go rename to cloudformation/ec2/aws-ec2-volumeattachment.go index 63d315e970..56c4485c44 100644 --- a/cloudformation/resources/aws-ec2-volumeattachment.go +++ b/cloudformation/ec2/aws-ec2-volumeattachment.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VolumeAttachment AWS CloudFormation Resource (AWS::EC2::VolumeAttachment) +// VolumeAttachment AWS CloudFormation Resource (AWS::EC2::VolumeAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html -type AWSEC2VolumeAttachment struct { +type VolumeAttachment struct { // Device AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSEC2VolumeAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VolumeAttachment) AWSCloudFormationType() string { +func (r *VolumeAttachment) AWSCloudFormationType() string { return "AWS::EC2::VolumeAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VolumeAttachment) DependsOn() []string { +func (r *VolumeAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VolumeAttachment) SetDependsOn(dependencies []string) { +func (r *VolumeAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VolumeAttachment) Metadata() map[string]interface{} { +func (r *VolumeAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VolumeAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *VolumeAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VolumeAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *VolumeAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VolumeAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VolumeAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VolumeAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VolumeAttachment +func (r VolumeAttachment) MarshalJSON() ([]byte, error) { + type Properties VolumeAttachment return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSEC2VolumeAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VolumeAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VolumeAttachment +func (r *VolumeAttachment) UnmarshalJSON(b []byte) error { + type Properties VolumeAttachment res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSEC2VolumeAttachment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VolumeAttachment(*res.Properties) + *r = VolumeAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpc.go b/cloudformation/ec2/aws-ec2-vpc.go similarity index 84% rename from cloudformation/resources/aws-ec2-vpc.go rename to cloudformation/ec2/aws-ec2-vpc.go index de927401c2..30626f7c0a 100644 --- a/cloudformation/resources/aws-ec2-vpc.go +++ b/cloudformation/ec2/aws-ec2-vpc.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2VPC AWS CloudFormation Resource (AWS::EC2::VPC) +// VPC AWS CloudFormation Resource (AWS::EC2::VPC) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html -type AWSEC2VPC struct { +type VPC struct { // CidrBlock AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSEC2VPC struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSEC2VPC struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPC) AWSCloudFormationType() string { +func (r *VPC) AWSCloudFormationType() string { return "AWS::EC2::VPC" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPC) DependsOn() []string { +func (r *VPC) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPC) SetDependsOn(dependencies []string) { +func (r *VPC) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPC) Metadata() map[string]interface{} { +func (r *VPC) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPC) SetMetadata(metadata map[string]interface{}) { +func (r *VPC) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPC) DeletionPolicy() policies.DeletionPolicy { +func (r *VPC) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPC) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPC) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPC) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPC +func (r VPC) MarshalJSON() ([]byte, error) { + type Properties VPC return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSEC2VPC) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPC) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPC +func (r *VPC) UnmarshalJSON(b []byte) error { + type Properties VPC res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSEC2VPC) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPC(*res.Properties) + *r = VPC(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpccidrblock.go b/cloudformation/ec2/aws-ec2-vpccidrblock.go similarity index 82% rename from cloudformation/resources/aws-ec2-vpccidrblock.go rename to cloudformation/ec2/aws-ec2-vpccidrblock.go index 716c88a576..77551a2700 100644 --- a/cloudformation/resources/aws-ec2-vpccidrblock.go +++ b/cloudformation/ec2/aws-ec2-vpccidrblock.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPCCidrBlock AWS CloudFormation Resource (AWS::EC2::VPCCidrBlock) +// VPCCidrBlock AWS CloudFormation Resource (AWS::EC2::VPCCidrBlock) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html -type AWSEC2VPCCidrBlock struct { +type VPCCidrBlock struct { // AmazonProvidedIpv6CidrBlock AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSEC2VPCCidrBlock struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPCCidrBlock) AWSCloudFormationType() string { +func (r *VPCCidrBlock) AWSCloudFormationType() string { return "AWS::EC2::VPCCidrBlock" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCCidrBlock) DependsOn() []string { +func (r *VPCCidrBlock) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCCidrBlock) SetDependsOn(dependencies []string) { +func (r *VPCCidrBlock) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCCidrBlock) Metadata() map[string]interface{} { +func (r *VPCCidrBlock) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCCidrBlock) SetMetadata(metadata map[string]interface{}) { +func (r *VPCCidrBlock) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCCidrBlock) DeletionPolicy() policies.DeletionPolicy { +func (r *VPCCidrBlock) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCCidrBlock) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPCCidrBlock) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPCCidrBlock) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPCCidrBlock +func (r VPCCidrBlock) MarshalJSON() ([]byte, error) { + type Properties VPCCidrBlock return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSEC2VPCCidrBlock) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPCCidrBlock) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPCCidrBlock +func (r *VPCCidrBlock) UnmarshalJSON(b []byte) error { + type Properties VPCCidrBlock res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSEC2VPCCidrBlock) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPCCidrBlock(*res.Properties) + *r = VPCCidrBlock(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpcdhcpoptionsassociation.go b/cloudformation/ec2/aws-ec2-vpcdhcpoptionsassociation.go similarity index 77% rename from cloudformation/resources/aws-ec2-vpcdhcpoptionsassociation.go rename to cloudformation/ec2/aws-ec2-vpcdhcpoptionsassociation.go index 2c6438b8e8..5eeccf8a26 100644 --- a/cloudformation/resources/aws-ec2-vpcdhcpoptionsassociation.go +++ b/cloudformation/ec2/aws-ec2-vpcdhcpoptionsassociation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPCDHCPOptionsAssociation AWS CloudFormation Resource (AWS::EC2::VPCDHCPOptionsAssociation) +// VPCDHCPOptionsAssociation AWS CloudFormation Resource (AWS::EC2::VPCDHCPOptionsAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html -type AWSEC2VPCDHCPOptionsAssociation struct { +type VPCDHCPOptionsAssociation struct { // DhcpOptionsId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2VPCDHCPOptionsAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPCDHCPOptionsAssociation) AWSCloudFormationType() string { +func (r *VPCDHCPOptionsAssociation) AWSCloudFormationType() string { return "AWS::EC2::VPCDHCPOptionsAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCDHCPOptionsAssociation) DependsOn() []string { +func (r *VPCDHCPOptionsAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCDHCPOptionsAssociation) SetDependsOn(dependencies []string) { +func (r *VPCDHCPOptionsAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCDHCPOptionsAssociation) Metadata() map[string]interface{} { +func (r *VPCDHCPOptionsAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCDHCPOptionsAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *VPCDHCPOptionsAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCDHCPOptionsAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *VPCDHCPOptionsAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCDHCPOptionsAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPCDHCPOptionsAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPCDHCPOptionsAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPCDHCPOptionsAssociation +func (r VPCDHCPOptionsAssociation) MarshalJSON() ([]byte, error) { + type Properties VPCDHCPOptionsAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2VPCDHCPOptionsAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPCDHCPOptionsAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPCDHCPOptionsAssociation +func (r *VPCDHCPOptionsAssociation) UnmarshalJSON(b []byte) error { + type Properties VPCDHCPOptionsAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2VPCDHCPOptionsAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPCDHCPOptionsAssociation(*res.Properties) + *r = VPCDHCPOptionsAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpcendpoint.go b/cloudformation/ec2/aws-ec2-vpcendpoint.go similarity index 85% rename from cloudformation/resources/aws-ec2-vpcendpoint.go rename to cloudformation/ec2/aws-ec2-vpcendpoint.go index dbefc9c9da..019adc0330 100644 --- a/cloudformation/resources/aws-ec2-vpcendpoint.go +++ b/cloudformation/ec2/aws-ec2-vpcendpoint.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPCEndpoint AWS CloudFormation Resource (AWS::EC2::VPCEndpoint) +// VPCEndpoint AWS CloudFormation Resource (AWS::EC2::VPCEndpoint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html -type AWSEC2VPCEndpoint struct { +type VPCEndpoint struct { // PolicyDocument AWS CloudFormation Property // Required: false @@ -62,50 +63,50 @@ type AWSEC2VPCEndpoint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPCEndpoint) AWSCloudFormationType() string { +func (r *VPCEndpoint) AWSCloudFormationType() string { return "AWS::EC2::VPCEndpoint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCEndpoint) DependsOn() []string { +func (r *VPCEndpoint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCEndpoint) SetDependsOn(dependencies []string) { +func (r *VPCEndpoint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCEndpoint) Metadata() map[string]interface{} { +func (r *VPCEndpoint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCEndpoint) SetMetadata(metadata map[string]interface{}) { +func (r *VPCEndpoint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCEndpoint) DeletionPolicy() policies.DeletionPolicy { +func (r *VPCEndpoint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPCEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPCEndpoint) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPCEndpoint +func (r VPCEndpoint) MarshalJSON() ([]byte, error) { + type Properties VPCEndpoint return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSEC2VPCEndpoint) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPCEndpoint) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPCEndpoint +func (r *VPCEndpoint) UnmarshalJSON(b []byte) error { + type Properties VPCEndpoint res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSEC2VPCEndpoint) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPCEndpoint(*res.Properties) + *r = VPCEndpoint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpcendpointconnectionnotification.go b/cloudformation/ec2/aws-ec2-vpcendpointconnectionnotification.go similarity index 79% rename from cloudformation/resources/aws-ec2-vpcendpointconnectionnotification.go rename to cloudformation/ec2/aws-ec2-vpcendpointconnectionnotification.go index f58fb5f0a9..6bac965ddf 100644 --- a/cloudformation/resources/aws-ec2-vpcendpointconnectionnotification.go +++ b/cloudformation/ec2/aws-ec2-vpcendpointconnectionnotification.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPCEndpointConnectionNotification AWS CloudFormation Resource (AWS::EC2::VPCEndpointConnectionNotification) +// VPCEndpointConnectionNotification AWS CloudFormation Resource (AWS::EC2::VPCEndpointConnectionNotification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html -type AWSEC2VPCEndpointConnectionNotification struct { +type VPCEndpointConnectionNotification struct { // ConnectionEvents AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSEC2VPCEndpointConnectionNotification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPCEndpointConnectionNotification) AWSCloudFormationType() string { +func (r *VPCEndpointConnectionNotification) AWSCloudFormationType() string { return "AWS::EC2::VPCEndpointConnectionNotification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCEndpointConnectionNotification) DependsOn() []string { +func (r *VPCEndpointConnectionNotification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCEndpointConnectionNotification) SetDependsOn(dependencies []string) { +func (r *VPCEndpointConnectionNotification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCEndpointConnectionNotification) Metadata() map[string]interface{} { +func (r *VPCEndpointConnectionNotification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCEndpointConnectionNotification) SetMetadata(metadata map[string]interface{}) { +func (r *VPCEndpointConnectionNotification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCEndpointConnectionNotification) DeletionPolicy() policies.DeletionPolicy { +func (r *VPCEndpointConnectionNotification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCEndpointConnectionNotification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPCEndpointConnectionNotification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPCEndpointConnectionNotification) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPCEndpointConnectionNotification +func (r VPCEndpointConnectionNotification) MarshalJSON() ([]byte, error) { + type Properties VPCEndpointConnectionNotification return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSEC2VPCEndpointConnectionNotification) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPCEndpointConnectionNotification) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPCEndpointConnectionNotification +func (r *VPCEndpointConnectionNotification) UnmarshalJSON(b []byte) error { + type Properties VPCEndpointConnectionNotification res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSEC2VPCEndpointConnectionNotification) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPCEndpointConnectionNotification(*res.Properties) + *r = VPCEndpointConnectionNotification(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpcendpointservice.go b/cloudformation/ec2/aws-ec2-vpcendpointservice.go similarity index 79% rename from cloudformation/resources/aws-ec2-vpcendpointservice.go rename to cloudformation/ec2/aws-ec2-vpcendpointservice.go index 2c0def8b2a..649ed1ccb7 100644 --- a/cloudformation/resources/aws-ec2-vpcendpointservice.go +++ b/cloudformation/ec2/aws-ec2-vpcendpointservice.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPCEndpointService AWS CloudFormation Resource (AWS::EC2::VPCEndpointService) +// VPCEndpointService AWS CloudFormation Resource (AWS::EC2::VPCEndpointService) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html -type AWSEC2VPCEndpointService struct { +type VPCEndpointService struct { // AcceptanceRequired AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSEC2VPCEndpointService struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPCEndpointService) AWSCloudFormationType() string { +func (r *VPCEndpointService) AWSCloudFormationType() string { return "AWS::EC2::VPCEndpointService" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCEndpointService) DependsOn() []string { +func (r *VPCEndpointService) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCEndpointService) SetDependsOn(dependencies []string) { +func (r *VPCEndpointService) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCEndpointService) Metadata() map[string]interface{} { +func (r *VPCEndpointService) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCEndpointService) SetMetadata(metadata map[string]interface{}) { +func (r *VPCEndpointService) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCEndpointService) DeletionPolicy() policies.DeletionPolicy { +func (r *VPCEndpointService) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCEndpointService) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPCEndpointService) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPCEndpointService) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPCEndpointService +func (r VPCEndpointService) MarshalJSON() ([]byte, error) { + type Properties VPCEndpointService return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2VPCEndpointService) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPCEndpointService) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPCEndpointService +func (r *VPCEndpointService) UnmarshalJSON(b []byte) error { + type Properties VPCEndpointService res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2VPCEndpointService) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPCEndpointService(*res.Properties) + *r = VPCEndpointService(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpcendpointservicepermissions.go b/cloudformation/ec2/aws-ec2-vpcendpointservicepermissions.go similarity index 77% rename from cloudformation/resources/aws-ec2-vpcendpointservicepermissions.go rename to cloudformation/ec2/aws-ec2-vpcendpointservicepermissions.go index 98a80167f8..c286e3667f 100644 --- a/cloudformation/resources/aws-ec2-vpcendpointservicepermissions.go +++ b/cloudformation/ec2/aws-ec2-vpcendpointservicepermissions.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPCEndpointServicePermissions AWS CloudFormation Resource (AWS::EC2::VPCEndpointServicePermissions) +// VPCEndpointServicePermissions AWS CloudFormation Resource (AWS::EC2::VPCEndpointServicePermissions) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html -type AWSEC2VPCEndpointServicePermissions struct { +type VPCEndpointServicePermissions struct { // AllowedPrincipals AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSEC2VPCEndpointServicePermissions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPCEndpointServicePermissions) AWSCloudFormationType() string { +func (r *VPCEndpointServicePermissions) AWSCloudFormationType() string { return "AWS::EC2::VPCEndpointServicePermissions" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCEndpointServicePermissions) DependsOn() []string { +func (r *VPCEndpointServicePermissions) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCEndpointServicePermissions) SetDependsOn(dependencies []string) { +func (r *VPCEndpointServicePermissions) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCEndpointServicePermissions) Metadata() map[string]interface{} { +func (r *VPCEndpointServicePermissions) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCEndpointServicePermissions) SetMetadata(metadata map[string]interface{}) { +func (r *VPCEndpointServicePermissions) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCEndpointServicePermissions) DeletionPolicy() policies.DeletionPolicy { +func (r *VPCEndpointServicePermissions) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCEndpointServicePermissions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPCEndpointServicePermissions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPCEndpointServicePermissions) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPCEndpointServicePermissions +func (r VPCEndpointServicePermissions) MarshalJSON() ([]byte, error) { + type Properties VPCEndpointServicePermissions return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2VPCEndpointServicePermissions) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPCEndpointServicePermissions) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPCEndpointServicePermissions +func (r *VPCEndpointServicePermissions) UnmarshalJSON(b []byte) error { + type Properties VPCEndpointServicePermissions res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2VPCEndpointServicePermissions) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPCEndpointServicePermissions(*res.Properties) + *r = VPCEndpointServicePermissions(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpcgatewayattachment.go b/cloudformation/ec2/aws-ec2-vpcgatewayattachment.go similarity index 80% rename from cloudformation/resources/aws-ec2-vpcgatewayattachment.go rename to cloudformation/ec2/aws-ec2-vpcgatewayattachment.go index 19bf3c97db..7556a9f1d8 100644 --- a/cloudformation/resources/aws-ec2-vpcgatewayattachment.go +++ b/cloudformation/ec2/aws-ec2-vpcgatewayattachment.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPCGatewayAttachment AWS CloudFormation Resource (AWS::EC2::VPCGatewayAttachment) +// VPCGatewayAttachment AWS CloudFormation Resource (AWS::EC2::VPCGatewayAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html -type AWSEC2VPCGatewayAttachment struct { +type VPCGatewayAttachment struct { // InternetGatewayId AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSEC2VPCGatewayAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPCGatewayAttachment) AWSCloudFormationType() string { +func (r *VPCGatewayAttachment) AWSCloudFormationType() string { return "AWS::EC2::VPCGatewayAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCGatewayAttachment) DependsOn() []string { +func (r *VPCGatewayAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCGatewayAttachment) SetDependsOn(dependencies []string) { +func (r *VPCGatewayAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCGatewayAttachment) Metadata() map[string]interface{} { +func (r *VPCGatewayAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCGatewayAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *VPCGatewayAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCGatewayAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *VPCGatewayAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCGatewayAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPCGatewayAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPCGatewayAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPCGatewayAttachment +func (r VPCGatewayAttachment) MarshalJSON() ([]byte, error) { + type Properties VPCGatewayAttachment return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSEC2VPCGatewayAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPCGatewayAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPCGatewayAttachment +func (r *VPCGatewayAttachment) UnmarshalJSON(b []byte) error { + type Properties VPCGatewayAttachment res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSEC2VPCGatewayAttachment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPCGatewayAttachment(*res.Properties) + *r = VPCGatewayAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpcpeeringconnection.go b/cloudformation/ec2/aws-ec2-vpcpeeringconnection.go similarity index 82% rename from cloudformation/resources/aws-ec2-vpcpeeringconnection.go rename to cloudformation/ec2/aws-ec2-vpcpeeringconnection.go index 03d7c6a218..4b0c796bf9 100644 --- a/cloudformation/resources/aws-ec2-vpcpeeringconnection.go +++ b/cloudformation/ec2/aws-ec2-vpcpeeringconnection.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2VPCPeeringConnection AWS CloudFormation Resource (AWS::EC2::VPCPeeringConnection) +// VPCPeeringConnection AWS CloudFormation Resource (AWS::EC2::VPCPeeringConnection) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html -type AWSEC2VPCPeeringConnection struct { +type VPCPeeringConnection struct { // PeerOwnerId AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSEC2VPCPeeringConnection struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcId AWS CloudFormation Property // Required: true @@ -52,50 +54,50 @@ type AWSEC2VPCPeeringConnection struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPCPeeringConnection) AWSCloudFormationType() string { +func (r *VPCPeeringConnection) AWSCloudFormationType() string { return "AWS::EC2::VPCPeeringConnection" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCPeeringConnection) DependsOn() []string { +func (r *VPCPeeringConnection) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPCPeeringConnection) SetDependsOn(dependencies []string) { +func (r *VPCPeeringConnection) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCPeeringConnection) Metadata() map[string]interface{} { +func (r *VPCPeeringConnection) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPCPeeringConnection) SetMetadata(metadata map[string]interface{}) { +func (r *VPCPeeringConnection) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCPeeringConnection) DeletionPolicy() policies.DeletionPolicy { +func (r *VPCPeeringConnection) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPCPeeringConnection) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPCPeeringConnection) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPCPeeringConnection) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPCPeeringConnection +func (r VPCPeeringConnection) MarshalJSON() ([]byte, error) { + type Properties VPCPeeringConnection return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +115,8 @@ func (r AWSEC2VPCPeeringConnection) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPCPeeringConnection) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPCPeeringConnection +func (r *VPCPeeringConnection) UnmarshalJSON(b []byte) error { + type Properties VPCPeeringConnection res := &struct { Type string Properties *Properties @@ -133,7 +135,7 @@ func (r *AWSEC2VPCPeeringConnection) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPCPeeringConnection(*res.Properties) + *r = VPCPeeringConnection(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpnconnection.go b/cloudformation/ec2/aws-ec2-vpnconnection.go similarity index 82% rename from cloudformation/resources/aws-ec2-vpnconnection.go rename to cloudformation/ec2/aws-ec2-vpnconnection.go index a778e333c6..b8644e10cd 100644 --- a/cloudformation/resources/aws-ec2-vpnconnection.go +++ b/cloudformation/ec2/aws-ec2-vpnconnection.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2VPNConnection AWS CloudFormation Resource (AWS::EC2::VPNConnection) +// VPNConnection AWS CloudFormation Resource (AWS::EC2::VPNConnection) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html -type AWSEC2VPNConnection struct { +type VPNConnection struct { // CustomerGatewayId AWS CloudFormation Property // Required: true @@ -24,7 +26,7 @@ type AWSEC2VPNConnection struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TransitGatewayId AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSEC2VPNConnection struct { // VpnTunnelOptionsSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-vpntunneloptionsspecifications - VpnTunnelOptionsSpecifications []AWSEC2VPNConnection_VpnTunnelOptionsSpecification `json:"VpnTunnelOptionsSpecifications,omitempty"` + VpnTunnelOptionsSpecifications []VPNConnection_VpnTunnelOptionsSpecification `json:"VpnTunnelOptionsSpecifications,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +59,50 @@ type AWSEC2VPNConnection struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPNConnection) AWSCloudFormationType() string { +func (r *VPNConnection) AWSCloudFormationType() string { return "AWS::EC2::VPNConnection" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNConnection) DependsOn() []string { +func (r *VPNConnection) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNConnection) SetDependsOn(dependencies []string) { +func (r *VPNConnection) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNConnection) Metadata() map[string]interface{} { +func (r *VPNConnection) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNConnection) SetMetadata(metadata map[string]interface{}) { +func (r *VPNConnection) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNConnection) DeletionPolicy() policies.DeletionPolicy { +func (r *VPNConnection) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNConnection) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPNConnection) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPNConnection) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPNConnection +func (r VPNConnection) MarshalJSON() ([]byte, error) { + type Properties VPNConnection return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +120,8 @@ func (r AWSEC2VPNConnection) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPNConnection) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPNConnection +func (r *VPNConnection) UnmarshalJSON(b []byte) error { + type Properties VPNConnection res := &struct { Type string Properties *Properties @@ -138,7 +140,7 @@ func (r *AWSEC2VPNConnection) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPNConnection(*res.Properties) + *r = VPNConnection(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ec2/aws-ec2-vpnconnection_vpntunneloptionsspecification.go b/cloudformation/ec2/aws-ec2-vpnconnection_vpntunneloptionsspecification.go new file mode 100644 index 0000000000..0f9759d099 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-vpnconnection_vpntunneloptionsspecification.go @@ -0,0 +1,70 @@ +package ec2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// VPNConnection_VpnTunnelOptionsSpecification AWS CloudFormation Resource (AWS::EC2::VPNConnection.VpnTunnelOptionsSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html +type VPNConnection_VpnTunnelOptionsSpecification struct { + + // PreSharedKey AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html#cfn-ec2-vpnconnection-vpntunneloptionsspecification-presharedkey + PreSharedKey string `json:"PreSharedKey,omitempty"` + + // TunnelInsideCidr AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html#cfn-ec2-vpnconnection-vpntunneloptionsspecification-tunnelinsidecidr + TunnelInsideCidr string `json:"TunnelInsideCidr,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *VPNConnection_VpnTunnelOptionsSpecification) AWSCloudFormationType() string { + return "AWS::EC2::VPNConnection.VpnTunnelOptionsSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VPNConnection_VpnTunnelOptionsSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *VPNConnection_VpnTunnelOptionsSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VPNConnection_VpnTunnelOptionsSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *VPNConnection_VpnTunnelOptionsSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VPNConnection_VpnTunnelOptionsSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *VPNConnection_VpnTunnelOptionsSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ec2-vpnconnectionroute.go b/cloudformation/ec2/aws-ec2-vpnconnectionroute.go similarity index 79% rename from cloudformation/resources/aws-ec2-vpnconnectionroute.go rename to cloudformation/ec2/aws-ec2-vpnconnectionroute.go index 554d5d761e..b7115bde94 100644 --- a/cloudformation/resources/aws-ec2-vpnconnectionroute.go +++ b/cloudformation/ec2/aws-ec2-vpnconnectionroute.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPNConnectionRoute AWS CloudFormation Resource (AWS::EC2::VPNConnectionRoute) +// VPNConnectionRoute AWS CloudFormation Resource (AWS::EC2::VPNConnectionRoute) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html -type AWSEC2VPNConnectionRoute struct { +type VPNConnectionRoute struct { // DestinationCidrBlock AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2VPNConnectionRoute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPNConnectionRoute) AWSCloudFormationType() string { +func (r *VPNConnectionRoute) AWSCloudFormationType() string { return "AWS::EC2::VPNConnectionRoute" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNConnectionRoute) DependsOn() []string { +func (r *VPNConnectionRoute) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNConnectionRoute) SetDependsOn(dependencies []string) { +func (r *VPNConnectionRoute) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNConnectionRoute) Metadata() map[string]interface{} { +func (r *VPNConnectionRoute) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNConnectionRoute) SetMetadata(metadata map[string]interface{}) { +func (r *VPNConnectionRoute) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNConnectionRoute) DeletionPolicy() policies.DeletionPolicy { +func (r *VPNConnectionRoute) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNConnectionRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPNConnectionRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPNConnectionRoute) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPNConnectionRoute +func (r VPNConnectionRoute) MarshalJSON() ([]byte, error) { + type Properties VPNConnectionRoute return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2VPNConnectionRoute) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPNConnectionRoute) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPNConnectionRoute +func (r *VPNConnectionRoute) UnmarshalJSON(b []byte) error { + type Properties VPNConnectionRoute res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2VPNConnectionRoute) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPNConnectionRoute(*res.Properties) + *r = VPNConnectionRoute(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpngateway.go b/cloudformation/ec2/aws-ec2-vpngateway.go similarity index 81% rename from cloudformation/resources/aws-ec2-vpngateway.go rename to cloudformation/ec2/aws-ec2-vpngateway.go index 1558689198..6dfd7ad529 100644 --- a/cloudformation/resources/aws-ec2-vpngateway.go +++ b/cloudformation/ec2/aws-ec2-vpngateway.go @@ -1,15 +1,17 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEC2VPNGateway AWS CloudFormation Resource (AWS::EC2::VPNGateway) +// VPNGateway AWS CloudFormation Resource (AWS::EC2::VPNGateway) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html -type AWSEC2VPNGateway struct { +type VPNGateway struct { // AmazonSideAsn AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSEC2VPNGateway struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -37,50 +39,50 @@ type AWSEC2VPNGateway struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPNGateway) AWSCloudFormationType() string { +func (r *VPNGateway) AWSCloudFormationType() string { return "AWS::EC2::VPNGateway" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNGateway) DependsOn() []string { +func (r *VPNGateway) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNGateway) SetDependsOn(dependencies []string) { +func (r *VPNGateway) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNGateway) Metadata() map[string]interface{} { +func (r *VPNGateway) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNGateway) SetMetadata(metadata map[string]interface{}) { +func (r *VPNGateway) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNGateway) DeletionPolicy() policies.DeletionPolicy { +func (r *VPNGateway) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPNGateway) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPNGateway) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPNGateway +func (r VPNGateway) MarshalJSON() ([]byte, error) { + type Properties VPNGateway return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +100,8 @@ func (r AWSEC2VPNGateway) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPNGateway) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPNGateway +func (r *VPNGateway) UnmarshalJSON(b []byte) error { + type Properties VPNGateway res := &struct { Type string Properties *Properties @@ -118,7 +120,7 @@ func (r *AWSEC2VPNGateway) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPNGateway(*res.Properties) + *r = VPNGateway(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ec2-vpngatewayroutepropagation.go b/cloudformation/ec2/aws-ec2-vpngatewayroutepropagation.go similarity index 77% rename from cloudformation/resources/aws-ec2-vpngatewayroutepropagation.go rename to cloudformation/ec2/aws-ec2-vpngatewayroutepropagation.go index a6eb153e8a..47fd1df849 100644 --- a/cloudformation/resources/aws-ec2-vpngatewayroutepropagation.go +++ b/cloudformation/ec2/aws-ec2-vpngatewayroutepropagation.go @@ -1,15 +1,16 @@ -package resources +package ec2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEC2VPNGatewayRoutePropagation AWS CloudFormation Resource (AWS::EC2::VPNGatewayRoutePropagation) +// VPNGatewayRoutePropagation AWS CloudFormation Resource (AWS::EC2::VPNGatewayRoutePropagation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html -type AWSEC2VPNGatewayRoutePropagation struct { +type VPNGatewayRoutePropagation struct { // RouteTableIds AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSEC2VPNGatewayRoutePropagation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPNGatewayRoutePropagation) AWSCloudFormationType() string { +func (r *VPNGatewayRoutePropagation) AWSCloudFormationType() string { return "AWS::EC2::VPNGatewayRoutePropagation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNGatewayRoutePropagation) DependsOn() []string { +func (r *VPNGatewayRoutePropagation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNGatewayRoutePropagation) SetDependsOn(dependencies []string) { +func (r *VPNGatewayRoutePropagation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNGatewayRoutePropagation) Metadata() map[string]interface{} { +func (r *VPNGatewayRoutePropagation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNGatewayRoutePropagation) SetMetadata(metadata map[string]interface{}) { +func (r *VPNGatewayRoutePropagation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNGatewayRoutePropagation) DeletionPolicy() policies.DeletionPolicy { +func (r *VPNGatewayRoutePropagation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNGatewayRoutePropagation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VPNGatewayRoutePropagation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEC2VPNGatewayRoutePropagation) MarshalJSON() ([]byte, error) { - type Properties AWSEC2VPNGatewayRoutePropagation +func (r VPNGatewayRoutePropagation) MarshalJSON() ([]byte, error) { + type Properties VPNGatewayRoutePropagation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEC2VPNGatewayRoutePropagation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEC2VPNGatewayRoutePropagation) UnmarshalJSON(b []byte) error { - type Properties AWSEC2VPNGatewayRoutePropagation +func (r *VPNGatewayRoutePropagation) UnmarshalJSON(b []byte) error { + type Properties VPNGatewayRoutePropagation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEC2VPNGatewayRoutePropagation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEC2VPNGatewayRoutePropagation(*res.Properties) + *r = VPNGatewayRoutePropagation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ecr-repository.go b/cloudformation/ecr/aws-ecr-repository.go similarity index 81% rename from cloudformation/resources/aws-ecr-repository.go rename to cloudformation/ecr/aws-ecr-repository.go index b507a532be..568c3f4805 100644 --- a/cloudformation/resources/aws-ecr-repository.go +++ b/cloudformation/ecr/aws-ecr-repository.go @@ -1,20 +1,22 @@ -package resources +package ecr import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSECRRepository AWS CloudFormation Resource (AWS::ECR::Repository) +// Repository AWS CloudFormation Resource (AWS::ECR::Repository) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html -type AWSECRRepository struct { +type Repository struct { // LifecyclePolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-lifecyclepolicy - LifecyclePolicy *AWSECRRepository_LifecyclePolicy `json:"LifecyclePolicy,omitempty"` + LifecyclePolicy *Repository_LifecyclePolicy `json:"LifecyclePolicy,omitempty"` // RepositoryName AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSECRRepository struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSECRRepository struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECRRepository) AWSCloudFormationType() string { +func (r *Repository) AWSCloudFormationType() string { return "AWS::ECR::Repository" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECRRepository) DependsOn() []string { +func (r *Repository) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECRRepository) SetDependsOn(dependencies []string) { +func (r *Repository) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECRRepository) Metadata() map[string]interface{} { +func (r *Repository) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECRRepository) SetMetadata(metadata map[string]interface{}) { +func (r *Repository) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECRRepository) DeletionPolicy() policies.DeletionPolicy { +func (r *Repository) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECRRepository) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Repository) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSECRRepository) MarshalJSON() ([]byte, error) { - type Properties AWSECRRepository +func (r Repository) MarshalJSON() ([]byte, error) { + type Properties Repository return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSECRRepository) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSECRRepository) UnmarshalJSON(b []byte) error { - type Properties AWSECRRepository +func (r *Repository) UnmarshalJSON(b []byte) error { + type Properties Repository res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSECRRepository) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSECRRepository(*res.Properties) + *r = Repository(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ecr/aws-ecr-repository_lifecyclepolicy.go b/cloudformation/ecr/aws-ecr-repository_lifecyclepolicy.go new file mode 100644 index 0000000000..9c9540db29 --- /dev/null +++ b/cloudformation/ecr/aws-ecr-repository_lifecyclepolicy.go @@ -0,0 +1,70 @@ +package ecr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Repository_LifecyclePolicy AWS CloudFormation Resource (AWS::ECR::Repository.LifecyclePolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html +type Repository_LifecyclePolicy struct { + + // LifecyclePolicyText AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-lifecyclepolicytext + LifecyclePolicyText string `json:"LifecyclePolicyText,omitempty"` + + // RegistryId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-registryid + RegistryId string `json:"RegistryId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Repository_LifecyclePolicy) AWSCloudFormationType() string { + return "AWS::ECR::Repository.LifecyclePolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Repository_LifecyclePolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Repository_LifecyclePolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Repository_LifecyclePolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Repository_LifecyclePolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Repository_LifecyclePolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Repository_LifecyclePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ecs-cluster.go b/cloudformation/ecs/aws-ecs-cluster.go similarity index 81% rename from cloudformation/resources/aws-ecs-cluster.go rename to cloudformation/ecs/aws-ecs-cluster.go index 584e99937b..4b261c7c0b 100644 --- a/cloudformation/resources/aws-ecs-cluster.go +++ b/cloudformation/ecs/aws-ecs-cluster.go @@ -1,15 +1,17 @@ -package resources +package ecs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSECSCluster AWS CloudFormation Resource (AWS::ECS::Cluster) +// Cluster AWS CloudFormation Resource (AWS::ECS::Cluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html -type AWSECSCluster struct { +type Cluster struct { // ClusterName AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSECSCluster struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +34,50 @@ type AWSECSCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSCluster) AWSCloudFormationType() string { +func (r *Cluster) AWSCloudFormationType() string { return "AWS::ECS::Cluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSCluster) DependsOn() []string { +func (r *Cluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSCluster) SetDependsOn(dependencies []string) { +func (r *Cluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSCluster) Metadata() map[string]interface{} { +func (r *Cluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSCluster) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSECSCluster) MarshalJSON() ([]byte, error) { - type Properties AWSECSCluster +func (r Cluster) MarshalJSON() ([]byte, error) { + type Properties Cluster return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +95,8 @@ func (r AWSECSCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSECSCluster) UnmarshalJSON(b []byte) error { - type Properties AWSECSCluster +func (r *Cluster) UnmarshalJSON(b []byte) error { + type Properties Cluster res := &struct { Type string Properties *Properties @@ -113,7 +115,7 @@ func (r *AWSECSCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSECSCluster(*res.Properties) + *r = Cluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ecs-service.go b/cloudformation/ecs/aws-ecs-service.go similarity index 84% rename from cloudformation/resources/aws-ecs-service.go rename to cloudformation/ecs/aws-ecs-service.go index a53901781a..7a921d0cbf 100644 --- a/cloudformation/resources/aws-ecs-service.go +++ b/cloudformation/ecs/aws-ecs-service.go @@ -1,15 +1,17 @@ -package resources +package ecs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSECSService AWS CloudFormation Resource (AWS::ECS::Service) +// Service AWS CloudFormation Resource (AWS::ECS::Service) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html -type AWSECSService struct { +type Service struct { // Cluster AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSECSService struct { // DeploymentConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-deploymentconfiguration - DeploymentConfiguration *AWSECSService_DeploymentConfiguration `json:"DeploymentConfiguration,omitempty"` + DeploymentConfiguration *Service_DeploymentConfiguration `json:"DeploymentConfiguration,omitempty"` // DesiredCount AWS CloudFormation Property // Required: false @@ -44,22 +46,22 @@ type AWSECSService struct { // LoadBalancers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-loadbalancers - LoadBalancers []AWSECSService_LoadBalancer `json:"LoadBalancers,omitempty"` + LoadBalancers []Service_LoadBalancer `json:"LoadBalancers,omitempty"` // NetworkConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-networkconfiguration - NetworkConfiguration *AWSECSService_NetworkConfiguration `json:"NetworkConfiguration,omitempty"` + NetworkConfiguration *Service_NetworkConfiguration `json:"NetworkConfiguration,omitempty"` // PlacementConstraints AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementconstraints - PlacementConstraints []AWSECSService_PlacementConstraint `json:"PlacementConstraints,omitempty"` + PlacementConstraints []Service_PlacementConstraint `json:"PlacementConstraints,omitempty"` // PlacementStrategies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementstrategies - PlacementStrategies []AWSECSService_PlacementStrategy `json:"PlacementStrategies,omitempty"` + PlacementStrategies []Service_PlacementStrategy `json:"PlacementStrategies,omitempty"` // PlatformVersion AWS CloudFormation Property // Required: false @@ -89,12 +91,12 @@ type AWSECSService struct { // ServiceRegistries AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-serviceregistries - ServiceRegistries []AWSECSService_ServiceRegistry `json:"ServiceRegistries,omitempty"` + ServiceRegistries []Service_ServiceRegistry `json:"ServiceRegistries,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TaskDefinition AWS CloudFormation Property // Required: true @@ -112,50 +114,50 @@ type AWSECSService struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService) AWSCloudFormationType() string { +func (r *Service) AWSCloudFormationType() string { return "AWS::ECS::Service" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService) DependsOn() []string { +func (r *Service) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService) SetDependsOn(dependencies []string) { +func (r *Service) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService) Metadata() map[string]interface{} { +func (r *Service) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService) SetMetadata(metadata map[string]interface{}) { +func (r *Service) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService) DeletionPolicy() policies.DeletionPolicy { +func (r *Service) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSECSService) MarshalJSON() ([]byte, error) { - type Properties AWSECSService +func (r Service) MarshalJSON() ([]byte, error) { + type Properties Service return json.Marshal(&struct { Type string Properties Properties @@ -173,8 +175,8 @@ func (r AWSECSService) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSECSService) UnmarshalJSON(b []byte) error { - type Properties AWSECSService +func (r *Service) UnmarshalJSON(b []byte) error { + type Properties Service res := &struct { Type string Properties *Properties @@ -193,7 +195,7 @@ func (r *AWSECSService) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSECSService(*res.Properties) + *r = Service(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ecs-service_awsvpcconfiguration.go b/cloudformation/ecs/aws-ecs-service_awsvpcconfiguration.go similarity index 76% rename from cloudformation/resources/aws-ecs-service_awsvpcconfiguration.go rename to cloudformation/ecs/aws-ecs-service_awsvpcconfiguration.go index cfba7e5372..5f8ae08455 100644 --- a/cloudformation/resources/aws-ecs-service_awsvpcconfiguration.go +++ b/cloudformation/ecs/aws-ecs-service_awsvpcconfiguration.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSService_AwsVpcConfiguration AWS CloudFormation Resource (AWS::ECS::Service.AwsVpcConfiguration) +// Service_AwsVpcConfiguration AWS CloudFormation Resource (AWS::ECS::Service.AwsVpcConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html -type AWSECSService_AwsVpcConfiguration struct { +type Service_AwsVpcConfiguration struct { // AssignPublicIp AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSECSService_AwsVpcConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_AwsVpcConfiguration) AWSCloudFormationType() string { +func (r *Service_AwsVpcConfiguration) AWSCloudFormationType() string { return "AWS::ECS::Service.AwsVpcConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_AwsVpcConfiguration) DependsOn() []string { +func (r *Service_AwsVpcConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_AwsVpcConfiguration) SetDependsOn(dependencies []string) { +func (r *Service_AwsVpcConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_AwsVpcConfiguration) Metadata() map[string]interface{} { +func (r *Service_AwsVpcConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_AwsVpcConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Service_AwsVpcConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_AwsVpcConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Service_AwsVpcConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_AwsVpcConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service_AwsVpcConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ecs/aws-ecs-service_deploymentconfiguration.go b/cloudformation/ecs/aws-ecs-service_deploymentconfiguration.go new file mode 100644 index 0000000000..9dbd904b16 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-service_deploymentconfiguration.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Service_DeploymentConfiguration AWS CloudFormation Resource (AWS::ECS::Service.DeploymentConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html +type Service_DeploymentConfiguration struct { + + // MaximumPercent AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-maximumpercent + MaximumPercent int `json:"MaximumPercent,omitempty"` + + // MinimumHealthyPercent AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-minimumhealthypercent + MinimumHealthyPercent int `json:"MinimumHealthyPercent,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Service_DeploymentConfiguration) AWSCloudFormationType() string { + return "AWS::ECS::Service.DeploymentConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_DeploymentConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_DeploymentConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_DeploymentConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_DeploymentConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_DeploymentConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_DeploymentConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ecs-service_loadbalancer.go b/cloudformation/ecs/aws-ecs-service_loadbalancer.go similarity index 79% rename from cloudformation/resources/aws-ecs-service_loadbalancer.go rename to cloudformation/ecs/aws-ecs-service_loadbalancer.go index 615da5d022..4edd2b3125 100644 --- a/cloudformation/resources/aws-ecs-service_loadbalancer.go +++ b/cloudformation/ecs/aws-ecs-service_loadbalancer.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSService_LoadBalancer AWS CloudFormation Resource (AWS::ECS::Service.LoadBalancer) +// Service_LoadBalancer AWS CloudFormation Resource (AWS::ECS::Service.LoadBalancer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html -type AWSECSService_LoadBalancer struct { +type Service_LoadBalancer struct { // ContainerName AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSECSService_LoadBalancer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_LoadBalancer) AWSCloudFormationType() string { +func (r *Service_LoadBalancer) AWSCloudFormationType() string { return "AWS::ECS::Service.LoadBalancer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_LoadBalancer) DependsOn() []string { +func (r *Service_LoadBalancer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_LoadBalancer) SetDependsOn(dependencies []string) { +func (r *Service_LoadBalancer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_LoadBalancer) Metadata() map[string]interface{} { +func (r *Service_LoadBalancer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_LoadBalancer) SetMetadata(metadata map[string]interface{}) { +func (r *Service_LoadBalancer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_LoadBalancer) DeletionPolicy() policies.DeletionPolicy { +func (r *Service_LoadBalancer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_LoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service_LoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ecs/aws-ecs-service_networkconfiguration.go b/cloudformation/ecs/aws-ecs-service_networkconfiguration.go new file mode 100644 index 0000000000..7fe3ef449a --- /dev/null +++ b/cloudformation/ecs/aws-ecs-service_networkconfiguration.go @@ -0,0 +1,65 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Service_NetworkConfiguration AWS CloudFormation Resource (AWS::ECS::Service.NetworkConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html +type Service_NetworkConfiguration struct { + + // AwsvpcConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html#cfn-ecs-service-networkconfiguration-awsvpcconfiguration + AwsvpcConfiguration *Service_AwsVpcConfiguration `json:"AwsvpcConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Service_NetworkConfiguration) AWSCloudFormationType() string { + return "AWS::ECS::Service.NetworkConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_NetworkConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_NetworkConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_NetworkConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_NetworkConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_NetworkConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-service_placementconstraint.go b/cloudformation/ecs/aws-ecs-service_placementconstraint.go new file mode 100644 index 0000000000..bb85f7e7f3 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-service_placementconstraint.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Service_PlacementConstraint AWS CloudFormation Resource (AWS::ECS::Service.PlacementConstraint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html +type Service_PlacementConstraint struct { + + // Expression AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-expression + Expression string `json:"Expression,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Service_PlacementConstraint) AWSCloudFormationType() string { + return "AWS::ECS::Service.PlacementConstraint" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_PlacementConstraint) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_PlacementConstraint) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_PlacementConstraint) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_PlacementConstraint) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_PlacementConstraint) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_PlacementConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-service_placementstrategy.go b/cloudformation/ecs/aws-ecs-service_placementstrategy.go new file mode 100644 index 0000000000..a05e933485 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-service_placementstrategy.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Service_PlacementStrategy AWS CloudFormation Resource (AWS::ECS::Service.PlacementStrategy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html +type Service_PlacementStrategy struct { + + // Field AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-field + Field string `json:"Field,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Service_PlacementStrategy) AWSCloudFormationType() string { + return "AWS::ECS::Service.PlacementStrategy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_PlacementStrategy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_PlacementStrategy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_PlacementStrategy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_PlacementStrategy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_PlacementStrategy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_PlacementStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ecs-service_serviceregistry.go b/cloudformation/ecs/aws-ecs-service_serviceregistry.go similarity index 78% rename from cloudformation/resources/aws-ecs-service_serviceregistry.go rename to cloudformation/ecs/aws-ecs-service_serviceregistry.go index 31a188d192..13c51d4401 100644 --- a/cloudformation/resources/aws-ecs-service_serviceregistry.go +++ b/cloudformation/ecs/aws-ecs-service_serviceregistry.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSService_ServiceRegistry AWS CloudFormation Resource (AWS::ECS::Service.ServiceRegistry) +// Service_ServiceRegistry AWS CloudFormation Resource (AWS::ECS::Service.ServiceRegistry) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html -type AWSECSService_ServiceRegistry struct { +type Service_ServiceRegistry struct { // ContainerName AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSECSService_ServiceRegistry struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_ServiceRegistry) AWSCloudFormationType() string { +func (r *Service_ServiceRegistry) AWSCloudFormationType() string { return "AWS::ECS::Service.ServiceRegistry" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_ServiceRegistry) DependsOn() []string { +func (r *Service_ServiceRegistry) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_ServiceRegistry) SetDependsOn(dependencies []string) { +func (r *Service_ServiceRegistry) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_ServiceRegistry) Metadata() map[string]interface{} { +func (r *Service_ServiceRegistry) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_ServiceRegistry) SetMetadata(metadata map[string]interface{}) { +func (r *Service_ServiceRegistry) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_ServiceRegistry) DeletionPolicy() policies.DeletionPolicy { +func (r *Service_ServiceRegistry) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_ServiceRegistry) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service_ServiceRegistry) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition.go b/cloudformation/ecs/aws-ecs-taskdefinition.go similarity index 83% rename from cloudformation/resources/aws-ecs-taskdefinition.go rename to cloudformation/ecs/aws-ecs-taskdefinition.go index b602488eb0..06cc4c5c48 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition.go @@ -1,20 +1,22 @@ -package resources +package ecs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSECSTaskDefinition AWS CloudFormation Resource (AWS::ECS::TaskDefinition) +// TaskDefinition AWS CloudFormation Resource (AWS::ECS::TaskDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html -type AWSECSTaskDefinition struct { +type TaskDefinition struct { // ContainerDefinitions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-containerdefinitions - ContainerDefinitions []AWSECSTaskDefinition_ContainerDefinition `json:"ContainerDefinitions,omitempty"` + ContainerDefinitions []TaskDefinition_ContainerDefinition `json:"ContainerDefinitions,omitempty"` // Cpu AWS CloudFormation Property // Required: false @@ -54,12 +56,12 @@ type AWSECSTaskDefinition struct { // PlacementConstraints AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-placementconstraints - PlacementConstraints []AWSECSTaskDefinition_TaskDefinitionPlacementConstraint `json:"PlacementConstraints,omitempty"` + PlacementConstraints []TaskDefinition_TaskDefinitionPlacementConstraint `json:"PlacementConstraints,omitempty"` // ProxyConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-proxyconfiguration - ProxyConfiguration *AWSECSTaskDefinition_ProxyConfiguration `json:"ProxyConfiguration,omitempty"` + ProxyConfiguration *TaskDefinition_ProxyConfiguration `json:"ProxyConfiguration,omitempty"` // RequiresCompatibilities AWS CloudFormation Property // Required: false @@ -69,7 +71,7 @@ type AWSECSTaskDefinition struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TaskRoleArn AWS CloudFormation Property // Required: false @@ -79,7 +81,7 @@ type AWSECSTaskDefinition struct { // Volumes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-volumes - Volumes []AWSECSTaskDefinition_Volume `json:"Volumes,omitempty"` + Volumes []TaskDefinition_Volume `json:"Volumes,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -92,50 +94,50 @@ type AWSECSTaskDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition) AWSCloudFormationType() string { +func (r *TaskDefinition) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition) DependsOn() []string { +func (r *TaskDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition) SetDependsOn(dependencies []string) { +func (r *TaskDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition) Metadata() map[string]interface{} { +func (r *TaskDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSECSTaskDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSECSTaskDefinition +func (r TaskDefinition) MarshalJSON() ([]byte, error) { + type Properties TaskDefinition return json.Marshal(&struct { Type string Properties Properties @@ -153,8 +155,8 @@ func (r AWSECSTaskDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSECSTaskDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSECSTaskDefinition +func (r *TaskDefinition) UnmarshalJSON(b []byte) error { + type Properties TaskDefinition res := &struct { Type string Properties *Properties @@ -173,7 +175,7 @@ func (r *AWSECSTaskDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSECSTaskDefinition(*res.Properties) + *r = TaskDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ecs-taskdefinition_containerdefinition.go b/cloudformation/ecs/aws-ecs-taskdefinition_containerdefinition.go similarity index 85% rename from cloudformation/resources/aws-ecs-taskdefinition_containerdefinition.go rename to cloudformation/ecs/aws-ecs-taskdefinition_containerdefinition.go index 1a4d90ca12..f849b0728e 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_containerdefinition.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_containerdefinition.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_ContainerDefinition AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ContainerDefinition) +// TaskDefinition_ContainerDefinition AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ContainerDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html -type AWSECSTaskDefinition_ContainerDefinition struct { +type TaskDefinition_ContainerDefinition struct { // Command AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // DependsOn AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dependson - DependsOnProp []AWSECSTaskDefinition_ContainerDependency `json:"DependsOn,omitempty"` + DependsOnProp []TaskDefinition_ContainerDependency `json:"DependsOn,omitempty"` // DisableNetworking AWS CloudFormation Property // Required: false @@ -54,7 +56,7 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // Environment AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-environment - Environment []AWSECSTaskDefinition_KeyValuePair `json:"Environment,omitempty"` + Environment []TaskDefinition_KeyValuePair `json:"Environment,omitempty"` // Essential AWS CloudFormation Property // Required: false @@ -64,12 +66,12 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // ExtraHosts AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-extrahosts - ExtraHosts []AWSECSTaskDefinition_HostEntry `json:"ExtraHosts,omitempty"` + ExtraHosts []TaskDefinition_HostEntry `json:"ExtraHosts,omitempty"` // HealthCheck AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-healthcheck - HealthCheck *AWSECSTaskDefinition_HealthCheck `json:"HealthCheck,omitempty"` + HealthCheck *TaskDefinition_HealthCheck `json:"HealthCheck,omitempty"` // Hostname AWS CloudFormation Property // Required: false @@ -94,12 +96,12 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // LinuxParameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-linuxparameters - LinuxParameters *AWSECSTaskDefinition_LinuxParameters `json:"LinuxParameters,omitempty"` + LinuxParameters *TaskDefinition_LinuxParameters `json:"LinuxParameters,omitempty"` // LogConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration - LogConfiguration *AWSECSTaskDefinition_LogConfiguration `json:"LogConfiguration,omitempty"` + LogConfiguration *TaskDefinition_LogConfiguration `json:"LogConfiguration,omitempty"` // Memory AWS CloudFormation Property // Required: false @@ -114,7 +116,7 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // MountPoints AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints - MountPoints []AWSECSTaskDefinition_MountPoint `json:"MountPoints,omitempty"` + MountPoints []TaskDefinition_MountPoint `json:"MountPoints,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -124,7 +126,7 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // PortMappings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-portmappings - PortMappings []AWSECSTaskDefinition_PortMapping `json:"PortMappings,omitempty"` + PortMappings []TaskDefinition_PortMapping `json:"PortMappings,omitempty"` // Privileged AWS CloudFormation Property // Required: false @@ -144,17 +146,17 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // RepositoryCredentials AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-repositorycredentials - RepositoryCredentials *AWSECSTaskDefinition_RepositoryCredentials `json:"RepositoryCredentials,omitempty"` + RepositoryCredentials *TaskDefinition_RepositoryCredentials `json:"RepositoryCredentials,omitempty"` // ResourceRequirements AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-resourcerequirements - ResourceRequirements []AWSECSTaskDefinition_ResourceRequirement `json:"ResourceRequirements,omitempty"` + ResourceRequirements []TaskDefinition_ResourceRequirement `json:"ResourceRequirements,omitempty"` // Secrets AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-secrets - Secrets []AWSECSTaskDefinition_Secret `json:"Secrets,omitempty"` + Secrets []TaskDefinition_Secret `json:"Secrets,omitempty"` // StartTimeout AWS CloudFormation Property // Required: false @@ -169,12 +171,12 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // SystemControls AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-systemcontrols - SystemControls []AWSECSTaskDefinition_SystemControl `json:"SystemControls,omitempty"` + SystemControls []TaskDefinition_SystemControl `json:"SystemControls,omitempty"` // Ulimits AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-ulimits - Ulimits []AWSECSTaskDefinition_Ulimit `json:"Ulimits,omitempty"` + Ulimits []TaskDefinition_Ulimit `json:"Ulimits,omitempty"` // User AWS CloudFormation Property // Required: false @@ -184,7 +186,7 @@ type AWSECSTaskDefinition_ContainerDefinition struct { // VolumesFrom AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom - VolumesFrom []AWSECSTaskDefinition_VolumeFrom `json:"VolumesFrom,omitempty"` + VolumesFrom []TaskDefinition_VolumeFrom `json:"VolumesFrom,omitempty"` // WorkingDirectory AWS CloudFormation Property // Required: false @@ -202,42 +204,42 @@ type AWSECSTaskDefinition_ContainerDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_ContainerDefinition) AWSCloudFormationType() string { +func (r *TaskDefinition_ContainerDefinition) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.ContainerDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_ContainerDefinition) DependsOn() []string { +func (r *TaskDefinition_ContainerDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_ContainerDefinition) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_ContainerDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_ContainerDefinition) Metadata() map[string]interface{} { +func (r *TaskDefinition_ContainerDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_ContainerDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_ContainerDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_ContainerDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_ContainerDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_ContainerDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_ContainerDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_containerdependency.go b/cloudformation/ecs/aws-ecs-taskdefinition_containerdependency.go new file mode 100644 index 0000000000..459595cee3 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_containerdependency.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_ContainerDependency AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ContainerDependency) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html +type TaskDefinition_ContainerDependency struct { + + // Condition AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-condition + Condition string `json:"Condition,omitempty"` + + // ContainerName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-containername + ContainerName string `json:"ContainerName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_ContainerDependency) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.ContainerDependency" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_ContainerDependency) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_ContainerDependency) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_ContainerDependency) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_ContainerDependency) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_ContainerDependency) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_ContainerDependency) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_device.go b/cloudformation/ecs/aws-ecs-taskdefinition_device.go similarity index 77% rename from cloudformation/resources/aws-ecs-taskdefinition_device.go rename to cloudformation/ecs/aws-ecs-taskdefinition_device.go index ca4fd5b196..6d48a5a85b 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_device.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_device.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_Device AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Device) +// TaskDefinition_Device AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Device) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html -type AWSECSTaskDefinition_Device struct { +type TaskDefinition_Device struct { // ContainerPath AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSECSTaskDefinition_Device struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_Device) AWSCloudFormationType() string { +func (r *TaskDefinition_Device) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.Device" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Device) DependsOn() []string { +func (r *TaskDefinition_Device) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Device) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_Device) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Device) Metadata() map[string]interface{} { +func (r *TaskDefinition_Device) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Device) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_Device) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Device) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_Device) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Device) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_Device) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_dockervolumeconfiguration.go b/cloudformation/ecs/aws-ecs-taskdefinition_dockervolumeconfiguration.go similarity index 77% rename from cloudformation/resources/aws-ecs-taskdefinition_dockervolumeconfiguration.go rename to cloudformation/ecs/aws-ecs-taskdefinition_dockervolumeconfiguration.go index d5f6757c00..5e6a1c68e2 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_dockervolumeconfiguration.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_dockervolumeconfiguration.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_DockerVolumeConfiguration AWS CloudFormation Resource (AWS::ECS::TaskDefinition.DockerVolumeConfiguration) +// TaskDefinition_DockerVolumeConfiguration AWS CloudFormation Resource (AWS::ECS::TaskDefinition.DockerVolumeConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html -type AWSECSTaskDefinition_DockerVolumeConfiguration struct { +type TaskDefinition_DockerVolumeConfiguration struct { // Autoprovision AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSECSTaskDefinition_DockerVolumeConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_DockerVolumeConfiguration) AWSCloudFormationType() string { +func (r *TaskDefinition_DockerVolumeConfiguration) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.DockerVolumeConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_DockerVolumeConfiguration) DependsOn() []string { +func (r *TaskDefinition_DockerVolumeConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_DockerVolumeConfiguration) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_DockerVolumeConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_DockerVolumeConfiguration) Metadata() map[string]interface{} { +func (r *TaskDefinition_DockerVolumeConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_DockerVolumeConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_DockerVolumeConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_DockerVolumeConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_DockerVolumeConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_DockerVolumeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_DockerVolumeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_healthcheck.go b/cloudformation/ecs/aws-ecs-taskdefinition_healthcheck.go similarity index 79% rename from cloudformation/resources/aws-ecs-taskdefinition_healthcheck.go rename to cloudformation/ecs/aws-ecs-taskdefinition_healthcheck.go index fcdd0f4846..4d06f05d1e 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_healthcheck.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_healthcheck.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_HealthCheck AWS CloudFormation Resource (AWS::ECS::TaskDefinition.HealthCheck) +// TaskDefinition_HealthCheck AWS CloudFormation Resource (AWS::ECS::TaskDefinition.HealthCheck) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html -type AWSECSTaskDefinition_HealthCheck struct { +type TaskDefinition_HealthCheck struct { // Command AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSECSTaskDefinition_HealthCheck struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_HealthCheck) AWSCloudFormationType() string { +func (r *TaskDefinition_HealthCheck) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.HealthCheck" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_HealthCheck) DependsOn() []string { +func (r *TaskDefinition_HealthCheck) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_HealthCheck) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_HealthCheck) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_HealthCheck) Metadata() map[string]interface{} { +func (r *TaskDefinition_HealthCheck) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_HealthCheck) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_HealthCheck) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_HealthCheck) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_HealthCheck) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_HealthCheck) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_HealthCheck) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_hostentry.go b/cloudformation/ecs/aws-ecs-taskdefinition_hostentry.go similarity index 75% rename from cloudformation/resources/aws-ecs-taskdefinition_hostentry.go rename to cloudformation/ecs/aws-ecs-taskdefinition_hostentry.go index 8ca6f603f7..86e75f0d97 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_hostentry.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_hostentry.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_HostEntry AWS CloudFormation Resource (AWS::ECS::TaskDefinition.HostEntry) +// TaskDefinition_HostEntry AWS CloudFormation Resource (AWS::ECS::TaskDefinition.HostEntry) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html -type AWSECSTaskDefinition_HostEntry struct { +type TaskDefinition_HostEntry struct { // Hostname AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_HostEntry struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_HostEntry) AWSCloudFormationType() string { +func (r *TaskDefinition_HostEntry) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.HostEntry" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_HostEntry) DependsOn() []string { +func (r *TaskDefinition_HostEntry) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_HostEntry) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_HostEntry) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_HostEntry) Metadata() map[string]interface{} { +func (r *TaskDefinition_HostEntry) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_HostEntry) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_HostEntry) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_HostEntry) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_HostEntry) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_HostEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_HostEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_hostvolumeproperties.go b/cloudformation/ecs/aws-ecs-taskdefinition_hostvolumeproperties.go new file mode 100644 index 0000000000..0d57508091 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_hostvolumeproperties.go @@ -0,0 +1,65 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_HostVolumeProperties AWS CloudFormation Resource (AWS::ECS::TaskDefinition.HostVolumeProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html +type TaskDefinition_HostVolumeProperties struct { + + // SourcePath AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html#cfn-ecs-taskdefinition-volumes-host-sourcepath + SourcePath string `json:"SourcePath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_HostVolumeProperties) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.HostVolumeProperties" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_HostVolumeProperties) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_HostVolumeProperties) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_HostVolumeProperties) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_HostVolumeProperties) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_HostVolumeProperties) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_HostVolumeProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_kernelcapabilities.go b/cloudformation/ecs/aws-ecs-taskdefinition_kernelcapabilities.go new file mode 100644 index 0000000000..43bc4aff9c --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_kernelcapabilities.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_KernelCapabilities AWS CloudFormation Resource (AWS::ECS::TaskDefinition.KernelCapabilities) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html +type TaskDefinition_KernelCapabilities struct { + + // Add AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html#cfn-ecs-taskdefinition-kernelcapabilities-add + Add []string `json:"Add,omitempty"` + + // Drop AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html#cfn-ecs-taskdefinition-kernelcapabilities-drop + Drop []string `json:"Drop,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_KernelCapabilities) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.KernelCapabilities" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_KernelCapabilities) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_KernelCapabilities) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_KernelCapabilities) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_KernelCapabilities) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_KernelCapabilities) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_KernelCapabilities) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_keyvaluepair.go b/cloudformation/ecs/aws-ecs-taskdefinition_keyvaluepair.go new file mode 100644 index 0000000000..1b12d9bd6b --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_keyvaluepair.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_KeyValuePair AWS CloudFormation Resource (AWS::ECS::TaskDefinition.KeyValuePair) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html +type TaskDefinition_KeyValuePair struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_KeyValuePair) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.KeyValuePair" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_KeyValuePair) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_KeyValuePair) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_KeyValuePair) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_KeyValuePair) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_KeyValuePair) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_KeyValuePair) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_linuxparameters.go b/cloudformation/ecs/aws-ecs-taskdefinition_linuxparameters.go new file mode 100644 index 0000000000..fcacdfc7b7 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_linuxparameters.go @@ -0,0 +1,85 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_LinuxParameters AWS CloudFormation Resource (AWS::ECS::TaskDefinition.LinuxParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html +type TaskDefinition_LinuxParameters struct { + + // Capabilities AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-capabilities + Capabilities *TaskDefinition_KernelCapabilities `json:"Capabilities,omitempty"` + + // Devices AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-devices + Devices []TaskDefinition_Device `json:"Devices,omitempty"` + + // InitProcessEnabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-initprocessenabled + InitProcessEnabled bool `json:"InitProcessEnabled,omitempty"` + + // SharedMemorySize AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-sharedmemorysize + SharedMemorySize int `json:"SharedMemorySize,omitempty"` + + // Tmpfs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-tmpfs + Tmpfs []TaskDefinition_Tmpfs `json:"Tmpfs,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_LinuxParameters) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.LinuxParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_LinuxParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_LinuxParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_LinuxParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_LinuxParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_LinuxParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_LinuxParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_logconfiguration.go b/cloudformation/ecs/aws-ecs-taskdefinition_logconfiguration.go new file mode 100644 index 0000000000..68af506ab8 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_logconfiguration.go @@ -0,0 +1,75 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_LogConfiguration AWS CloudFormation Resource (AWS::ECS::TaskDefinition.LogConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html +type TaskDefinition_LogConfiguration struct { + + // LogDriver AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-logdriver + LogDriver string `json:"LogDriver,omitempty"` + + // Options AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-options + Options map[string]string `json:"Options,omitempty"` + + // SecretOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-logconfiguration-secretoptions + SecretOptions []TaskDefinition_Secret `json:"SecretOptions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_LogConfiguration) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.LogConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_LogConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_LogConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_LogConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_LogConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_LogConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_LogConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_mountpoint.go b/cloudformation/ecs/aws-ecs-taskdefinition_mountpoint.go similarity index 77% rename from cloudformation/resources/aws-ecs-taskdefinition_mountpoint.go rename to cloudformation/ecs/aws-ecs-taskdefinition_mountpoint.go index f67fb17395..d99dbad239 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_mountpoint.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_mountpoint.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_MountPoint AWS CloudFormation Resource (AWS::ECS::TaskDefinition.MountPoint) +// TaskDefinition_MountPoint AWS CloudFormation Resource (AWS::ECS::TaskDefinition.MountPoint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html -type AWSECSTaskDefinition_MountPoint struct { +type TaskDefinition_MountPoint struct { // ContainerPath AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSECSTaskDefinition_MountPoint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_MountPoint) AWSCloudFormationType() string { +func (r *TaskDefinition_MountPoint) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.MountPoint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_MountPoint) DependsOn() []string { +func (r *TaskDefinition_MountPoint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_MountPoint) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_MountPoint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_MountPoint) Metadata() map[string]interface{} { +func (r *TaskDefinition_MountPoint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_MountPoint) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_MountPoint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_MountPoint) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_MountPoint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_MountPoint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_MountPoint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_portmapping.go b/cloudformation/ecs/aws-ecs-taskdefinition_portmapping.go similarity index 77% rename from cloudformation/resources/aws-ecs-taskdefinition_portmapping.go rename to cloudformation/ecs/aws-ecs-taskdefinition_portmapping.go index 6f60933be8..4fd8e36e70 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_portmapping.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_portmapping.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_PortMapping AWS CloudFormation Resource (AWS::ECS::TaskDefinition.PortMapping) +// TaskDefinition_PortMapping AWS CloudFormation Resource (AWS::ECS::TaskDefinition.PortMapping) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html -type AWSECSTaskDefinition_PortMapping struct { +type TaskDefinition_PortMapping struct { // ContainerPort AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSECSTaskDefinition_PortMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_PortMapping) AWSCloudFormationType() string { +func (r *TaskDefinition_PortMapping) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.PortMapping" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_PortMapping) DependsOn() []string { +func (r *TaskDefinition_PortMapping) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_PortMapping) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_PortMapping) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_PortMapping) Metadata() map[string]interface{} { +func (r *TaskDefinition_PortMapping) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_PortMapping) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_PortMapping) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_PortMapping) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_PortMapping) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_proxyconfiguration.go b/cloudformation/ecs/aws-ecs-taskdefinition_proxyconfiguration.go new file mode 100644 index 0000000000..07e14767b7 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_proxyconfiguration.go @@ -0,0 +1,75 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_ProxyConfiguration AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ProxyConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html +type TaskDefinition_ProxyConfiguration struct { + + // ContainerName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-containername + ContainerName string `json:"ContainerName,omitempty"` + + // ProxyConfigurationProperties AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-proxyconfigurationproperties + ProxyConfigurationProperties []TaskDefinition_KeyValuePair `json:"ProxyConfigurationProperties,omitempty"` + + // Type AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_ProxyConfiguration) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.ProxyConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_ProxyConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_ProxyConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_ProxyConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_ProxyConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_ProxyConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_ProxyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_repositorycredentials.go b/cloudformation/ecs/aws-ecs-taskdefinition_repositorycredentials.go new file mode 100644 index 0000000000..8dc7342dc8 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_repositorycredentials.go @@ -0,0 +1,65 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_RepositoryCredentials AWS CloudFormation Resource (AWS::ECS::TaskDefinition.RepositoryCredentials) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html +type TaskDefinition_RepositoryCredentials struct { + + // CredentialsParameter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html#cfn-ecs-taskdefinition-repositorycredentials-credentialsparameter + CredentialsParameter string `json:"CredentialsParameter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_RepositoryCredentials) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.RepositoryCredentials" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_RepositoryCredentials) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_RepositoryCredentials) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_RepositoryCredentials) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_RepositoryCredentials) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_RepositoryCredentials) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_RepositoryCredentials) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_resourcerequirement.go b/cloudformation/ecs/aws-ecs-taskdefinition_resourcerequirement.go new file mode 100644 index 0000000000..0c7bf0ae95 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_resourcerequirement.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_ResourceRequirement AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ResourceRequirement) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html +type TaskDefinition_ResourceRequirement struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html#cfn-ecs-taskdefinition-resourcerequirement-type + Type string `json:"Type,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html#cfn-ecs-taskdefinition-resourcerequirement-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_ResourceRequirement) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.ResourceRequirement" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_ResourceRequirement) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_ResourceRequirement) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_ResourceRequirement) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_ResourceRequirement) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_ResourceRequirement) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_ResourceRequirement) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_secret.go b/cloudformation/ecs/aws-ecs-taskdefinition_secret.go similarity index 75% rename from cloudformation/resources/aws-ecs-taskdefinition_secret.go rename to cloudformation/ecs/aws-ecs-taskdefinition_secret.go index d7976b595a..6e03398618 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_secret.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_secret.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_Secret AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Secret) +// TaskDefinition_Secret AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Secret) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-secret.html -type AWSECSTaskDefinition_Secret struct { +type TaskDefinition_Secret struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_Secret struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_Secret) AWSCloudFormationType() string { +func (r *TaskDefinition_Secret) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.Secret" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Secret) DependsOn() []string { +func (r *TaskDefinition_Secret) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Secret) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_Secret) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Secret) Metadata() map[string]interface{} { +func (r *TaskDefinition_Secret) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Secret) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_Secret) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Secret) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_Secret) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Secret) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_Secret) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_systemcontrol.go b/cloudformation/ecs/aws-ecs-taskdefinition_systemcontrol.go new file mode 100644 index 0000000000..f2b5cce2e9 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_systemcontrol.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_SystemControl AWS CloudFormation Resource (AWS::ECS::TaskDefinition.SystemControl) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html +type TaskDefinition_SystemControl struct { + + // Namespace AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-namespace + Namespace string `json:"Namespace,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_SystemControl) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.SystemControl" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_SystemControl) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_SystemControl) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_SystemControl) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_SystemControl) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_SystemControl) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_SystemControl) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go b/cloudformation/ecs/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go new file mode 100644 index 0000000000..e6e084e5c6 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go @@ -0,0 +1,70 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_TaskDefinitionPlacementConstraint AWS CloudFormation Resource (AWS::ECS::TaskDefinition.TaskDefinitionPlacementConstraint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html +type TaskDefinition_TaskDefinitionPlacementConstraint struct { + + // Expression AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-expression + Expression string `json:"Expression,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_TaskDefinitionPlacementConstraint) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.TaskDefinitionPlacementConstraint" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_TaskDefinitionPlacementConstraint) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_TaskDefinitionPlacementConstraint) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_TaskDefinitionPlacementConstraint) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_TaskDefinitionPlacementConstraint) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_TaskDefinitionPlacementConstraint) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_TaskDefinitionPlacementConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_tmpfs.go b/cloudformation/ecs/aws-ecs-taskdefinition_tmpfs.go similarity index 77% rename from cloudformation/resources/aws-ecs-taskdefinition_tmpfs.go rename to cloudformation/ecs/aws-ecs-taskdefinition_tmpfs.go index 88f55e94ef..96ad3a2328 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_tmpfs.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_tmpfs.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_Tmpfs AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Tmpfs) +// TaskDefinition_Tmpfs AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Tmpfs) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html -type AWSECSTaskDefinition_Tmpfs struct { +type TaskDefinition_Tmpfs struct { // ContainerPath AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSECSTaskDefinition_Tmpfs struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_Tmpfs) AWSCloudFormationType() string { +func (r *TaskDefinition_Tmpfs) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.Tmpfs" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Tmpfs) DependsOn() []string { +func (r *TaskDefinition_Tmpfs) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Tmpfs) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_Tmpfs) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Tmpfs) Metadata() map[string]interface{} { +func (r *TaskDefinition_Tmpfs) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Tmpfs) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_Tmpfs) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Tmpfs) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_Tmpfs) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Tmpfs) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_Tmpfs) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_ulimit.go b/cloudformation/ecs/aws-ecs-taskdefinition_ulimit.go similarity index 77% rename from cloudformation/resources/aws-ecs-taskdefinition_ulimit.go rename to cloudformation/ecs/aws-ecs-taskdefinition_ulimit.go index bd3623b454..e3e4794dd2 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_ulimit.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_ulimit.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_Ulimit AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Ulimit) +// TaskDefinition_Ulimit AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Ulimit) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html -type AWSECSTaskDefinition_Ulimit struct { +type TaskDefinition_Ulimit struct { // HardLimit AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSECSTaskDefinition_Ulimit struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_Ulimit) AWSCloudFormationType() string { +func (r *TaskDefinition_Ulimit) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.Ulimit" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Ulimit) DependsOn() []string { +func (r *TaskDefinition_Ulimit) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Ulimit) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_Ulimit) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Ulimit) Metadata() map[string]interface{} { +func (r *TaskDefinition_Ulimit) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Ulimit) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_Ulimit) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Ulimit) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_Ulimit) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Ulimit) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_Ulimit) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ecs/aws-ecs-taskdefinition_volume.go b/cloudformation/ecs/aws-ecs-taskdefinition_volume.go new file mode 100644 index 0000000000..4479172434 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-taskdefinition_volume.go @@ -0,0 +1,75 @@ +package ecs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TaskDefinition_Volume AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Volume) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html +type TaskDefinition_Volume struct { + + // DockerVolumeConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volume-dockervolumeconfiguration + DockerVolumeConfiguration *TaskDefinition_DockerVolumeConfiguration `json:"DockerVolumeConfiguration,omitempty"` + + // Host AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-host + Host *TaskDefinition_HostVolumeProperties `json:"Host,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TaskDefinition_Volume) AWSCloudFormationType() string { + return "AWS::ECS::TaskDefinition.Volume" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_Volume) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TaskDefinition_Volume) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_Volume) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TaskDefinition_Volume) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_Volume) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TaskDefinition_Volume) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_volumefrom.go b/cloudformation/ecs/aws-ecs-taskdefinition_volumefrom.go similarity index 75% rename from cloudformation/resources/aws-ecs-taskdefinition_volumefrom.go rename to cloudformation/ecs/aws-ecs-taskdefinition_volumefrom.go index 409ba2b10f..6d349f470b 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_volumefrom.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_volumefrom.go @@ -1,10 +1,12 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_VolumeFrom AWS CloudFormation Resource (AWS::ECS::TaskDefinition.VolumeFrom) +// TaskDefinition_VolumeFrom AWS CloudFormation Resource (AWS::ECS::TaskDefinition.VolumeFrom) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html -type AWSECSTaskDefinition_VolumeFrom struct { +type TaskDefinition_VolumeFrom struct { // ReadOnly AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_VolumeFrom struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_VolumeFrom) AWSCloudFormationType() string { +func (r *TaskDefinition_VolumeFrom) AWSCloudFormationType() string { return "AWS::ECS::TaskDefinition.VolumeFrom" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_VolumeFrom) DependsOn() []string { +func (r *TaskDefinition_VolumeFrom) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_VolumeFrom) SetDependsOn(dependencies []string) { +func (r *TaskDefinition_VolumeFrom) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_VolumeFrom) Metadata() map[string]interface{} { +func (r *TaskDefinition_VolumeFrom) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_VolumeFrom) SetMetadata(metadata map[string]interface{}) { +func (r *TaskDefinition_VolumeFrom) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_VolumeFrom) DeletionPolicy() policies.DeletionPolicy { +func (r *TaskDefinition_VolumeFrom) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_VolumeFrom) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_VolumeFrom) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-efs-filesystem.go b/cloudformation/efs/aws-efs-filesystem.go similarity index 82% rename from cloudformation/resources/aws-efs-filesystem.go rename to cloudformation/efs/aws-efs-filesystem.go index 77d7107f84..23275c9266 100644 --- a/cloudformation/resources/aws-efs-filesystem.go +++ b/cloudformation/efs/aws-efs-filesystem.go @@ -1,15 +1,16 @@ -package resources +package efs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEFSFileSystem AWS CloudFormation Resource (AWS::EFS::FileSystem) +// FileSystem AWS CloudFormation Resource (AWS::EFS::FileSystem) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html -type AWSEFSFileSystem struct { +type FileSystem struct { // Encrypted AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSEFSFileSystem struct { // FileSystemTags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-filesystemtags - FileSystemTags []AWSEFSFileSystem_ElasticFileSystemTag `json:"FileSystemTags,omitempty"` + FileSystemTags []FileSystem_ElasticFileSystemTag `json:"FileSystemTags,omitempty"` // KmsKeyId AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSEFSFileSystem struct { // LifecyclePolicies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-elasticfilesystem-filesystem-lifecyclepolicies - LifecyclePolicies []AWSEFSFileSystem_LifecyclePolicy `json:"LifecyclePolicies,omitempty"` + LifecyclePolicies []FileSystem_LifecyclePolicy `json:"LifecyclePolicies,omitempty"` // PerformanceMode AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSEFSFileSystem struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEFSFileSystem) AWSCloudFormationType() string { +func (r *FileSystem) AWSCloudFormationType() string { return "AWS::EFS::FileSystem" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEFSFileSystem) DependsOn() []string { +func (r *FileSystem) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEFSFileSystem) SetDependsOn(dependencies []string) { +func (r *FileSystem) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEFSFileSystem) Metadata() map[string]interface{} { +func (r *FileSystem) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEFSFileSystem) SetMetadata(metadata map[string]interface{}) { +func (r *FileSystem) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEFSFileSystem) DeletionPolicy() policies.DeletionPolicy { +func (r *FileSystem) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEFSFileSystem) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FileSystem) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEFSFileSystem) MarshalJSON() ([]byte, error) { - type Properties AWSEFSFileSystem +func (r FileSystem) MarshalJSON() ([]byte, error) { + type Properties FileSystem return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSEFSFileSystem) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEFSFileSystem) UnmarshalJSON(b []byte) error { - type Properties AWSEFSFileSystem +func (r *FileSystem) UnmarshalJSON(b []byte) error { + type Properties FileSystem res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSEFSFileSystem) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEFSFileSystem(*res.Properties) + *r = FileSystem(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/efs/aws-efs-filesystem_elasticfilesystemtag.go b/cloudformation/efs/aws-efs-filesystem_elasticfilesystemtag.go new file mode 100644 index 0000000000..606b457a87 --- /dev/null +++ b/cloudformation/efs/aws-efs-filesystem_elasticfilesystemtag.go @@ -0,0 +1,70 @@ +package efs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FileSystem_ElasticFileSystemTag AWS CloudFormation Resource (AWS::EFS::FileSystem.ElasticFileSystemTag) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html +type FileSystem_ElasticFileSystemTag struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html#cfn-efs-filesystem-filesystemtags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html#cfn-efs-filesystem-filesystemtags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FileSystem_ElasticFileSystemTag) AWSCloudFormationType() string { + return "AWS::EFS::FileSystem.ElasticFileSystemTag" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FileSystem_ElasticFileSystemTag) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FileSystem_ElasticFileSystemTag) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FileSystem_ElasticFileSystemTag) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FileSystem_ElasticFileSystemTag) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FileSystem_ElasticFileSystemTag) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FileSystem_ElasticFileSystemTag) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/efs/aws-efs-filesystem_lifecyclepolicy.go b/cloudformation/efs/aws-efs-filesystem_lifecyclepolicy.go new file mode 100644 index 0000000000..7b78786a07 --- /dev/null +++ b/cloudformation/efs/aws-efs-filesystem_lifecyclepolicy.go @@ -0,0 +1,65 @@ +package efs + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FileSystem_LifecyclePolicy AWS CloudFormation Resource (AWS::EFS::FileSystem.LifecyclePolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticfilesystem-filesystem-lifecyclepolicy.html +type FileSystem_LifecyclePolicy struct { + + // TransitionToIA AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticfilesystem-filesystem-lifecyclepolicy.html#cfn-elasticfilesystem-filesystem-lifecyclepolicy-transitiontoia + TransitionToIA string `json:"TransitionToIA,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FileSystem_LifecyclePolicy) AWSCloudFormationType() string { + return "AWS::EFS::FileSystem.LifecyclePolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FileSystem_LifecyclePolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FileSystem_LifecyclePolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FileSystem_LifecyclePolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FileSystem_LifecyclePolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FileSystem_LifecyclePolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FileSystem_LifecyclePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-efs-mounttarget.go b/cloudformation/efs/aws-efs-mounttarget.go similarity index 82% rename from cloudformation/resources/aws-efs-mounttarget.go rename to cloudformation/efs/aws-efs-mounttarget.go index 0fbe2701d1..88f0da5cda 100644 --- a/cloudformation/resources/aws-efs-mounttarget.go +++ b/cloudformation/efs/aws-efs-mounttarget.go @@ -1,15 +1,16 @@ -package resources +package efs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEFSMountTarget AWS CloudFormation Resource (AWS::EFS::MountTarget) +// MountTarget AWS CloudFormation Resource (AWS::EFS::MountTarget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html -type AWSEFSMountTarget struct { +type MountTarget struct { // FileSystemId AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSEFSMountTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEFSMountTarget) AWSCloudFormationType() string { +func (r *MountTarget) AWSCloudFormationType() string { return "AWS::EFS::MountTarget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEFSMountTarget) DependsOn() []string { +func (r *MountTarget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEFSMountTarget) SetDependsOn(dependencies []string) { +func (r *MountTarget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEFSMountTarget) Metadata() map[string]interface{} { +func (r *MountTarget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEFSMountTarget) SetMetadata(metadata map[string]interface{}) { +func (r *MountTarget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEFSMountTarget) DeletionPolicy() policies.DeletionPolicy { +func (r *MountTarget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEFSMountTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MountTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEFSMountTarget) MarshalJSON() ([]byte, error) { - type Properties AWSEFSMountTarget +func (r MountTarget) MarshalJSON() ([]byte, error) { + type Properties MountTarget return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSEFSMountTarget) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEFSMountTarget) UnmarshalJSON(b []byte) error { - type Properties AWSEFSMountTarget +func (r *MountTarget) UnmarshalJSON(b []byte) error { + type Properties MountTarget res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSEFSMountTarget) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEFSMountTarget(*res.Properties) + *r = MountTarget(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-eks-cluster.go b/cloudformation/eks/aws-eks-cluster.go similarity index 82% rename from cloudformation/resources/aws-eks-cluster.go rename to cloudformation/eks/aws-eks-cluster.go index 614eeda635..9724a51b91 100644 --- a/cloudformation/resources/aws-eks-cluster.go +++ b/cloudformation/eks/aws-eks-cluster.go @@ -1,15 +1,16 @@ -package resources +package eks import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEKSCluster AWS CloudFormation Resource (AWS::EKS::Cluster) +// Cluster AWS CloudFormation Resource (AWS::EKS::Cluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html -type AWSEKSCluster struct { +type Cluster struct { // Name AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSEKSCluster struct { // ResourcesVpcConfig AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-resourcesvpcconfig - ResourcesVpcConfig *AWSEKSCluster_ResourcesVpcConfig `json:"ResourcesVpcConfig,omitempty"` + ResourcesVpcConfig *Cluster_ResourcesVpcConfig `json:"ResourcesVpcConfig,omitempty"` // RoleArn AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSEKSCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEKSCluster) AWSCloudFormationType() string { +func (r *Cluster) AWSCloudFormationType() string { return "AWS::EKS::Cluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEKSCluster) DependsOn() []string { +func (r *Cluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEKSCluster) SetDependsOn(dependencies []string) { +func (r *Cluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEKSCluster) Metadata() map[string]interface{} { +func (r *Cluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEKSCluster) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEKSCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEKSCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEKSCluster) MarshalJSON() ([]byte, error) { - type Properties AWSEKSCluster +func (r Cluster) MarshalJSON() ([]byte, error) { + type Properties Cluster return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSEKSCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEKSCluster) UnmarshalJSON(b []byte) error { - type Properties AWSEKSCluster +func (r *Cluster) UnmarshalJSON(b []byte) error { + type Properties Cluster res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSEKSCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEKSCluster(*res.Properties) + *r = Cluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/eks/aws-eks-cluster_resourcesvpcconfig.go b/cloudformation/eks/aws-eks-cluster_resourcesvpcconfig.go new file mode 100644 index 0000000000..bdecf7178d --- /dev/null +++ b/cloudformation/eks/aws-eks-cluster_resourcesvpcconfig.go @@ -0,0 +1,70 @@ +package eks + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_ResourcesVpcConfig AWS CloudFormation Resource (AWS::EKS::Cluster.ResourcesVpcConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html +type Cluster_ResourcesVpcConfig struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` + + // SubnetIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-subnetids + SubnetIds []string `json:"SubnetIds,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_ResourcesVpcConfig) AWSCloudFormationType() string { + return "AWS::EKS::Cluster.ResourcesVpcConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ResourcesVpcConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ResourcesVpcConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ResourcesVpcConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ResourcesVpcConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ResourcesVpcConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ResourcesVpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticache-cachecluster.go b/cloudformation/elasticache/aws-elasticache-cachecluster.go similarity index 89% rename from cloudformation/resources/aws-elasticache-cachecluster.go rename to cloudformation/elasticache/aws-elasticache-cachecluster.go index 7b374c39e8..672990a372 100644 --- a/cloudformation/resources/aws-elasticache-cachecluster.go +++ b/cloudformation/elasticache/aws-elasticache-cachecluster.go @@ -1,15 +1,17 @@ -package resources +package elasticache import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSElastiCacheCacheCluster AWS CloudFormation Resource (AWS::ElastiCache::CacheCluster) +// CacheCluster AWS CloudFormation Resource (AWS::ElastiCache::CacheCluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html -type AWSElastiCacheCacheCluster struct { +type CacheCluster struct { // AZMode AWS CloudFormation Property // Required: false @@ -109,7 +111,7 @@ type AWSElastiCacheCacheCluster struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcSecurityGroupIds AWS CloudFormation Property // Required: false @@ -127,50 +129,50 @@ type AWSElastiCacheCacheCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElastiCacheCacheCluster) AWSCloudFormationType() string { +func (r *CacheCluster) AWSCloudFormationType() string { return "AWS::ElastiCache::CacheCluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheCacheCluster) DependsOn() []string { +func (r *CacheCluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheCacheCluster) SetDependsOn(dependencies []string) { +func (r *CacheCluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheCacheCluster) Metadata() map[string]interface{} { +func (r *CacheCluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheCacheCluster) SetMetadata(metadata map[string]interface{}) { +func (r *CacheCluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheCacheCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *CacheCluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheCacheCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CacheCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElastiCacheCacheCluster) MarshalJSON() ([]byte, error) { - type Properties AWSElastiCacheCacheCluster +func (r CacheCluster) MarshalJSON() ([]byte, error) { + type Properties CacheCluster return json.Marshal(&struct { Type string Properties Properties @@ -188,8 +190,8 @@ func (r AWSElastiCacheCacheCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElastiCacheCacheCluster) UnmarshalJSON(b []byte) error { - type Properties AWSElastiCacheCacheCluster +func (r *CacheCluster) UnmarshalJSON(b []byte) error { + type Properties CacheCluster res := &struct { Type string Properties *Properties @@ -208,7 +210,7 @@ func (r *AWSElastiCacheCacheCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElastiCacheCacheCluster(*res.Properties) + *r = CacheCluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticache-parametergroup.go b/cloudformation/elasticache/aws-elasticache-parametergroup.go similarity index 80% rename from cloudformation/resources/aws-elasticache-parametergroup.go rename to cloudformation/elasticache/aws-elasticache-parametergroup.go index d1ad046bbb..f7c7346736 100644 --- a/cloudformation/resources/aws-elasticache-parametergroup.go +++ b/cloudformation/elasticache/aws-elasticache-parametergroup.go @@ -1,15 +1,16 @@ -package resources +package elasticache import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElastiCacheParameterGroup AWS CloudFormation Resource (AWS::ElastiCache::ParameterGroup) +// ParameterGroup AWS CloudFormation Resource (AWS::ElastiCache::ParameterGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html -type AWSElastiCacheParameterGroup struct { +type ParameterGroup struct { // CacheParameterGroupFamily AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSElastiCacheParameterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElastiCacheParameterGroup) AWSCloudFormationType() string { +func (r *ParameterGroup) AWSCloudFormationType() string { return "AWS::ElastiCache::ParameterGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheParameterGroup) DependsOn() []string { +func (r *ParameterGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheParameterGroup) SetDependsOn(dependencies []string) { +func (r *ParameterGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheParameterGroup) Metadata() map[string]interface{} { +func (r *ParameterGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheParameterGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ParameterGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheParameterGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ParameterGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElastiCacheParameterGroup) MarshalJSON() ([]byte, error) { - type Properties AWSElastiCacheParameterGroup +func (r ParameterGroup) MarshalJSON() ([]byte, error) { + type Properties ParameterGroup return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSElastiCacheParameterGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElastiCacheParameterGroup) UnmarshalJSON(b []byte) error { - type Properties AWSElastiCacheParameterGroup +func (r *ParameterGroup) UnmarshalJSON(b []byte) error { + type Properties ParameterGroup res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSElastiCacheParameterGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElastiCacheParameterGroup(*res.Properties) + *r = ParameterGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticache-replicationgroup.go b/cloudformation/elasticache/aws-elasticache-replicationgroup.go similarity index 90% rename from cloudformation/resources/aws-elasticache-replicationgroup.go rename to cloudformation/elasticache/aws-elasticache-replicationgroup.go index 4b9a6971c6..31f414e509 100644 --- a/cloudformation/resources/aws-elasticache-replicationgroup.go +++ b/cloudformation/elasticache/aws-elasticache-replicationgroup.go @@ -1,15 +1,17 @@ -package resources +package elasticache import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSElastiCacheReplicationGroup AWS CloudFormation Resource (AWS::ElastiCache::ReplicationGroup) +// ReplicationGroup AWS CloudFormation Resource (AWS::ElastiCache::ReplicationGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html -type AWSElastiCacheReplicationGroup struct { +type ReplicationGroup struct { // AtRestEncryptionEnabled AWS CloudFormation Property // Required: false @@ -69,7 +71,7 @@ type AWSElastiCacheReplicationGroup struct { // NodeGroupConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-nodegroupconfiguration - NodeGroupConfiguration []AWSElastiCacheReplicationGroup_NodeGroupConfiguration `json:"NodeGroupConfiguration,omitempty"` + NodeGroupConfiguration []ReplicationGroup_NodeGroupConfiguration `json:"NodeGroupConfiguration,omitempty"` // NotificationTopicArn AWS CloudFormation Property // Required: false @@ -154,7 +156,7 @@ type AWSElastiCacheReplicationGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TransitEncryptionEnabled AWS CloudFormation Property // Required: false @@ -172,50 +174,50 @@ type AWSElastiCacheReplicationGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElastiCacheReplicationGroup) AWSCloudFormationType() string { +func (r *ReplicationGroup) AWSCloudFormationType() string { return "AWS::ElastiCache::ReplicationGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheReplicationGroup) DependsOn() []string { +func (r *ReplicationGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheReplicationGroup) SetDependsOn(dependencies []string) { +func (r *ReplicationGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheReplicationGroup) Metadata() map[string]interface{} { +func (r *ReplicationGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheReplicationGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ReplicationGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheReplicationGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ReplicationGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheReplicationGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReplicationGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElastiCacheReplicationGroup) MarshalJSON() ([]byte, error) { - type Properties AWSElastiCacheReplicationGroup +func (r ReplicationGroup) MarshalJSON() ([]byte, error) { + type Properties ReplicationGroup return json.Marshal(&struct { Type string Properties Properties @@ -233,8 +235,8 @@ func (r AWSElastiCacheReplicationGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElastiCacheReplicationGroup) UnmarshalJSON(b []byte) error { - type Properties AWSElastiCacheReplicationGroup +func (r *ReplicationGroup) UnmarshalJSON(b []byte) error { + type Properties ReplicationGroup res := &struct { Type string Properties *Properties @@ -253,7 +255,7 @@ func (r *AWSElastiCacheReplicationGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElastiCacheReplicationGroup(*res.Properties) + *r = ReplicationGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticache-replicationgroup_nodegroupconfiguration.go b/cloudformation/elasticache/aws-elasticache-replicationgroup_nodegroupconfiguration.go similarity index 77% rename from cloudformation/resources/aws-elasticache-replicationgroup_nodegroupconfiguration.go rename to cloudformation/elasticache/aws-elasticache-replicationgroup_nodegroupconfiguration.go index 243ea7c5a9..8c7e93b0ac 100644 --- a/cloudformation/resources/aws-elasticache-replicationgroup_nodegroupconfiguration.go +++ b/cloudformation/elasticache/aws-elasticache-replicationgroup_nodegroupconfiguration.go @@ -1,10 +1,12 @@ -package resources +package elasticache -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElastiCacheReplicationGroup_NodeGroupConfiguration AWS CloudFormation Resource (AWS::ElastiCache::ReplicationGroup.NodeGroupConfiguration) +// ReplicationGroup_NodeGroupConfiguration AWS CloudFormation Resource (AWS::ElastiCache::ReplicationGroup.NodeGroupConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html -type AWSElastiCacheReplicationGroup_NodeGroupConfiguration struct { +type ReplicationGroup_NodeGroupConfiguration struct { // NodeGroupId AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSElastiCacheReplicationGroup_NodeGroupConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElastiCacheReplicationGroup_NodeGroupConfiguration) AWSCloudFormationType() string { +func (r *ReplicationGroup_NodeGroupConfiguration) AWSCloudFormationType() string { return "AWS::ElastiCache::ReplicationGroup.NodeGroupConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheReplicationGroup_NodeGroupConfiguration) DependsOn() []string { +func (r *ReplicationGroup_NodeGroupConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheReplicationGroup_NodeGroupConfiguration) SetDependsOn(dependencies []string) { +func (r *ReplicationGroup_NodeGroupConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheReplicationGroup_NodeGroupConfiguration) Metadata() map[string]interface{} { +func (r *ReplicationGroup_NodeGroupConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheReplicationGroup_NodeGroupConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *ReplicationGroup_NodeGroupConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheReplicationGroup_NodeGroupConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *ReplicationGroup_NodeGroupConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheReplicationGroup_NodeGroupConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReplicationGroup_NodeGroupConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticache-securitygroup.go b/cloudformation/elasticache/aws-elasticache-securitygroup.go similarity index 77% rename from cloudformation/resources/aws-elasticache-securitygroup.go rename to cloudformation/elasticache/aws-elasticache-securitygroup.go index e731ce1775..68dc34bcf5 100644 --- a/cloudformation/resources/aws-elasticache-securitygroup.go +++ b/cloudformation/elasticache/aws-elasticache-securitygroup.go @@ -1,15 +1,16 @@ -package resources +package elasticache import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElastiCacheSecurityGroup AWS CloudFormation Resource (AWS::ElastiCache::SecurityGroup) +// SecurityGroup AWS CloudFormation Resource (AWS::ElastiCache::SecurityGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group.html -type AWSElastiCacheSecurityGroup struct { +type SecurityGroup struct { // Description AWS CloudFormation Property // Required: true @@ -27,50 +28,50 @@ type AWSElastiCacheSecurityGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElastiCacheSecurityGroup) AWSCloudFormationType() string { +func (r *SecurityGroup) AWSCloudFormationType() string { return "AWS::ElastiCache::SecurityGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheSecurityGroup) DependsOn() []string { +func (r *SecurityGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheSecurityGroup) SetDependsOn(dependencies []string) { +func (r *SecurityGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheSecurityGroup) Metadata() map[string]interface{} { +func (r *SecurityGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheSecurityGroup) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheSecurityGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheSecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElastiCacheSecurityGroup) MarshalJSON() ([]byte, error) { - type Properties AWSElastiCacheSecurityGroup +func (r SecurityGroup) MarshalJSON() ([]byte, error) { + type Properties SecurityGroup return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSElastiCacheSecurityGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElastiCacheSecurityGroup) UnmarshalJSON(b []byte) error { - type Properties AWSElastiCacheSecurityGroup +func (r *SecurityGroup) UnmarshalJSON(b []byte) error { + type Properties SecurityGroup res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSElastiCacheSecurityGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElastiCacheSecurityGroup(*res.Properties) + *r = SecurityGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticache-securitygroupingress.go b/cloudformation/elasticache/aws-elasticache-securitygroupingress.go similarity index 79% rename from cloudformation/resources/aws-elasticache-securitygroupingress.go rename to cloudformation/elasticache/aws-elasticache-securitygroupingress.go index a60738566f..62c9d8c7ff 100644 --- a/cloudformation/resources/aws-elasticache-securitygroupingress.go +++ b/cloudformation/elasticache/aws-elasticache-securitygroupingress.go @@ -1,15 +1,16 @@ -package resources +package elasticache import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElastiCacheSecurityGroupIngress AWS CloudFormation Resource (AWS::ElastiCache::SecurityGroupIngress) +// SecurityGroupIngress AWS CloudFormation Resource (AWS::ElastiCache::SecurityGroupIngress) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html -type AWSElastiCacheSecurityGroupIngress struct { +type SecurityGroupIngress struct { // CacheSecurityGroupName AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSElastiCacheSecurityGroupIngress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElastiCacheSecurityGroupIngress) AWSCloudFormationType() string { +func (r *SecurityGroupIngress) AWSCloudFormationType() string { return "AWS::ElastiCache::SecurityGroupIngress" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheSecurityGroupIngress) DependsOn() []string { +func (r *SecurityGroupIngress) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheSecurityGroupIngress) SetDependsOn(dependencies []string) { +func (r *SecurityGroupIngress) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheSecurityGroupIngress) Metadata() map[string]interface{} { +func (r *SecurityGroupIngress) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheSecurityGroupIngress) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityGroupIngress) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheSecurityGroupIngress) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityGroupIngress) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheSecurityGroupIngress) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityGroupIngress) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElastiCacheSecurityGroupIngress) MarshalJSON() ([]byte, error) { - type Properties AWSElastiCacheSecurityGroupIngress +func (r SecurityGroupIngress) MarshalJSON() ([]byte, error) { + type Properties SecurityGroupIngress return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSElastiCacheSecurityGroupIngress) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElastiCacheSecurityGroupIngress) UnmarshalJSON(b []byte) error { - type Properties AWSElastiCacheSecurityGroupIngress +func (r *SecurityGroupIngress) UnmarshalJSON(b []byte) error { + type Properties SecurityGroupIngress res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSElastiCacheSecurityGroupIngress) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElastiCacheSecurityGroupIngress(*res.Properties) + *r = SecurityGroupIngress(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticache-subnetgroup.go b/cloudformation/elasticache/aws-elasticache-subnetgroup.go similarity index 80% rename from cloudformation/resources/aws-elasticache-subnetgroup.go rename to cloudformation/elasticache/aws-elasticache-subnetgroup.go index c0b43a0145..25d0b8e53a 100644 --- a/cloudformation/resources/aws-elasticache-subnetgroup.go +++ b/cloudformation/elasticache/aws-elasticache-subnetgroup.go @@ -1,15 +1,16 @@ -package resources +package elasticache import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElastiCacheSubnetGroup AWS CloudFormation Resource (AWS::ElastiCache::SubnetGroup) +// SubnetGroup AWS CloudFormation Resource (AWS::ElastiCache::SubnetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html -type AWSElastiCacheSubnetGroup struct { +type SubnetGroup struct { // CacheSubnetGroupName AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSElastiCacheSubnetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElastiCacheSubnetGroup) AWSCloudFormationType() string { +func (r *SubnetGroup) AWSCloudFormationType() string { return "AWS::ElastiCache::SubnetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheSubnetGroup) DependsOn() []string { +func (r *SubnetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElastiCacheSubnetGroup) SetDependsOn(dependencies []string) { +func (r *SubnetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheSubnetGroup) Metadata() map[string]interface{} { +func (r *SubnetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElastiCacheSubnetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *SubnetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheSubnetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *SubnetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElastiCacheSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElastiCacheSubnetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSElastiCacheSubnetGroup +func (r SubnetGroup) MarshalJSON() ([]byte, error) { + type Properties SubnetGroup return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSElastiCacheSubnetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElastiCacheSubnetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSElastiCacheSubnetGroup +func (r *SubnetGroup) UnmarshalJSON(b []byte) error { + type Properties SubnetGroup res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSElastiCacheSubnetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElastiCacheSubnetGroup(*res.Properties) + *r = SubnetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticbeanstalk-application.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application.go similarity index 77% rename from cloudformation/resources/aws-elasticbeanstalk-application.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application.go index 793ebbd7a0..66f20620f1 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-application.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application.go @@ -1,15 +1,16 @@ -package resources +package elasticbeanstalk import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElasticBeanstalkApplication AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application) +// Application AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html -type AWSElasticBeanstalkApplication struct { +type Application struct { // ApplicationName AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSElasticBeanstalkApplication struct { // ResourceLifecycleConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-resourcelifecycleconfig - ResourceLifecycleConfig *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig `json:"ResourceLifecycleConfig,omitempty"` + ResourceLifecycleConfig *Application_ApplicationResourceLifecycleConfig `json:"ResourceLifecycleConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSElasticBeanstalkApplication struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplication) AWSCloudFormationType() string { +func (r *Application) AWSCloudFormationType() string { return "AWS::ElasticBeanstalk::Application" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication) DependsOn() []string { +func (r *Application) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication) SetDependsOn(dependencies []string) { +func (r *Application) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication) Metadata() map[string]interface{} { +func (r *Application) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication) SetMetadata(metadata map[string]interface{}) { +func (r *Application) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication) DeletionPolicy() policies.DeletionPolicy { +func (r *Application) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticBeanstalkApplication) MarshalJSON() ([]byte, error) { - type Properties AWSElasticBeanstalkApplication +func (r Application) MarshalJSON() ([]byte, error) { + type Properties Application return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSElasticBeanstalkApplication) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticBeanstalkApplication) UnmarshalJSON(b []byte) error { - type Properties AWSElasticBeanstalkApplication +func (r *Application) UnmarshalJSON(b []byte) error { + type Properties Application res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSElasticBeanstalkApplication) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticBeanstalkApplication(*res.Properties) + *r = Application(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go new file mode 100644 index 0000000000..c2be270faf --- /dev/null +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go @@ -0,0 +1,70 @@ +package elasticbeanstalk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_ApplicationResourceLifecycleConfig AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.ApplicationResourceLifecycleConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html +type Application_ApplicationResourceLifecycleConfig struct { + + // ServiceRole AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html#cfn-elasticbeanstalk-application-applicationresourcelifecycleconfig-servicerole + ServiceRole string `json:"ServiceRole,omitempty"` + + // VersionLifecycleConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html#cfn-elasticbeanstalk-application-applicationresourcelifecycleconfig-versionlifecycleconfig + VersionLifecycleConfig *Application_ApplicationVersionLifecycleConfig `json:"VersionLifecycleConfig,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_ApplicationResourceLifecycleConfig) AWSCloudFormationType() string { + return "AWS::ElasticBeanstalk::Application.ApplicationResourceLifecycleConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationResourceLifecycleConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationResourceLifecycleConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationResourceLifecycleConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationResourceLifecycleConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationResourceLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationResourceLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go new file mode 100644 index 0000000000..7a1df0945e --- /dev/null +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go @@ -0,0 +1,70 @@ +package elasticbeanstalk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_ApplicationVersionLifecycleConfig AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.ApplicationVersionLifecycleConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html +type Application_ApplicationVersionLifecycleConfig struct { + + // MaxAgeRule AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html#cfn-elasticbeanstalk-application-applicationversionlifecycleconfig-maxagerule + MaxAgeRule *Application_MaxAgeRule `json:"MaxAgeRule,omitempty"` + + // MaxCountRule AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html#cfn-elasticbeanstalk-application-applicationversionlifecycleconfig-maxcountrule + MaxCountRule *Application_MaxCountRule `json:"MaxCountRule,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_ApplicationVersionLifecycleConfig) AWSCloudFormationType() string { + return "AWS::ElasticBeanstalk::Application.ApplicationVersionLifecycleConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationVersionLifecycleConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationVersionLifecycleConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationVersionLifecycleConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationVersionLifecycleConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationVersionLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationVersionLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticbeanstalk-application_maxagerule.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxagerule.go similarity index 75% rename from cloudformation/resources/aws-elasticbeanstalk-application_maxagerule.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxagerule.go index b6c2f3525a..5f03d1b69c 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-application_maxagerule.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxagerule.go @@ -1,10 +1,12 @@ -package resources +package elasticbeanstalk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticBeanstalkApplication_MaxAgeRule AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.MaxAgeRule) +// Application_MaxAgeRule AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.MaxAgeRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html -type AWSElasticBeanstalkApplication_MaxAgeRule struct { +type Application_MaxAgeRule struct { // DeleteSourceFromS3 AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSElasticBeanstalkApplication_MaxAgeRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplication_MaxAgeRule) AWSCloudFormationType() string { +func (r *Application_MaxAgeRule) AWSCloudFormationType() string { return "AWS::ElasticBeanstalk::Application.MaxAgeRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication_MaxAgeRule) DependsOn() []string { +func (r *Application_MaxAgeRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication_MaxAgeRule) SetDependsOn(dependencies []string) { +func (r *Application_MaxAgeRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication_MaxAgeRule) Metadata() map[string]interface{} { +func (r *Application_MaxAgeRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication_MaxAgeRule) SetMetadata(metadata map[string]interface{}) { +func (r *Application_MaxAgeRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication_MaxAgeRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Application_MaxAgeRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication_MaxAgeRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_MaxAgeRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxcountrule.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxcountrule.go new file mode 100644 index 0000000000..724b6cd2b5 --- /dev/null +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxcountrule.go @@ -0,0 +1,75 @@ +package elasticbeanstalk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_MaxCountRule AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.MaxCountRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html +type Application_MaxCountRule struct { + + // DeleteSourceFromS3 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-deletesourcefroms3 + DeleteSourceFromS3 bool `json:"DeleteSourceFromS3,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-enabled + Enabled bool `json:"Enabled,omitempty"` + + // MaxCount AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-maxcount + MaxCount int `json:"MaxCount,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_MaxCountRule) AWSCloudFormationType() string { + return "AWS::ElasticBeanstalk::Application.MaxCountRule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_MaxCountRule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_MaxCountRule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_MaxCountRule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_MaxCountRule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_MaxCountRule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_MaxCountRule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticbeanstalk-applicationversion.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion.go similarity index 76% rename from cloudformation/resources/aws-elasticbeanstalk-applicationversion.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion.go index bf10d4a5cc..93b9e918d7 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-applicationversion.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion.go @@ -1,15 +1,16 @@ -package resources +package elasticbeanstalk import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElasticBeanstalkApplicationVersion AWS CloudFormation Resource (AWS::ElasticBeanstalk::ApplicationVersion) +// ApplicationVersion AWS CloudFormation Resource (AWS::ElasticBeanstalk::ApplicationVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html -type AWSElasticBeanstalkApplicationVersion struct { +type ApplicationVersion struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSElasticBeanstalkApplicationVersion struct { // SourceBundle AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-sourcebundle - SourceBundle *AWSElasticBeanstalkApplicationVersion_SourceBundle `json:"SourceBundle,omitempty"` + SourceBundle *ApplicationVersion_SourceBundle `json:"SourceBundle,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSElasticBeanstalkApplicationVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplicationVersion) AWSCloudFormationType() string { +func (r *ApplicationVersion) AWSCloudFormationType() string { return "AWS::ElasticBeanstalk::ApplicationVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplicationVersion) DependsOn() []string { +func (r *ApplicationVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplicationVersion) SetDependsOn(dependencies []string) { +func (r *ApplicationVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplicationVersion) Metadata() map[string]interface{} { +func (r *ApplicationVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplicationVersion) SetMetadata(metadata map[string]interface{}) { +func (r *ApplicationVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplicationVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *ApplicationVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplicationVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticBeanstalkApplicationVersion) MarshalJSON() ([]byte, error) { - type Properties AWSElasticBeanstalkApplicationVersion +func (r ApplicationVersion) MarshalJSON() ([]byte, error) { + type Properties ApplicationVersion return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSElasticBeanstalkApplicationVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticBeanstalkApplicationVersion) UnmarshalJSON(b []byte) error { - type Properties AWSElasticBeanstalkApplicationVersion +func (r *ApplicationVersion) UnmarshalJSON(b []byte) error { + type Properties ApplicationVersion res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSElasticBeanstalkApplicationVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticBeanstalkApplicationVersion(*res.Properties) + *r = ApplicationVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion_sourcebundle.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion_sourcebundle.go new file mode 100644 index 0000000000..d81ac8cbde --- /dev/null +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion_sourcebundle.go @@ -0,0 +1,70 @@ +package elasticbeanstalk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationVersion_SourceBundle AWS CloudFormation Resource (AWS::ElasticBeanstalk::ApplicationVersion.SourceBundle) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html +type ApplicationVersion_SourceBundle struct { + + // S3Bucket AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3bucket + S3Bucket string `json:"S3Bucket,omitempty"` + + // S3Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3key + S3Key string `json:"S3Key,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationVersion_SourceBundle) AWSCloudFormationType() string { + return "AWS::ElasticBeanstalk::ApplicationVersion.SourceBundle" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationVersion_SourceBundle) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationVersion_SourceBundle) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationVersion_SourceBundle) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationVersion_SourceBundle) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationVersion_SourceBundle) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationVersion_SourceBundle) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate.go similarity index 78% rename from cloudformation/resources/aws-elasticbeanstalk-configurationtemplate.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate.go index 51c19147c1..de042b3699 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate.go @@ -1,15 +1,16 @@ -package resources +package elasticbeanstalk import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElasticBeanstalkConfigurationTemplate AWS CloudFormation Resource (AWS::ElasticBeanstalk::ConfigurationTemplate) +// ConfigurationTemplate AWS CloudFormation Resource (AWS::ElasticBeanstalk::ConfigurationTemplate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html -type AWSElasticBeanstalkConfigurationTemplate struct { +type ConfigurationTemplate struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -29,7 +30,7 @@ type AWSElasticBeanstalkConfigurationTemplate struct { // OptionSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-optionsettings - OptionSettings []AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting `json:"OptionSettings,omitempty"` + OptionSettings []ConfigurationTemplate_ConfigurationOptionSetting `json:"OptionSettings,omitempty"` // PlatformArn AWS CloudFormation Property // Required: false @@ -44,7 +45,7 @@ type AWSElasticBeanstalkConfigurationTemplate struct { // SourceConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration - SourceConfiguration *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration `json:"SourceConfiguration,omitempty"` + SourceConfiguration *ConfigurationTemplate_SourceConfiguration `json:"SourceConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +58,50 @@ type AWSElasticBeanstalkConfigurationTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkConfigurationTemplate) AWSCloudFormationType() string { +func (r *ConfigurationTemplate) AWSCloudFormationType() string { return "AWS::ElasticBeanstalk::ConfigurationTemplate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkConfigurationTemplate) DependsOn() []string { +func (r *ConfigurationTemplate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkConfigurationTemplate) SetDependsOn(dependencies []string) { +func (r *ConfigurationTemplate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkConfigurationTemplate) Metadata() map[string]interface{} { +func (r *ConfigurationTemplate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkConfigurationTemplate) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigurationTemplate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkConfigurationTemplate) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigurationTemplate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkConfigurationTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticBeanstalkConfigurationTemplate) MarshalJSON() ([]byte, error) { - type Properties AWSElasticBeanstalkConfigurationTemplate +func (r ConfigurationTemplate) MarshalJSON() ([]byte, error) { + type Properties ConfigurationTemplate return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSElasticBeanstalkConfigurationTemplate) MarshalJSON() ([]byte, error) // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticBeanstalkConfigurationTemplate) UnmarshalJSON(b []byte) error { - type Properties AWSElasticBeanstalkConfigurationTemplate +func (r *ConfigurationTemplate) UnmarshalJSON(b []byte) error { + type Properties ConfigurationTemplate res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSElasticBeanstalkConfigurationTemplate) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticBeanstalkConfigurationTemplate(*res.Properties) + *r = ConfigurationTemplate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go new file mode 100644 index 0000000000..f4d0868097 --- /dev/null +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go @@ -0,0 +1,80 @@ +package elasticbeanstalk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationTemplate_ConfigurationOptionSetting AWS CloudFormation Resource (AWS::ElasticBeanstalk::ConfigurationTemplate.ConfigurationOptionSetting) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html +type ConfigurationTemplate_ConfigurationOptionSetting struct { + + // Namespace AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-namespace + Namespace string `json:"Namespace,omitempty"` + + // OptionName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-optionname + OptionName string `json:"OptionName,omitempty"` + + // ResourceName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-resourcename + ResourceName string `json:"ResourceName,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationTemplate_ConfigurationOptionSetting) AWSCloudFormationType() string { + return "AWS::ElasticBeanstalk::ConfigurationTemplate.ConfigurationOptionSetting" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationTemplate_ConfigurationOptionSetting) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationTemplate_ConfigurationOptionSetting) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationTemplate_ConfigurationOptionSetting) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationTemplate_ConfigurationOptionSetting) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationTemplate_ConfigurationOptionSetting) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationTemplate_ConfigurationOptionSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go new file mode 100644 index 0000000000..4aa783af6c --- /dev/null +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go @@ -0,0 +1,70 @@ +package elasticbeanstalk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationTemplate_SourceConfiguration AWS CloudFormation Resource (AWS::ElasticBeanstalk::ConfigurationTemplate.SourceConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html +type ConfigurationTemplate_SourceConfiguration struct { + + // ApplicationName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration-applicationname + ApplicationName string `json:"ApplicationName,omitempty"` + + // TemplateName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration-templatename + TemplateName string `json:"TemplateName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationTemplate_SourceConfiguration) AWSCloudFormationType() string { + return "AWS::ElasticBeanstalk::ConfigurationTemplate.SourceConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationTemplate_SourceConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationTemplate_SourceConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationTemplate_SourceConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationTemplate_SourceConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationTemplate_SourceConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationTemplate_SourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticbeanstalk-environment.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment.go similarity index 82% rename from cloudformation/resources/aws-elasticbeanstalk-environment.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment.go index f157a814ac..fbd06cd4fd 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-environment.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment.go @@ -1,15 +1,17 @@ -package resources +package elasticbeanstalk import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSElasticBeanstalkEnvironment AWS CloudFormation Resource (AWS::ElasticBeanstalk::Environment) +// Environment AWS CloudFormation Resource (AWS::ElasticBeanstalk::Environment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html -type AWSElasticBeanstalkEnvironment struct { +type Environment struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSElasticBeanstalkEnvironment struct { // OptionSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-optionsettings - OptionSettings []AWSElasticBeanstalkEnvironment_OptionSetting `json:"OptionSettings,omitempty"` + OptionSettings []Environment_OptionSetting `json:"OptionSettings,omitempty"` // PlatformArn AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSElasticBeanstalkEnvironment struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-elasticbeanstalk-environment-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TemplateName AWS CloudFormation Property // Required: false @@ -59,7 +61,7 @@ type AWSElasticBeanstalkEnvironment struct { // Tier AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-tier - Tier *AWSElasticBeanstalkEnvironment_Tier `json:"Tier,omitempty"` + Tier *Environment_Tier `json:"Tier,omitempty"` // VersionLabel AWS CloudFormation Property // Required: false @@ -77,50 +79,50 @@ type AWSElasticBeanstalkEnvironment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkEnvironment) AWSCloudFormationType() string { +func (r *Environment) AWSCloudFormationType() string { return "AWS::ElasticBeanstalk::Environment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkEnvironment) DependsOn() []string { +func (r *Environment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkEnvironment) SetDependsOn(dependencies []string) { +func (r *Environment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkEnvironment) Metadata() map[string]interface{} { +func (r *Environment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkEnvironment) SetMetadata(metadata map[string]interface{}) { +func (r *Environment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkEnvironment) DeletionPolicy() policies.DeletionPolicy { +func (r *Environment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkEnvironment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticBeanstalkEnvironment) MarshalJSON() ([]byte, error) { - type Properties AWSElasticBeanstalkEnvironment +func (r Environment) MarshalJSON() ([]byte, error) { + type Properties Environment return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +140,8 @@ func (r AWSElasticBeanstalkEnvironment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticBeanstalkEnvironment) UnmarshalJSON(b []byte) error { - type Properties AWSElasticBeanstalkEnvironment +func (r *Environment) UnmarshalJSON(b []byte) error { + type Properties Environment res := &struct { Type string Properties *Properties @@ -158,7 +160,7 @@ func (r *AWSElasticBeanstalkEnvironment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticBeanstalkEnvironment(*res.Properties) + *r = Environment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticbeanstalk-environment_optionsetting.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment_optionsetting.go similarity index 75% rename from cloudformation/resources/aws-elasticbeanstalk-environment_optionsetting.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment_optionsetting.go index 60e4445d69..8ee1d31e9d 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-environment_optionsetting.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment_optionsetting.go @@ -1,10 +1,12 @@ -package resources +package elasticbeanstalk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticBeanstalkEnvironment_OptionSetting AWS CloudFormation Resource (AWS::ElasticBeanstalk::Environment.OptionSetting) +// Environment_OptionSetting AWS CloudFormation Resource (AWS::ElasticBeanstalk::Environment.OptionSetting) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html -type AWSElasticBeanstalkEnvironment_OptionSetting struct { +type Environment_OptionSetting struct { // Namespace AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSElasticBeanstalkEnvironment_OptionSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkEnvironment_OptionSetting) AWSCloudFormationType() string { +func (r *Environment_OptionSetting) AWSCloudFormationType() string { return "AWS::ElasticBeanstalk::Environment.OptionSetting" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkEnvironment_OptionSetting) DependsOn() []string { +func (r *Environment_OptionSetting) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkEnvironment_OptionSetting) SetDependsOn(dependencies []string) { +func (r *Environment_OptionSetting) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkEnvironment_OptionSetting) Metadata() map[string]interface{} { +func (r *Environment_OptionSetting) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkEnvironment_OptionSetting) SetMetadata(metadata map[string]interface{}) { +func (r *Environment_OptionSetting) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkEnvironment_OptionSetting) DeletionPolicy() policies.DeletionPolicy { +func (r *Environment_OptionSetting) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkEnvironment_OptionSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Environment_OptionSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticbeanstalk-environment_tier.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment_tier.go similarity index 75% rename from cloudformation/resources/aws-elasticbeanstalk-environment_tier.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment_tier.go index 530c9fe67d..3f704aba8c 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-environment_tier.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-environment_tier.go @@ -1,10 +1,12 @@ -package resources +package elasticbeanstalk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticBeanstalkEnvironment_Tier AWS CloudFormation Resource (AWS::ElasticBeanstalk::Environment.Tier) +// Environment_Tier AWS CloudFormation Resource (AWS::ElasticBeanstalk::Environment.Tier) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html -type AWSElasticBeanstalkEnvironment_Tier struct { +type Environment_Tier struct { // Name AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSElasticBeanstalkEnvironment_Tier struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkEnvironment_Tier) AWSCloudFormationType() string { +func (r *Environment_Tier) AWSCloudFormationType() string { return "AWS::ElasticBeanstalk::Environment.Tier" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkEnvironment_Tier) DependsOn() []string { +func (r *Environment_Tier) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkEnvironment_Tier) SetDependsOn(dependencies []string) { +func (r *Environment_Tier) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkEnvironment_Tier) Metadata() map[string]interface{} { +func (r *Environment_Tier) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkEnvironment_Tier) SetMetadata(metadata map[string]interface{}) { +func (r *Environment_Tier) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkEnvironment_Tier) DeletionPolicy() policies.DeletionPolicy { +func (r *Environment_Tier) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkEnvironment_Tier) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Environment_Tier) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer.go similarity index 76% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer.go index dbbf6b8a8c..7dee13a9d1 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer.go @@ -1,25 +1,27 @@ -package resources +package elasticloadbalancing import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSElasticLoadBalancingLoadBalancer AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer) +// LoadBalancer AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html -type AWSElasticLoadBalancingLoadBalancer struct { +type LoadBalancer struct { // AccessLoggingPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-accessloggingpolicy - AccessLoggingPolicy *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy `json:"AccessLoggingPolicy,omitempty"` + AccessLoggingPolicy *LoadBalancer_AccessLoggingPolicy `json:"AccessLoggingPolicy,omitempty"` // AppCookieStickinessPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-appcookiestickinesspolicy - AppCookieStickinessPolicy []AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy `json:"AppCookieStickinessPolicy,omitempty"` + AppCookieStickinessPolicy []LoadBalancer_AppCookieStickinessPolicy `json:"AppCookieStickinessPolicy,omitempty"` // AvailabilityZones AWS CloudFormation Property // Required: false @@ -29,12 +31,12 @@ type AWSElasticLoadBalancingLoadBalancer struct { // ConnectionDrainingPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-connectiondrainingpolicy - ConnectionDrainingPolicy *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy `json:"ConnectionDrainingPolicy,omitempty"` + ConnectionDrainingPolicy *LoadBalancer_ConnectionDrainingPolicy `json:"ConnectionDrainingPolicy,omitempty"` // ConnectionSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-connectionsettings - ConnectionSettings *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings `json:"ConnectionSettings,omitempty"` + ConnectionSettings *LoadBalancer_ConnectionSettings `json:"ConnectionSettings,omitempty"` // CrossZone AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSElasticLoadBalancingLoadBalancer struct { // HealthCheck AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-healthcheck - HealthCheck *AWSElasticLoadBalancingLoadBalancer_HealthCheck `json:"HealthCheck,omitempty"` + HealthCheck *LoadBalancer_HealthCheck `json:"HealthCheck,omitempty"` // Instances AWS CloudFormation Property // Required: false @@ -54,12 +56,12 @@ type AWSElasticLoadBalancingLoadBalancer struct { // LBCookieStickinessPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-lbcookiestickinesspolicy - LBCookieStickinessPolicy []AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy `json:"LBCookieStickinessPolicy,omitempty"` + LBCookieStickinessPolicy []LoadBalancer_LBCookieStickinessPolicy `json:"LBCookieStickinessPolicy,omitempty"` // Listeners AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-listeners - Listeners []AWSElasticLoadBalancingLoadBalancer_Listeners `json:"Listeners,omitempty"` + Listeners []LoadBalancer_Listeners `json:"Listeners,omitempty"` // LoadBalancerName AWS CloudFormation Property // Required: false @@ -69,7 +71,7 @@ type AWSElasticLoadBalancingLoadBalancer struct { // Policies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-policies - Policies []AWSElasticLoadBalancingLoadBalancer_Policies `json:"Policies,omitempty"` + Policies []LoadBalancer_Policies `json:"Policies,omitempty"` // Scheme AWS CloudFormation Property // Required: false @@ -89,7 +91,7 @@ type AWSElasticLoadBalancingLoadBalancer struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-elasticloadbalancing-loadbalancer-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -102,50 +104,50 @@ type AWSElasticLoadBalancingLoadBalancer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer) AWSCloudFormationType() string { +func (r *LoadBalancer) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancing::LoadBalancer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer) DependsOn() []string { +func (r *LoadBalancer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer) SetDependsOn(dependencies []string) { +func (r *LoadBalancer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer) Metadata() map[string]interface{} { +func (r *LoadBalancer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer) SetMetadata(metadata map[string]interface{}) { +func (r *LoadBalancer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer) DeletionPolicy() policies.DeletionPolicy { +func (r *LoadBalancer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticLoadBalancingLoadBalancer) MarshalJSON() ([]byte, error) { - type Properties AWSElasticLoadBalancingLoadBalancer +func (r LoadBalancer) MarshalJSON() ([]byte, error) { + type Properties LoadBalancer return json.Marshal(&struct { Type string Properties Properties @@ -163,8 +165,8 @@ func (r AWSElasticLoadBalancingLoadBalancer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticLoadBalancingLoadBalancer) UnmarshalJSON(b []byte) error { - type Properties AWSElasticLoadBalancingLoadBalancer +func (r *LoadBalancer) UnmarshalJSON(b []byte) error { + type Properties LoadBalancer res := &struct { Type string Properties *Properties @@ -183,7 +185,7 @@ func (r *AWSElasticLoadBalancingLoadBalancer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticLoadBalancingLoadBalancer(*res.Properties) + *r = LoadBalancer(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go new file mode 100644 index 0000000000..285c6cb3f5 --- /dev/null +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go @@ -0,0 +1,80 @@ +package elasticloadbalancing + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LoadBalancer_AccessLoggingPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.AccessLoggingPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html +type LoadBalancer_AccessLoggingPolicy struct { + + // EmitInterval AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-emitinterval + EmitInterval int `json:"EmitInterval,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-enabled + Enabled bool `json:"Enabled"` + + // S3BucketName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketname + S3BucketName string `json:"S3BucketName,omitempty"` + + // S3BucketPrefix AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketprefix + S3BucketPrefix string `json:"S3BucketPrefix,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LoadBalancer_AccessLoggingPolicy) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancing::LoadBalancer.AccessLoggingPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_AccessLoggingPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_AccessLoggingPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_AccessLoggingPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_AccessLoggingPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_AccessLoggingPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_AccessLoggingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go new file mode 100644 index 0000000000..88daee6c65 --- /dev/null +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go @@ -0,0 +1,70 @@ +package elasticloadbalancing + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LoadBalancer_AppCookieStickinessPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.AppCookieStickinessPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html +type LoadBalancer_AppCookieStickinessPolicy struct { + + // CookieName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-cookiename + CookieName string `json:"CookieName,omitempty"` + + // PolicyName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-policyname + PolicyName string `json:"PolicyName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LoadBalancer_AppCookieStickinessPolicy) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancing::LoadBalancer.AppCookieStickinessPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_AppCookieStickinessPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_AppCookieStickinessPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_AppCookieStickinessPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_AppCookieStickinessPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_AppCookieStickinessPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_AppCookieStickinessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go new file mode 100644 index 0000000000..91adf8cc13 --- /dev/null +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go @@ -0,0 +1,70 @@ +package elasticloadbalancing + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LoadBalancer_ConnectionDrainingPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.ConnectionDrainingPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html +type LoadBalancer_ConnectionDrainingPolicy struct { + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-enabled + Enabled bool `json:"Enabled"` + + // Timeout AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-timeout + Timeout int `json:"Timeout,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LoadBalancer_ConnectionDrainingPolicy) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancing::LoadBalancer.ConnectionDrainingPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_ConnectionDrainingPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_ConnectionDrainingPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_ConnectionDrainingPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_ConnectionDrainingPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_ConnectionDrainingPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_ConnectionDrainingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectionsettings.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectionsettings.go new file mode 100644 index 0000000000..ab54c195e1 --- /dev/null +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectionsettings.go @@ -0,0 +1,65 @@ +package elasticloadbalancing + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LoadBalancer_ConnectionSettings AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.ConnectionSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html +type LoadBalancer_ConnectionSettings struct { + + // IdleTimeout AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html#cfn-elb-connectionsettings-idletimeout + IdleTimeout int `json:"IdleTimeout"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LoadBalancer_ConnectionSettings) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancing::LoadBalancer.ConnectionSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_ConnectionSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_ConnectionSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_ConnectionSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_ConnectionSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_ConnectionSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_ConnectionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_healthcheck.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_healthcheck.go similarity index 76% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer_healthcheck.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_healthcheck.go index 244e075346..fe5fbbfbb0 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_healthcheck.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_healthcheck.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancing -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingLoadBalancer_HealthCheck AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.HealthCheck) +// LoadBalancer_HealthCheck AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.HealthCheck) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html -type AWSElasticLoadBalancingLoadBalancer_HealthCheck struct { +type LoadBalancer_HealthCheck struct { // HealthyThreshold AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSElasticLoadBalancingLoadBalancer_HealthCheck struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_HealthCheck) AWSCloudFormationType() string { +func (r *LoadBalancer_HealthCheck) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancing::LoadBalancer.HealthCheck" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_HealthCheck) DependsOn() []string { +func (r *LoadBalancer_HealthCheck) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_HealthCheck) SetDependsOn(dependencies []string) { +func (r *LoadBalancer_HealthCheck) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_HealthCheck) Metadata() map[string]interface{} { +func (r *LoadBalancer_HealthCheck) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_HealthCheck) SetMetadata(metadata map[string]interface{}) { +func (r *LoadBalancer_HealthCheck) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_HealthCheck) DeletionPolicy() policies.DeletionPolicy { +func (r *LoadBalancer_HealthCheck) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_HealthCheck) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer_HealthCheck) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go new file mode 100644 index 0000000000..740b1e5611 --- /dev/null +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go @@ -0,0 +1,70 @@ +package elasticloadbalancing + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LoadBalancer_LBCookieStickinessPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.LBCookieStickinessPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html +type LoadBalancer_LBCookieStickinessPolicy struct { + + // CookieExpirationPeriod AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-cookieexpirationperiod + CookieExpirationPeriod string `json:"CookieExpirationPeriod,omitempty"` + + // PolicyName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-policyname + PolicyName string `json:"PolicyName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LoadBalancer_LBCookieStickinessPolicy) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancing::LoadBalancer.LBCookieStickinessPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_LBCookieStickinessPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_LBCookieStickinessPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_LBCookieStickinessPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_LBCookieStickinessPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_LBCookieStickinessPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_LBCookieStickinessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_listeners.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_listeners.go similarity index 78% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer_listeners.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_listeners.go index f5f36c7d29..5fb2becbe4 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_listeners.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_listeners.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancing -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingLoadBalancer_Listeners AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.Listeners) +// LoadBalancer_Listeners AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.Listeners) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html -type AWSElasticLoadBalancingLoadBalancer_Listeners struct { +type LoadBalancer_Listeners struct { // InstancePort AWS CloudFormation Property // Required: true @@ -47,42 +49,42 @@ type AWSElasticLoadBalancingLoadBalancer_Listeners struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_Listeners) AWSCloudFormationType() string { +func (r *LoadBalancer_Listeners) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancing::LoadBalancer.Listeners" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_Listeners) DependsOn() []string { +func (r *LoadBalancer_Listeners) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_Listeners) SetDependsOn(dependencies []string) { +func (r *LoadBalancer_Listeners) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_Listeners) Metadata() map[string]interface{} { +func (r *LoadBalancer_Listeners) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_Listeners) SetMetadata(metadata map[string]interface{}) { +func (r *LoadBalancer_Listeners) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_Listeners) DeletionPolicy() policies.DeletionPolicy { +func (r *LoadBalancer_Listeners) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_Listeners) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer_Listeners) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_policies.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_policies.go similarity index 76% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer_policies.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_policies.go index 8070044e0f..9c77bcd5c1 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_policies.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_policies.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancing -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingLoadBalancer_Policies AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.Policies) +// LoadBalancer_Policies AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.Policies) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html -type AWSElasticLoadBalancingLoadBalancer_Policies struct { +type LoadBalancer_Policies struct { // Attributes AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSElasticLoadBalancingLoadBalancer_Policies struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_Policies) AWSCloudFormationType() string { +func (r *LoadBalancer_Policies) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancing::LoadBalancer.Policies" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_Policies) DependsOn() []string { +func (r *LoadBalancer_Policies) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_Policies) SetDependsOn(dependencies []string) { +func (r *LoadBalancer_Policies) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_Policies) Metadata() map[string]interface{} { +func (r *LoadBalancer_Policies) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_Policies) SetMetadata(metadata map[string]interface{}) { +func (r *LoadBalancer_Policies) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_Policies) DeletionPolicy() policies.DeletionPolicy { +func (r *LoadBalancer_Policies) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_Policies) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer_Policies) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listener.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener.go similarity index 78% rename from cloudformation/resources/aws-elasticloadbalancingv2-listener.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener.go index c3eb9801c3..fb04013e3c 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener.go @@ -1,25 +1,26 @@ -package resources +package elasticloadbalancingv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElasticLoadBalancingV2Listener AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener) +// Listener AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html -type AWSElasticLoadBalancingV2Listener struct { +type Listener struct { // Certificates AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-certificates - Certificates []AWSElasticLoadBalancingV2Listener_Certificate `json:"Certificates,omitempty"` + Certificates []Listener_Certificate `json:"Certificates,omitempty"` // DefaultActions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-defaultactions - DefaultActions []AWSElasticLoadBalancingV2Listener_Action `json:"DefaultActions,omitempty"` + DefaultActions []Listener_Action `json:"DefaultActions,omitempty"` // LoadBalancerArn AWS CloudFormation Property // Required: true @@ -52,50 +53,50 @@ type AWSElasticLoadBalancingV2Listener struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener) AWSCloudFormationType() string { +func (r *Listener) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::Listener" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener) DependsOn() []string { +func (r *Listener) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener) SetDependsOn(dependencies []string) { +func (r *Listener) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener) Metadata() map[string]interface{} { +func (r *Listener) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener) SetMetadata(metadata map[string]interface{}) { +func (r *Listener) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener) DeletionPolicy() policies.DeletionPolicy { +func (r *Listener) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Listener) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticLoadBalancingV2Listener) MarshalJSON() ([]byte, error) { - type Properties AWSElasticLoadBalancingV2Listener +func (r Listener) MarshalJSON() ([]byte, error) { + type Properties Listener return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSElasticLoadBalancingV2Listener) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticLoadBalancingV2Listener) UnmarshalJSON(b []byte) error { - type Properties AWSElasticLoadBalancingV2Listener +func (r *Listener) UnmarshalJSON(b []byte) error { + type Properties Listener res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSElasticLoadBalancingV2Listener) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticLoadBalancingV2Listener(*res.Properties) + *r = Listener(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_action.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_action.go new file mode 100644 index 0000000000..706d047588 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_action.go @@ -0,0 +1,95 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Listener_Action AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html +type Listener_Action struct { + + // AuthenticateCognitoConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-authenticatecognitoconfig + AuthenticateCognitoConfig *Listener_AuthenticateCognitoConfig `json:"AuthenticateCognitoConfig,omitempty"` + + // AuthenticateOidcConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-authenticateoidcconfig + AuthenticateOidcConfig *Listener_AuthenticateOidcConfig `json:"AuthenticateOidcConfig,omitempty"` + + // FixedResponseConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-fixedresponseconfig + FixedResponseConfig *Listener_FixedResponseConfig `json:"FixedResponseConfig,omitempty"` + + // Order AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-order + Order int `json:"Order,omitempty"` + + // RedirectConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-redirectconfig + RedirectConfig *Listener_RedirectConfig `json:"RedirectConfig,omitempty"` + + // TargetGroupArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-defaultactions-targetgrouparn + TargetGroupArn string `json:"TargetGroupArn,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-defaultactions-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Listener_Action) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::Listener.Action" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Listener_Action) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Listener_Action) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Listener_Action) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Listener_Action) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Listener_Action) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Listener_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listener_authenticatecognitoconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_authenticatecognitoconfig.go similarity index 81% rename from cloudformation/resources/aws-elasticloadbalancingv2-listener_authenticatecognitoconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_authenticatecognitoconfig.go index 048994aee5..785667ad83 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_authenticatecognitoconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_authenticatecognitoconfig.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.AuthenticateCognitoConfig) +// Listener_AuthenticateCognitoConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.AuthenticateCognitoConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html -type AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig struct { +type Listener_AuthenticateCognitoConfig struct { // AuthenticationRequestExtraParams AWS CloudFormation Property // Required: false @@ -57,42 +59,42 @@ type AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig) AWSCloudFormationType() string { +func (r *Listener_AuthenticateCognitoConfig) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::Listener.AuthenticateCognitoConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig) DependsOn() []string { +func (r *Listener_AuthenticateCognitoConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig) SetDependsOn(dependencies []string) { +func (r *Listener_AuthenticateCognitoConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig) Metadata() map[string]interface{} { +func (r *Listener_AuthenticateCognitoConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Listener_AuthenticateCognitoConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Listener_AuthenticateCognitoConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Listener_AuthenticateCognitoConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listener_authenticateoidcconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_authenticateoidcconfig.go similarity index 84% rename from cloudformation/resources/aws-elasticloadbalancingv2-listener_authenticateoidcconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_authenticateoidcconfig.go index 817684d384..ca374d63f7 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_authenticateoidcconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_authenticateoidcconfig.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.AuthenticateOidcConfig) +// Listener_AuthenticateOidcConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.AuthenticateOidcConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html -type AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig struct { +type Listener_AuthenticateOidcConfig struct { // AuthenticationRequestExtraParams AWS CloudFormation Property // Required: false @@ -72,42 +74,42 @@ type AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig) AWSCloudFormationType() string { +func (r *Listener_AuthenticateOidcConfig) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::Listener.AuthenticateOidcConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig) DependsOn() []string { +func (r *Listener_AuthenticateOidcConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig) SetDependsOn(dependencies []string) { +func (r *Listener_AuthenticateOidcConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig) Metadata() map[string]interface{} { +func (r *Listener_AuthenticateOidcConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Listener_AuthenticateOidcConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Listener_AuthenticateOidcConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Listener_AuthenticateOidcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_certificate.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_certificate.go new file mode 100644 index 0000000000..ed458acb75 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_certificate.go @@ -0,0 +1,65 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Listener_Certificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.Certificate) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html +type Listener_Certificate struct { + + // CertificateArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html#cfn-elasticloadbalancingv2-listener-certificates-certificatearn + CertificateArn string `json:"CertificateArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Listener_Certificate) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::Listener.Certificate" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Listener_Certificate) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Listener_Certificate) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Listener_Certificate) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Listener_Certificate) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Listener_Certificate) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Listener_Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go new file mode 100644 index 0000000000..173d27654b --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go @@ -0,0 +1,75 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Listener_FixedResponseConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.FixedResponseConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html +type Listener_FixedResponseConfig struct { + + // ContentType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-contenttype + ContentType string `json:"ContentType,omitempty"` + + // MessageBody AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-messagebody + MessageBody string `json:"MessageBody,omitempty"` + + // StatusCode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-statuscode + StatusCode string `json:"StatusCode,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Listener_FixedResponseConfig) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::Listener.FixedResponseConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Listener_FixedResponseConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Listener_FixedResponseConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Listener_FixedResponseConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Listener_FixedResponseConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Listener_FixedResponseConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Listener_FixedResponseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listener_redirectconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_redirectconfig.go similarity index 78% rename from cloudformation/resources/aws-elasticloadbalancingv2-listener_redirectconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_redirectconfig.go index 3ac0b7b412..007a2c80fe 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_redirectconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_redirectconfig.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2Listener_RedirectConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.RedirectConfig) +// Listener_RedirectConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.RedirectConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html -type AWSElasticLoadBalancingV2Listener_RedirectConfig struct { +type Listener_RedirectConfig struct { // Host AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSElasticLoadBalancingV2Listener_RedirectConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_RedirectConfig) AWSCloudFormationType() string { +func (r *Listener_RedirectConfig) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::Listener.RedirectConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_RedirectConfig) DependsOn() []string { +func (r *Listener_RedirectConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_RedirectConfig) SetDependsOn(dependencies []string) { +func (r *Listener_RedirectConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_RedirectConfig) Metadata() map[string]interface{} { +func (r *Listener_RedirectConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_RedirectConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Listener_RedirectConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_RedirectConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Listener_RedirectConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_RedirectConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Listener_RedirectConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate.go new file mode 100644 index 0000000000..f28ed64d00 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate.go @@ -0,0 +1,129 @@ +package elasticloadbalancingv2 + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerCertificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerCertificate) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html +type ListenerCertificate struct { + + // Certificates AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html#cfn-elasticloadbalancingv2-listenercertificate-certificates + Certificates []ListenerCertificate_Certificate `json:"Certificates,omitempty"` + + // ListenerArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html#cfn-elasticloadbalancingv2-listenercertificate-listenerarn + ListenerArn string `json:"ListenerArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerCertificate) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerCertificate" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerCertificate) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerCertificate) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerCertificate) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerCertificate) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerCertificate) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ListenerCertificate) MarshalJSON() ([]byte, error) { + type Properties ListenerCertificate + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *ListenerCertificate) UnmarshalJSON(b []byte) error { + type Properties ListenerCertificate + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = ListenerCertificate(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate_certificate.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate_certificate.go new file mode 100644 index 0000000000..cb23b1d1a9 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate_certificate.go @@ -0,0 +1,65 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerCertificate_Certificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerCertificate.Certificate) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html +type ListenerCertificate_Certificate struct { + + // CertificateArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html#cfn-elasticloadbalancingv2-listener-certificates-certificatearn + CertificateArn string `json:"CertificateArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerCertificate_Certificate) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerCertificate.Certificate" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerCertificate_Certificate) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerCertificate_Certificate) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerCertificate_Certificate) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerCertificate_Certificate) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerCertificate_Certificate) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerCertificate_Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule.go similarity index 76% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule.go index 62423bfdeb..a337fb8fd4 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule.go @@ -1,25 +1,26 @@ -package resources +package elasticloadbalancingv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElasticLoadBalancingV2ListenerRule AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule) +// ListenerRule AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html -type AWSElasticLoadBalancingV2ListenerRule struct { +type ListenerRule struct { // Actions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-actions - Actions []AWSElasticLoadBalancingV2ListenerRule_Action `json:"Actions,omitempty"` + Actions []ListenerRule_Action `json:"Actions,omitempty"` // Conditions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-conditions - Conditions []AWSElasticLoadBalancingV2ListenerRule_RuleCondition `json:"Conditions,omitempty"` + Conditions []ListenerRule_RuleCondition `json:"Conditions,omitempty"` // ListenerArn AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSElasticLoadBalancingV2ListenerRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule) AWSCloudFormationType() string { +func (r *ListenerRule) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::ListenerRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule) DependsOn() []string { +func (r *ListenerRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule) SetDependsOn(dependencies []string) { +func (r *ListenerRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule) Metadata() map[string]interface{} { +func (r *ListenerRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule) SetMetadata(metadata map[string]interface{}) { +func (r *ListenerRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule) DeletionPolicy() policies.DeletionPolicy { +func (r *ListenerRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticLoadBalancingV2ListenerRule) MarshalJSON() ([]byte, error) { - type Properties AWSElasticLoadBalancingV2ListenerRule +func (r ListenerRule) MarshalJSON() ([]byte, error) { + type Properties ListenerRule return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSElasticLoadBalancingV2ListenerRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticLoadBalancingV2ListenerRule) UnmarshalJSON(b []byte) error { - type Properties AWSElasticLoadBalancingV2ListenerRule +func (r *ListenerRule) UnmarshalJSON(b []byte) error { + type Properties ListenerRule res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSElasticLoadBalancingV2ListenerRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticLoadBalancingV2ListenerRule(*res.Properties) + *r = ListenerRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_action.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_action.go new file mode 100644 index 0000000000..893020d15b --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_action.go @@ -0,0 +1,95 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_Action AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html +type ListenerRule_Action struct { + + // AuthenticateCognitoConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-authenticatecognitoconfig + AuthenticateCognitoConfig *ListenerRule_AuthenticateCognitoConfig `json:"AuthenticateCognitoConfig,omitempty"` + + // AuthenticateOidcConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-authenticateoidcconfig + AuthenticateOidcConfig *ListenerRule_AuthenticateOidcConfig `json:"AuthenticateOidcConfig,omitempty"` + + // FixedResponseConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-fixedresponseconfig + FixedResponseConfig *ListenerRule_FixedResponseConfig `json:"FixedResponseConfig,omitempty"` + + // Order AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-order + Order int `json:"Order,omitempty"` + + // RedirectConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-redirectconfig + RedirectConfig *ListenerRule_RedirectConfig `json:"RedirectConfig,omitempty"` + + // TargetGroupArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listener-actions-targetgrouparn + TargetGroupArn string `json:"TargetGroupArn,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listener-actions-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_Action) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.Action" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_Action) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_Action) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_Action) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_Action) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_Action) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_authenticatecognitoconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_authenticatecognitoconfig.go similarity index 81% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_authenticatecognitoconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_authenticatecognitoconfig.go index 594fd62fd3..bd96e9b7c4 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_authenticatecognitoconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_authenticatecognitoconfig.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateCognitoConfig) +// ListenerRule_AuthenticateCognitoConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateCognitoConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html -type AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig struct { +type ListenerRule_AuthenticateCognitoConfig struct { // AuthenticationRequestExtraParams AWS CloudFormation Property // Required: false @@ -57,42 +59,42 @@ type AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig) AWSCloudFormationType() string { +func (r *ListenerRule_AuthenticateCognitoConfig) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateCognitoConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig) DependsOn() []string { +func (r *ListenerRule_AuthenticateCognitoConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig) SetDependsOn(dependencies []string) { +func (r *ListenerRule_AuthenticateCognitoConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig) Metadata() map[string]interface{} { +func (r *ListenerRule_AuthenticateCognitoConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig) SetMetadata(metadata map[string]interface{}) { +func (r *ListenerRule_AuthenticateCognitoConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *ListenerRule_AuthenticateCognitoConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_AuthenticateCognitoConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_authenticateoidcconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_authenticateoidcconfig.go similarity index 84% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_authenticateoidcconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_authenticateoidcconfig.go index 9029193d97..51915b78f2 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_authenticateoidcconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_authenticateoidcconfig.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateOidcConfig) +// ListenerRule_AuthenticateOidcConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateOidcConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html -type AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig struct { +type ListenerRule_AuthenticateOidcConfig struct { // AuthenticationRequestExtraParams AWS CloudFormation Property // Required: false @@ -72,42 +74,42 @@ type AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig) AWSCloudFormationType() string { +func (r *ListenerRule_AuthenticateOidcConfig) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateOidcConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig) DependsOn() []string { +func (r *ListenerRule_AuthenticateOidcConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig) SetDependsOn(dependencies []string) { +func (r *ListenerRule_AuthenticateOidcConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig) Metadata() map[string]interface{} { +func (r *ListenerRule_AuthenticateOidcConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig) SetMetadata(metadata map[string]interface{}) { +func (r *ListenerRule_AuthenticateOidcConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *ListenerRule_AuthenticateOidcConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_AuthenticateOidcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go new file mode 100644 index 0000000000..e887c59a5f --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go @@ -0,0 +1,75 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_FixedResponseConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.FixedResponseConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html +type ListenerRule_FixedResponseConfig struct { + + // ContentType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-contenttype + ContentType string `json:"ContentType,omitempty"` + + // MessageBody AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-messagebody + MessageBody string `json:"MessageBody,omitempty"` + + // StatusCode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-statuscode + StatusCode string `json:"StatusCode,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_FixedResponseConfig) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.FixedResponseConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_FixedResponseConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_FixedResponseConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_FixedResponseConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_FixedResponseConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_FixedResponseConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_FixedResponseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go new file mode 100644 index 0000000000..357f16a50c --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go @@ -0,0 +1,65 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_HostHeaderConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HostHeaderConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html +type ListenerRule_HostHeaderConfig struct { + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-hostheaderconfig-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_HostHeaderConfig) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.HostHeaderConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_HostHeaderConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_HostHeaderConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_HostHeaderConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_HostHeaderConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_HostHeaderConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_HostHeaderConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go new file mode 100644 index 0000000000..7ad5859d6d --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go @@ -0,0 +1,70 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_HttpHeaderConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HttpHeaderConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html +type ListenerRule_HttpHeaderConfig struct { + + // HttpHeaderName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-httpheaderconfig-httpheadername + HttpHeaderName string `json:"HttpHeaderName,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-httpheaderconfig-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_HttpHeaderConfig) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.HttpHeaderConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_HttpHeaderConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_HttpHeaderConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_HttpHeaderConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_HttpHeaderConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_HttpHeaderConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_HttpHeaderConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go new file mode 100644 index 0000000000..4e808721b3 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go @@ -0,0 +1,65 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_HttpRequestMethodConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HttpRequestMethodConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html +type ListenerRule_HttpRequestMethodConfig struct { + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html#cfn-elasticloadbalancingv2-listenerrule-httprequestmethodconfig-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_HttpRequestMethodConfig) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.HttpRequestMethodConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_HttpRequestMethodConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_HttpRequestMethodConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_HttpRequestMethodConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_HttpRequestMethodConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_HttpRequestMethodConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_HttpRequestMethodConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go new file mode 100644 index 0000000000..7f430b3c24 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go @@ -0,0 +1,65 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_PathPatternConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.PathPatternConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html +type ListenerRule_PathPatternConfig struct { + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html#cfn-elasticloadbalancingv2-listenerrule-pathpatternconfig-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_PathPatternConfig) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.PathPatternConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_PathPatternConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_PathPatternConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_PathPatternConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_PathPatternConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_PathPatternConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_PathPatternConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go new file mode 100644 index 0000000000..4d28ebe52f --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go @@ -0,0 +1,65 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_QueryStringConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html +type ListenerRule_QueryStringConfig struct { + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html#cfn-elasticloadbalancingv2-listenerrule-querystringconfig-values + Values []ListenerRule_QueryStringKeyValue `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_QueryStringConfig) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_QueryStringConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_QueryStringConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_QueryStringConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_QueryStringConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_QueryStringConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_QueryStringConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go new file mode 100644 index 0000000000..219aa54b34 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go @@ -0,0 +1,70 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_QueryStringKeyValue AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringKeyValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html +type ListenerRule_QueryStringKeyValue struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html#cfn-elasticloadbalancingv2-listenerrule-querystringkeyvalue-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html#cfn-elasticloadbalancingv2-listenerrule-querystringkeyvalue-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_QueryStringKeyValue) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringKeyValue" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_QueryStringKeyValue) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_QueryStringKeyValue) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_QueryStringKeyValue) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_QueryStringKeyValue) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_QueryStringKeyValue) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_QueryStringKeyValue) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_redirectconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_redirectconfig.go similarity index 78% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_redirectconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_redirectconfig.go index aca0d61a28..f61170202f 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_redirectconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_redirectconfig.go @@ -1,10 +1,12 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2ListenerRule_RedirectConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.RedirectConfig) +// ListenerRule_RedirectConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.RedirectConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html -type AWSElasticLoadBalancingV2ListenerRule_RedirectConfig struct { +type ListenerRule_RedirectConfig struct { // Host AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSElasticLoadBalancingV2ListenerRule_RedirectConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_RedirectConfig) AWSCloudFormationType() string { +func (r *ListenerRule_RedirectConfig) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::ListenerRule.RedirectConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RedirectConfig) DependsOn() []string { +func (r *ListenerRule_RedirectConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RedirectConfig) SetDependsOn(dependencies []string) { +func (r *ListenerRule_RedirectConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RedirectConfig) Metadata() map[string]interface{} { +func (r *ListenerRule_RedirectConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RedirectConfig) SetMetadata(metadata map[string]interface{}) { +func (r *ListenerRule_RedirectConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RedirectConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *ListenerRule_RedirectConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RedirectConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_RedirectConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_rulecondition.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_rulecondition.go new file mode 100644 index 0000000000..668ea355d9 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_rulecondition.go @@ -0,0 +1,100 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_RuleCondition AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.RuleCondition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html +type ListenerRule_RuleCondition struct { + + // Field AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-conditions-field + Field string `json:"Field,omitempty"` + + // HostHeaderConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-hostheaderconfig + HostHeaderConfig *ListenerRule_HostHeaderConfig `json:"HostHeaderConfig,omitempty"` + + // HttpHeaderConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-httpheaderconfig + HttpHeaderConfig *ListenerRule_HttpHeaderConfig `json:"HttpHeaderConfig,omitempty"` + + // HttpRequestMethodConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-httprequestmethodconfig + HttpRequestMethodConfig *ListenerRule_HttpRequestMethodConfig `json:"HttpRequestMethodConfig,omitempty"` + + // PathPatternConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-pathpatternconfig + PathPatternConfig *ListenerRule_PathPatternConfig `json:"PathPatternConfig,omitempty"` + + // QueryStringConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-querystringconfig + QueryStringConfig *ListenerRule_QueryStringConfig `json:"QueryStringConfig,omitempty"` + + // SourceIpConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-sourceipconfig + SourceIpConfig *ListenerRule_SourceIpConfig `json:"SourceIpConfig,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-conditions-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_RuleCondition) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.RuleCondition" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_RuleCondition) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_RuleCondition) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_RuleCondition) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_RuleCondition) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_RuleCondition) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_RuleCondition) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go new file mode 100644 index 0000000000..53170a95a8 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go @@ -0,0 +1,65 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ListenerRule_SourceIpConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.SourceIpConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html +type ListenerRule_SourceIpConfig struct { + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html#cfn-elasticloadbalancingv2-listenerrule-sourceipconfig-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ListenerRule_SourceIpConfig) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::ListenerRule.SourceIpConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_SourceIpConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ListenerRule_SourceIpConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_SourceIpConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ListenerRule_SourceIpConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_SourceIpConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ListenerRule_SourceIpConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer.go similarity index 79% rename from cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer.go index cfd8cc302f..37c4b69c91 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer.go @@ -1,15 +1,17 @@ -package resources +package elasticloadbalancingv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSElasticLoadBalancingV2LoadBalancer AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::LoadBalancer) +// LoadBalancer AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::LoadBalancer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html -type AWSElasticLoadBalancingV2LoadBalancer struct { +type LoadBalancer struct { // IpAddressType AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSElasticLoadBalancingV2LoadBalancer struct { // LoadBalancerAttributes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes - LoadBalancerAttributes []AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute `json:"LoadBalancerAttributes,omitempty"` + LoadBalancerAttributes []LoadBalancer_LoadBalancerAttribute `json:"LoadBalancerAttributes,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSElasticLoadBalancingV2LoadBalancer struct { // SubnetMappings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmappings - SubnetMappings []AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping `json:"SubnetMappings,omitempty"` + SubnetMappings []LoadBalancer_SubnetMapping `json:"SubnetMappings,omitempty"` // Subnets AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSElasticLoadBalancingV2LoadBalancer struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Type AWS CloudFormation Property // Required: false @@ -67,50 +69,50 @@ type AWSElasticLoadBalancingV2LoadBalancer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2LoadBalancer) AWSCloudFormationType() string { +func (r *LoadBalancer) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::LoadBalancer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2LoadBalancer) DependsOn() []string { +func (r *LoadBalancer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2LoadBalancer) SetDependsOn(dependencies []string) { +func (r *LoadBalancer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2LoadBalancer) Metadata() map[string]interface{} { +func (r *LoadBalancer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2LoadBalancer) SetMetadata(metadata map[string]interface{}) { +func (r *LoadBalancer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2LoadBalancer) DeletionPolicy() policies.DeletionPolicy { +func (r *LoadBalancer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2LoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticLoadBalancingV2LoadBalancer) MarshalJSON() ([]byte, error) { - type Properties AWSElasticLoadBalancingV2LoadBalancer +func (r LoadBalancer) MarshalJSON() ([]byte, error) { + type Properties LoadBalancer return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +130,8 @@ func (r AWSElasticLoadBalancingV2LoadBalancer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticLoadBalancingV2LoadBalancer) UnmarshalJSON(b []byte) error { - type Properties AWSElasticLoadBalancingV2LoadBalancer +func (r *LoadBalancer) UnmarshalJSON(b []byte) error { + type Properties LoadBalancer res := &struct { Type string Properties *Properties @@ -148,7 +150,7 @@ func (r *AWSElasticLoadBalancingV2LoadBalancer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticLoadBalancingV2LoadBalancer(*res.Properties) + *r = LoadBalancer(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go new file mode 100644 index 0000000000..34538a7b6e --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go @@ -0,0 +1,70 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LoadBalancer_LoadBalancerAttribute AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::LoadBalancer.LoadBalancerAttribute) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html +type LoadBalancer_LoadBalancerAttribute struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LoadBalancer_LoadBalancerAttribute) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::LoadBalancer.LoadBalancerAttribute" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_LoadBalancerAttribute) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_LoadBalancerAttribute) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_LoadBalancerAttribute) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_LoadBalancerAttribute) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_LoadBalancerAttribute) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_LoadBalancerAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go new file mode 100644 index 0000000000..eeefd7252d --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go @@ -0,0 +1,70 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LoadBalancer_SubnetMapping AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::LoadBalancer.SubnetMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html +type LoadBalancer_SubnetMapping struct { + + // AllocationId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-allocationid + AllocationId string `json:"AllocationId,omitempty"` + + // SubnetId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-subnetid + SubnetId string `json:"SubnetId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LoadBalancer_SubnetMapping) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::LoadBalancer.SubnetMapping" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_SubnetMapping) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoadBalancer_SubnetMapping) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_SubnetMapping) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoadBalancer_SubnetMapping) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_SubnetMapping) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoadBalancer_SubnetMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup.go similarity index 84% rename from cloudformation/resources/aws-elasticloadbalancingv2-targetgroup.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup.go index 180539fae8..f6f6dbf599 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup.go @@ -1,15 +1,17 @@ -package resources +package elasticloadbalancingv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSElasticLoadBalancingV2TargetGroup AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup) +// TargetGroup AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html -type AWSElasticLoadBalancingV2TargetGroup struct { +type TargetGroup struct { // HealthCheckEnabled AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSElasticLoadBalancingV2TargetGroup struct { // Matcher AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-matcher - Matcher *AWSElasticLoadBalancingV2TargetGroup_Matcher `json:"Matcher,omitempty"` + Matcher *TargetGroup_Matcher `json:"Matcher,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -69,12 +71,12 @@ type AWSElasticLoadBalancingV2TargetGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TargetGroupAttributes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattributes - TargetGroupAttributes []AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute `json:"TargetGroupAttributes,omitempty"` + TargetGroupAttributes []TargetGroup_TargetGroupAttribute `json:"TargetGroupAttributes,omitempty"` // TargetType AWS CloudFormation Property // Required: false @@ -84,7 +86,7 @@ type AWSElasticLoadBalancingV2TargetGroup struct { // Targets AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targets - Targets []AWSElasticLoadBalancingV2TargetGroup_TargetDescription `json:"Targets,omitempty"` + Targets []TargetGroup_TargetDescription `json:"Targets,omitempty"` // UnhealthyThresholdCount AWS CloudFormation Property // Required: false @@ -107,50 +109,50 @@ type AWSElasticLoadBalancingV2TargetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2TargetGroup) AWSCloudFormationType() string { +func (r *TargetGroup) AWSCloudFormationType() string { return "AWS::ElasticLoadBalancingV2::TargetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2TargetGroup) DependsOn() []string { +func (r *TargetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2TargetGroup) SetDependsOn(dependencies []string) { +func (r *TargetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2TargetGroup) Metadata() map[string]interface{} { +func (r *TargetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2TargetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *TargetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2TargetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *TargetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2TargetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TargetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticLoadBalancingV2TargetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSElasticLoadBalancingV2TargetGroup +func (r TargetGroup) MarshalJSON() ([]byte, error) { + type Properties TargetGroup return json.Marshal(&struct { Type string Properties Properties @@ -168,8 +170,8 @@ func (r AWSElasticLoadBalancingV2TargetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticLoadBalancingV2TargetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSElasticLoadBalancingV2TargetGroup +func (r *TargetGroup) UnmarshalJSON(b []byte) error { + type Properties TargetGroup res := &struct { Type string Properties *Properties @@ -188,7 +190,7 @@ func (r *AWSElasticLoadBalancingV2TargetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticLoadBalancingV2TargetGroup(*res.Properties) + *r = TargetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_matcher.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_matcher.go new file mode 100644 index 0000000000..28598b8f77 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_matcher.go @@ -0,0 +1,65 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TargetGroup_Matcher AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.Matcher) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html +type TargetGroup_Matcher struct { + + // HttpCode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html#cfn-elasticloadbalancingv2-targetgroup-matcher-httpcode + HttpCode string `json:"HttpCode,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TargetGroup_Matcher) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::TargetGroup.Matcher" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TargetGroup_Matcher) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TargetGroup_Matcher) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TargetGroup_Matcher) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TargetGroup_Matcher) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TargetGroup_Matcher) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TargetGroup_Matcher) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetdescription.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetdescription.go new file mode 100644 index 0000000000..256becdafe --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetdescription.go @@ -0,0 +1,75 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TargetGroup_TargetDescription AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.TargetDescription) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html +type TargetGroup_TargetDescription struct { + + // AvailabilityZone AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-availabilityzone + AvailabilityZone string `json:"AvailabilityZone,omitempty"` + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-id + Id string `json:"Id,omitempty"` + + // Port AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-port + Port int `json:"Port,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TargetGroup_TargetDescription) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::TargetGroup.TargetDescription" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TargetGroup_TargetDescription) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TargetGroup_TargetDescription) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TargetGroup_TargetDescription) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TargetGroup_TargetDescription) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TargetGroup_TargetDescription) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TargetGroup_TargetDescription) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go new file mode 100644 index 0000000000..7505cd25d1 --- /dev/null +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go @@ -0,0 +1,70 @@ +package elasticloadbalancingv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TargetGroup_TargetGroupAttribute AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.TargetGroupAttribute) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html +type TargetGroup_TargetGroupAttribute struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattribute-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattribute-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TargetGroup_TargetGroupAttribute) AWSCloudFormationType() string { + return "AWS::ElasticLoadBalancingV2::TargetGroup.TargetGroupAttribute" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TargetGroup_TargetGroupAttribute) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TargetGroup_TargetGroupAttribute) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TargetGroup_TargetGroupAttribute) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TargetGroup_TargetGroupAttribute) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TargetGroup_TargetGroupAttribute) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TargetGroup_TargetGroupAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-elasticsearch-domain.go b/cloudformation/elasticsearch/aws-elasticsearch-domain.go similarity index 78% rename from cloudformation/resources/aws-elasticsearch-domain.go rename to cloudformation/elasticsearch/aws-elasticsearch-domain.go index dac699325d..2cff787580 100644 --- a/cloudformation/resources/aws-elasticsearch-domain.go +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain.go @@ -1,15 +1,17 @@ -package resources +package elasticsearch import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSElasticsearchDomain AWS CloudFormation Resource (AWS::Elasticsearch::Domain) +// Domain AWS CloudFormation Resource (AWS::Elasticsearch::Domain) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html -type AWSElasticsearchDomain struct { +type Domain struct { // AccessPolicies AWS CloudFormation Property // Required: false @@ -29,12 +31,12 @@ type AWSElasticsearchDomain struct { // EBSOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-ebsoptions - EBSOptions *AWSElasticsearchDomain_EBSOptions `json:"EBSOptions,omitempty"` + EBSOptions *Domain_EBSOptions `json:"EBSOptions,omitempty"` // ElasticsearchClusterConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchclusterconfig - ElasticsearchClusterConfig *AWSElasticsearchDomain_ElasticsearchClusterConfig `json:"ElasticsearchClusterConfig,omitempty"` + ElasticsearchClusterConfig *Domain_ElasticsearchClusterConfig `json:"ElasticsearchClusterConfig,omitempty"` // ElasticsearchVersion AWS CloudFormation Property // Required: false @@ -44,27 +46,27 @@ type AWSElasticsearchDomain struct { // EncryptionAtRestOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-encryptionatrestoptions - EncryptionAtRestOptions *AWSElasticsearchDomain_EncryptionAtRestOptions `json:"EncryptionAtRestOptions,omitempty"` + EncryptionAtRestOptions *Domain_EncryptionAtRestOptions `json:"EncryptionAtRestOptions,omitempty"` // NodeToNodeEncryptionOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions - NodeToNodeEncryptionOptions *AWSElasticsearchDomain_NodeToNodeEncryptionOptions `json:"NodeToNodeEncryptionOptions,omitempty"` + NodeToNodeEncryptionOptions *Domain_NodeToNodeEncryptionOptions `json:"NodeToNodeEncryptionOptions,omitempty"` // SnapshotOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-snapshotoptions - SnapshotOptions *AWSElasticsearchDomain_SnapshotOptions `json:"SnapshotOptions,omitempty"` + SnapshotOptions *Domain_SnapshotOptions `json:"SnapshotOptions,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VPCOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-vpcoptions - VPCOptions *AWSElasticsearchDomain_VPCOptions `json:"VPCOptions,omitempty"` + VPCOptions *Domain_VPCOptions `json:"VPCOptions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -77,50 +79,50 @@ type AWSElasticsearchDomain struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain) AWSCloudFormationType() string { +func (r *Domain) AWSCloudFormationType() string { return "AWS::Elasticsearch::Domain" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain) DependsOn() []string { +func (r *Domain) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain) SetDependsOn(dependencies []string) { +func (r *Domain) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain) Metadata() map[string]interface{} { +func (r *Domain) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain) SetMetadata(metadata map[string]interface{}) { +func (r *Domain) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain) DeletionPolicy() policies.DeletionPolicy { +func (r *Domain) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticsearchDomain) MarshalJSON() ([]byte, error) { - type Properties AWSElasticsearchDomain +func (r Domain) MarshalJSON() ([]byte, error) { + type Properties Domain return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +140,8 @@ func (r AWSElasticsearchDomain) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticsearchDomain) UnmarshalJSON(b []byte) error { - type Properties AWSElasticsearchDomain +func (r *Domain) UnmarshalJSON(b []byte) error { + type Properties Domain res := &struct { Type string Properties *Properties @@ -158,7 +160,7 @@ func (r *AWSElasticsearchDomain) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticsearchDomain(*res.Properties) + *r = Domain(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticsearch-domain_ebsoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_ebsoptions.go similarity index 77% rename from cloudformation/resources/aws-elasticsearch-domain_ebsoptions.go rename to cloudformation/elasticsearch/aws-elasticsearch-domain_ebsoptions.go index 072f61062a..374747ffcb 100644 --- a/cloudformation/resources/aws-elasticsearch-domain_ebsoptions.go +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_ebsoptions.go @@ -1,10 +1,12 @@ -package resources +package elasticsearch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticsearchDomain_EBSOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.EBSOptions) +// Domain_EBSOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.EBSOptions) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html -type AWSElasticsearchDomain_EBSOptions struct { +type Domain_EBSOptions struct { // EBSEnabled AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSElasticsearchDomain_EBSOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_EBSOptions) AWSCloudFormationType() string { +func (r *Domain_EBSOptions) AWSCloudFormationType() string { return "AWS::Elasticsearch::Domain.EBSOptions" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_EBSOptions) DependsOn() []string { +func (r *Domain_EBSOptions) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_EBSOptions) SetDependsOn(dependencies []string) { +func (r *Domain_EBSOptions) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_EBSOptions) Metadata() map[string]interface{} { +func (r *Domain_EBSOptions) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_EBSOptions) SetMetadata(metadata map[string]interface{}) { +func (r *Domain_EBSOptions) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_EBSOptions) DeletionPolicy() policies.DeletionPolicy { +func (r *Domain_EBSOptions) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_EBSOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain_EBSOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticsearch-domain_elasticsearchclusterconfig.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_elasticsearchclusterconfig.go similarity index 79% rename from cloudformation/resources/aws-elasticsearch-domain_elasticsearchclusterconfig.go rename to cloudformation/elasticsearch/aws-elasticsearch-domain_elasticsearchclusterconfig.go index 11f9f67c20..9f28fbbcc1 100644 --- a/cloudformation/resources/aws-elasticsearch-domain_elasticsearchclusterconfig.go +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_elasticsearchclusterconfig.go @@ -1,10 +1,12 @@ -package resources +package elasticsearch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticsearchDomain_ElasticsearchClusterConfig AWS CloudFormation Resource (AWS::Elasticsearch::Domain.ElasticsearchClusterConfig) +// Domain_ElasticsearchClusterConfig AWS CloudFormation Resource (AWS::Elasticsearch::Domain.ElasticsearchClusterConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html -type AWSElasticsearchDomain_ElasticsearchClusterConfig struct { +type Domain_ElasticsearchClusterConfig struct { // DedicatedMasterCount AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSElasticsearchDomain_ElasticsearchClusterConfig struct { // ZoneAwarenessConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-zoneawarenessconfig - ZoneAwarenessConfig *AWSElasticsearchDomain_ZoneAwarenessConfig `json:"ZoneAwarenessConfig,omitempty"` + ZoneAwarenessConfig *Domain_ZoneAwarenessConfig `json:"ZoneAwarenessConfig,omitempty"` // ZoneAwarenessEnabled AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSElasticsearchDomain_ElasticsearchClusterConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_ElasticsearchClusterConfig) AWSCloudFormationType() string { +func (r *Domain_ElasticsearchClusterConfig) AWSCloudFormationType() string { return "AWS::Elasticsearch::Domain.ElasticsearchClusterConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_ElasticsearchClusterConfig) DependsOn() []string { +func (r *Domain_ElasticsearchClusterConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_ElasticsearchClusterConfig) SetDependsOn(dependencies []string) { +func (r *Domain_ElasticsearchClusterConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_ElasticsearchClusterConfig) Metadata() map[string]interface{} { +func (r *Domain_ElasticsearchClusterConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_ElasticsearchClusterConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Domain_ElasticsearchClusterConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_ElasticsearchClusterConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Domain_ElasticsearchClusterConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_ElasticsearchClusterConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain_ElasticsearchClusterConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/elasticsearch/aws-elasticsearch-domain_encryptionatrestoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_encryptionatrestoptions.go new file mode 100644 index 0000000000..ae002a21a7 --- /dev/null +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_encryptionatrestoptions.go @@ -0,0 +1,70 @@ +package elasticsearch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Domain_EncryptionAtRestOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.EncryptionAtRestOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html +type Domain_EncryptionAtRestOptions struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-enabled + Enabled bool `json:"Enabled,omitempty"` + + // KmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-kmskeyid + KmsKeyId string `json:"KmsKeyId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Domain_EncryptionAtRestOptions) AWSCloudFormationType() string { + return "AWS::Elasticsearch::Domain.EncryptionAtRestOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_EncryptionAtRestOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_EncryptionAtRestOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_EncryptionAtRestOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_EncryptionAtRestOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_EncryptionAtRestOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_EncryptionAtRestOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticsearch/aws-elasticsearch-domain_nodetonodeencryptionoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_nodetonodeencryptionoptions.go new file mode 100644 index 0000000000..8c677a6fb7 --- /dev/null +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_nodetonodeencryptionoptions.go @@ -0,0 +1,65 @@ +package elasticsearch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Domain_NodeToNodeEncryptionOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.NodeToNodeEncryptionOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html +type Domain_NodeToNodeEncryptionOptions struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions-enabled + Enabled bool `json:"Enabled,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Domain_NodeToNodeEncryptionOptions) AWSCloudFormationType() string { + return "AWS::Elasticsearch::Domain.NodeToNodeEncryptionOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_NodeToNodeEncryptionOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_NodeToNodeEncryptionOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_NodeToNodeEncryptionOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_NodeToNodeEncryptionOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_NodeToNodeEncryptionOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_NodeToNodeEncryptionOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticsearch/aws-elasticsearch-domain_snapshotoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_snapshotoptions.go new file mode 100644 index 0000000000..ef9cf0a37b --- /dev/null +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_snapshotoptions.go @@ -0,0 +1,65 @@ +package elasticsearch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Domain_SnapshotOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.SnapshotOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html +type Domain_SnapshotOptions struct { + + // AutomatedSnapshotStartHour AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html#cfn-elasticsearch-domain-snapshotoptions-automatedsnapshotstarthour + AutomatedSnapshotStartHour int `json:"AutomatedSnapshotStartHour,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Domain_SnapshotOptions) AWSCloudFormationType() string { + return "AWS::Elasticsearch::Domain.SnapshotOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_SnapshotOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_SnapshotOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_SnapshotOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_SnapshotOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_SnapshotOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_SnapshotOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticsearch/aws-elasticsearch-domain_vpcoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_vpcoptions.go new file mode 100644 index 0000000000..47479a9332 --- /dev/null +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_vpcoptions.go @@ -0,0 +1,70 @@ +package elasticsearch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Domain_VPCOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.VPCOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html +type Domain_VPCOptions struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` + + // SubnetIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-subnetids + SubnetIds []string `json:"SubnetIds,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Domain_VPCOptions) AWSCloudFormationType() string { + return "AWS::Elasticsearch::Domain.VPCOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_VPCOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_VPCOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_VPCOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_VPCOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_VPCOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_VPCOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/elasticsearch/aws-elasticsearch-domain_zoneawarenessconfig.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_zoneawarenessconfig.go new file mode 100644 index 0000000000..7329c08ce2 --- /dev/null +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_zoneawarenessconfig.go @@ -0,0 +1,65 @@ +package elasticsearch + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Domain_ZoneAwarenessConfig AWS CloudFormation Resource (AWS::Elasticsearch::Domain.ZoneAwarenessConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html +type Domain_ZoneAwarenessConfig struct { + + // AvailabilityZoneCount AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html#cfn-elasticsearch-domain-zoneawarenessconfig-availabilityzonecount + AvailabilityZoneCount int `json:"AvailabilityZoneCount,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Domain_ZoneAwarenessConfig) AWSCloudFormationType() string { + return "AWS::Elasticsearch::Domain.ZoneAwarenessConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_ZoneAwarenessConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Domain_ZoneAwarenessConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_ZoneAwarenessConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Domain_ZoneAwarenessConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_ZoneAwarenessConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Domain_ZoneAwarenessConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-cluster.go b/cloudformation/emr/aws-emr-cluster.go similarity index 86% rename from cloudformation/resources/aws-emr-cluster.go rename to cloudformation/emr/aws-emr-cluster.go index ead365e044..e9a58792aa 100644 --- a/cloudformation/resources/aws-emr-cluster.go +++ b/cloudformation/emr/aws-emr-cluster.go @@ -1,15 +1,17 @@ -package resources +package emr import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSEMRCluster AWS CloudFormation Resource (AWS::EMR::Cluster) +// Cluster AWS CloudFormation Resource (AWS::EMR::Cluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html -type AWSEMRCluster struct { +type Cluster struct { // AdditionalInfo AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSEMRCluster struct { // Applications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-applications - Applications []AWSEMRCluster_Application `json:"Applications,omitempty"` + Applications []Cluster_Application `json:"Applications,omitempty"` // AutoScalingRole AWS CloudFormation Property // Required: false @@ -29,12 +31,12 @@ type AWSEMRCluster struct { // BootstrapActions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-bootstrapactions - BootstrapActions []AWSEMRCluster_BootstrapActionConfig `json:"BootstrapActions,omitempty"` + BootstrapActions []Cluster_BootstrapActionConfig `json:"BootstrapActions,omitempty"` // Configurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-configurations - Configurations []AWSEMRCluster_Configuration `json:"Configurations,omitempty"` + Configurations []Cluster_Configuration `json:"Configurations,omitempty"` // CustomAmiId AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSEMRCluster struct { // Instances AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-instances - Instances *AWSEMRCluster_JobFlowInstancesConfig `json:"Instances,omitempty"` + Instances *Cluster_JobFlowInstancesConfig `json:"Instances,omitempty"` // JobFlowRole AWS CloudFormation Property // Required: true @@ -59,7 +61,7 @@ type AWSEMRCluster struct { // KerberosAttributes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-kerberosattributes - KerberosAttributes *AWSEMRCluster_KerberosAttributes `json:"KerberosAttributes,omitempty"` + KerberosAttributes *Cluster_KerberosAttributes `json:"KerberosAttributes,omitempty"` // LogUri AWS CloudFormation Property // Required: false @@ -94,12 +96,12 @@ type AWSEMRCluster struct { // Steps AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-steps - Steps []AWSEMRCluster_StepConfig `json:"Steps,omitempty"` + Steps []Cluster_StepConfig `json:"Steps,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VisibleToAllUsers AWS CloudFormation Property // Required: false @@ -117,50 +119,50 @@ type AWSEMRCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster) AWSCloudFormationType() string { +func (r *Cluster) AWSCloudFormationType() string { return "AWS::EMR::Cluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster) DependsOn() []string { +func (r *Cluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster) SetDependsOn(dependencies []string) { +func (r *Cluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster) Metadata() map[string]interface{} { +func (r *Cluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEMRCluster) MarshalJSON() ([]byte, error) { - type Properties AWSEMRCluster +func (r Cluster) MarshalJSON() ([]byte, error) { + type Properties Cluster return json.Marshal(&struct { Type string Properties Properties @@ -178,8 +180,8 @@ func (r AWSEMRCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEMRCluster) UnmarshalJSON(b []byte) error { - type Properties AWSEMRCluster +func (r *Cluster) UnmarshalJSON(b []byte) error { + type Properties Cluster res := &struct { Type string Properties *Properties @@ -198,7 +200,7 @@ func (r *AWSEMRCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEMRCluster(*res.Properties) + *r = Cluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-emr-cluster_application.go b/cloudformation/emr/aws-emr-cluster_application.go similarity index 79% rename from cloudformation/resources/aws-emr-cluster_application.go rename to cloudformation/emr/aws-emr-cluster_application.go index ab3639f0ed..d1c54ea89d 100644 --- a/cloudformation/resources/aws-emr-cluster_application.go +++ b/cloudformation/emr/aws-emr-cluster_application.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_Application AWS CloudFormation Resource (AWS::EMR::Cluster.Application) +// Cluster_Application AWS CloudFormation Resource (AWS::EMR::Cluster.Application) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html -type AWSEMRCluster_Application struct { +type Cluster_Application struct { // AdditionalInfo AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSEMRCluster_Application struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_Application) AWSCloudFormationType() string { +func (r *Cluster_Application) AWSCloudFormationType() string { return "AWS::EMR::Cluster.Application" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_Application) DependsOn() []string { +func (r *Cluster_Application) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_Application) SetDependsOn(dependencies []string) { +func (r *Cluster_Application) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_Application) Metadata() map[string]interface{} { +func (r *Cluster_Application) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_Application) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_Application) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_Application) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_Application) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_Application) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_Application) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/emr/aws-emr-cluster_autoscalingpolicy.go b/cloudformation/emr/aws-emr-cluster_autoscalingpolicy.go new file mode 100644 index 0000000000..31d75efd29 --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_autoscalingpolicy.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_AutoScalingPolicy AWS CloudFormation Resource (AWS::EMR::Cluster.AutoScalingPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html +type Cluster_AutoScalingPolicy struct { + + // Constraints AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-constraints + Constraints *Cluster_ScalingConstraints `json:"Constraints,omitempty"` + + // Rules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-rules + Rules []Cluster_ScalingRule `json:"Rules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_AutoScalingPolicy) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.AutoScalingPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_AutoScalingPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_AutoScalingPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_AutoScalingPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_AutoScalingPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_AutoScalingPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_AutoScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-cluster_bootstrapactionconfig.go b/cloudformation/emr/aws-emr-cluster_bootstrapactionconfig.go new file mode 100644 index 0000000000..0656c103f7 --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_bootstrapactionconfig.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_BootstrapActionConfig AWS CloudFormation Resource (AWS::EMR::Cluster.BootstrapActionConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html +type Cluster_BootstrapActionConfig struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-name + Name string `json:"Name,omitempty"` + + // ScriptBootstrapAction AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-scriptbootstrapaction + ScriptBootstrapAction *Cluster_ScriptBootstrapActionConfig `json:"ScriptBootstrapAction,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_BootstrapActionConfig) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.BootstrapActionConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_BootstrapActionConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_BootstrapActionConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_BootstrapActionConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_BootstrapActionConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_BootstrapActionConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_BootstrapActionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-cluster_cloudwatchalarmdefinition.go b/cloudformation/emr/aws-emr-cluster_cloudwatchalarmdefinition.go similarity index 82% rename from cloudformation/resources/aws-emr-cluster_cloudwatchalarmdefinition.go rename to cloudformation/emr/aws-emr-cluster_cloudwatchalarmdefinition.go index c94dba038e..e0669f8a8c 100644 --- a/cloudformation/resources/aws-emr-cluster_cloudwatchalarmdefinition.go +++ b/cloudformation/emr/aws-emr-cluster_cloudwatchalarmdefinition.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_CloudWatchAlarmDefinition AWS CloudFormation Resource (AWS::EMR::Cluster.CloudWatchAlarmDefinition) +// Cluster_CloudWatchAlarmDefinition AWS CloudFormation Resource (AWS::EMR::Cluster.CloudWatchAlarmDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html -type AWSEMRCluster_CloudWatchAlarmDefinition struct { +type Cluster_CloudWatchAlarmDefinition struct { // ComparisonOperator AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSEMRCluster_CloudWatchAlarmDefinition struct { // Dimensions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-dimensions - Dimensions []AWSEMRCluster_MetricDimension `json:"Dimensions,omitempty"` + Dimensions []Cluster_MetricDimension `json:"Dimensions,omitempty"` // EvaluationPeriods AWS CloudFormation Property // Required: false @@ -62,42 +64,42 @@ type AWSEMRCluster_CloudWatchAlarmDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_CloudWatchAlarmDefinition) AWSCloudFormationType() string { +func (r *Cluster_CloudWatchAlarmDefinition) AWSCloudFormationType() string { return "AWS::EMR::Cluster.CloudWatchAlarmDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_CloudWatchAlarmDefinition) DependsOn() []string { +func (r *Cluster_CloudWatchAlarmDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_CloudWatchAlarmDefinition) SetDependsOn(dependencies []string) { +func (r *Cluster_CloudWatchAlarmDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_CloudWatchAlarmDefinition) Metadata() map[string]interface{} { +func (r *Cluster_CloudWatchAlarmDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_CloudWatchAlarmDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_CloudWatchAlarmDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_CloudWatchAlarmDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_CloudWatchAlarmDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_CloudWatchAlarmDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_CloudWatchAlarmDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_configuration.go b/cloudformation/emr/aws-emr-cluster_configuration.go similarity index 76% rename from cloudformation/resources/aws-emr-cluster_configuration.go rename to cloudformation/emr/aws-emr-cluster_configuration.go index bb3ff75890..190e178f6f 100644 --- a/cloudformation/resources/aws-emr-cluster_configuration.go +++ b/cloudformation/emr/aws-emr-cluster_configuration.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_Configuration AWS CloudFormation Resource (AWS::EMR::Cluster.Configuration) +// Cluster_Configuration AWS CloudFormation Resource (AWS::EMR::Cluster.Configuration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html -type AWSEMRCluster_Configuration struct { +type Cluster_Configuration struct { // Classification AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSEMRCluster_Configuration struct { // Configurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-configurations - Configurations []AWSEMRCluster_Configuration `json:"Configurations,omitempty"` + Configurations []Cluster_Configuration `json:"Configurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSEMRCluster_Configuration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_Configuration) AWSCloudFormationType() string { +func (r *Cluster_Configuration) AWSCloudFormationType() string { return "AWS::EMR::Cluster.Configuration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_Configuration) DependsOn() []string { +func (r *Cluster_Configuration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_Configuration) SetDependsOn(dependencies []string) { +func (r *Cluster_Configuration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_Configuration) Metadata() map[string]interface{} { +func (r *Cluster_Configuration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_Configuration) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_Configuration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_Configuration) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_Configuration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/emr/aws-emr-cluster_ebsblockdeviceconfig.go b/cloudformation/emr/aws-emr-cluster_ebsblockdeviceconfig.go new file mode 100644 index 0000000000..c0be50764d --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_ebsblockdeviceconfig.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::Cluster.EbsBlockDeviceConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html +type Cluster_EbsBlockDeviceConfig struct { + + // VolumeSpecification AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumespecification + VolumeSpecification *Cluster_VolumeSpecification `json:"VolumeSpecification,omitempty"` + + // VolumesPerInstance AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumesperinstance + VolumesPerInstance int `json:"VolumesPerInstance,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_EbsBlockDeviceConfig) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.EbsBlockDeviceConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EbsBlockDeviceConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EbsBlockDeviceConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-cluster_ebsconfiguration.go b/cloudformation/emr/aws-emr-cluster_ebsconfiguration.go new file mode 100644 index 0000000000..10d42966ec --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_ebsconfiguration.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::Cluster.EbsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html +type Cluster_EbsConfiguration struct { + + // EbsBlockDeviceConfigs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsblockdeviceconfigs + EbsBlockDeviceConfigs []Cluster_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` + + // EbsOptimized AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsoptimized + EbsOptimized bool `json:"EbsOptimized,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_EbsConfiguration) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.EbsConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EbsConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EbsConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EbsConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-cluster_hadoopjarstepconfig.go b/cloudformation/emr/aws-emr-cluster_hadoopjarstepconfig.go similarity index 76% rename from cloudformation/resources/aws-emr-cluster_hadoopjarstepconfig.go rename to cloudformation/emr/aws-emr-cluster_hadoopjarstepconfig.go index e9865e12ae..33bd2af785 100644 --- a/cloudformation/resources/aws-emr-cluster_hadoopjarstepconfig.go +++ b/cloudformation/emr/aws-emr-cluster_hadoopjarstepconfig.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_HadoopJarStepConfig AWS CloudFormation Resource (AWS::EMR::Cluster.HadoopJarStepConfig) +// Cluster_HadoopJarStepConfig AWS CloudFormation Resource (AWS::EMR::Cluster.HadoopJarStepConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html -type AWSEMRCluster_HadoopJarStepConfig struct { +type Cluster_HadoopJarStepConfig struct { // Args AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSEMRCluster_HadoopJarStepConfig struct { // StepProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-stepproperties - StepProperties []AWSEMRCluster_KeyValue `json:"StepProperties,omitempty"` + StepProperties []Cluster_KeyValue `json:"StepProperties,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSEMRCluster_HadoopJarStepConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_HadoopJarStepConfig) AWSCloudFormationType() string { +func (r *Cluster_HadoopJarStepConfig) AWSCloudFormationType() string { return "AWS::EMR::Cluster.HadoopJarStepConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_HadoopJarStepConfig) DependsOn() []string { +func (r *Cluster_HadoopJarStepConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_HadoopJarStepConfig) SetDependsOn(dependencies []string) { +func (r *Cluster_HadoopJarStepConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_HadoopJarStepConfig) Metadata() map[string]interface{} { +func (r *Cluster_HadoopJarStepConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_HadoopJarStepConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_HadoopJarStepConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_HadoopJarStepConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_HadoopJarStepConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_HadoopJarStepConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_HadoopJarStepConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_instancefleetconfig.go b/cloudformation/emr/aws-emr-cluster_instancefleetconfig.go similarity index 76% rename from cloudformation/resources/aws-emr-cluster_instancefleetconfig.go rename to cloudformation/emr/aws-emr-cluster_instancefleetconfig.go index 828f22ce59..a1bb4b9e46 100644 --- a/cloudformation/resources/aws-emr-cluster_instancefleetconfig.go +++ b/cloudformation/emr/aws-emr-cluster_instancefleetconfig.go @@ -1,20 +1,22 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_InstanceFleetConfig AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceFleetConfig) +// Cluster_InstanceFleetConfig AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceFleetConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html -type AWSEMRCluster_InstanceFleetConfig struct { +type Cluster_InstanceFleetConfig struct { // InstanceTypeConfigs AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-instancetypeconfigs - InstanceTypeConfigs []AWSEMRCluster_InstanceTypeConfig `json:"InstanceTypeConfigs,omitempty"` + InstanceTypeConfigs []Cluster_InstanceTypeConfig `json:"InstanceTypeConfigs,omitempty"` // LaunchSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-launchspecifications - LaunchSpecifications *AWSEMRCluster_InstanceFleetProvisioningSpecifications `json:"LaunchSpecifications,omitempty"` + LaunchSpecifications *Cluster_InstanceFleetProvisioningSpecifications `json:"LaunchSpecifications,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSEMRCluster_InstanceFleetConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_InstanceFleetConfig) AWSCloudFormationType() string { +func (r *Cluster_InstanceFleetConfig) AWSCloudFormationType() string { return "AWS::EMR::Cluster.InstanceFleetConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_InstanceFleetConfig) DependsOn() []string { +func (r *Cluster_InstanceFleetConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_InstanceFleetConfig) SetDependsOn(dependencies []string) { +func (r *Cluster_InstanceFleetConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_InstanceFleetConfig) Metadata() map[string]interface{} { +func (r *Cluster_InstanceFleetConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_InstanceFleetConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_InstanceFleetConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_InstanceFleetConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_InstanceFleetConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_InstanceFleetConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_InstanceFleetConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/emr/aws-emr-cluster_instancefleetprovisioningspecifications.go b/cloudformation/emr/aws-emr-cluster_instancefleetprovisioningspecifications.go new file mode 100644 index 0000000000..11efc26bdc --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_instancefleetprovisioningspecifications.go @@ -0,0 +1,65 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_InstanceFleetProvisioningSpecifications AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceFleetProvisioningSpecifications) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html +type Cluster_InstanceFleetProvisioningSpecifications struct { + + // SpotSpecification AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-cluster-instancefleetprovisioningspecifications-spotspecification + SpotSpecification *Cluster_SpotProvisioningSpecification `json:"SpotSpecification,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_InstanceFleetProvisioningSpecifications) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.InstanceFleetProvisioningSpecifications" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_InstanceFleetProvisioningSpecifications) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_InstanceFleetProvisioningSpecifications) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_InstanceFleetProvisioningSpecifications) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_InstanceFleetProvisioningSpecifications) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_InstanceFleetProvisioningSpecifications) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_InstanceFleetProvisioningSpecifications) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-cluster_instancegroupconfig.go b/cloudformation/emr/aws-emr-cluster_instancegroupconfig.go similarity index 79% rename from cloudformation/resources/aws-emr-cluster_instancegroupconfig.go rename to cloudformation/emr/aws-emr-cluster_instancegroupconfig.go index 1b5cbf083a..cff4d7c2e1 100644 --- a/cloudformation/resources/aws-emr-cluster_instancegroupconfig.go +++ b/cloudformation/emr/aws-emr-cluster_instancegroupconfig.go @@ -1,15 +1,17 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_InstanceGroupConfig AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceGroupConfig) +// Cluster_InstanceGroupConfig AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceGroupConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html -type AWSEMRCluster_InstanceGroupConfig struct { +type Cluster_InstanceGroupConfig struct { // AutoScalingPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-autoscalingpolicy - AutoScalingPolicy *AWSEMRCluster_AutoScalingPolicy `json:"AutoScalingPolicy,omitempty"` + AutoScalingPolicy *Cluster_AutoScalingPolicy `json:"AutoScalingPolicy,omitempty"` // BidPrice AWS CloudFormation Property // Required: false @@ -19,12 +21,12 @@ type AWSEMRCluster_InstanceGroupConfig struct { // Configurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-configurations - Configurations []AWSEMRCluster_Configuration `json:"Configurations,omitempty"` + Configurations []Cluster_Configuration `json:"Configurations,omitempty"` // EbsConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-ebsconfiguration - EbsConfiguration *AWSEMRCluster_EbsConfiguration `json:"EbsConfiguration,omitempty"` + EbsConfiguration *Cluster_EbsConfiguration `json:"EbsConfiguration,omitempty"` // InstanceCount AWS CloudFormation Property // Required: true @@ -57,42 +59,42 @@ type AWSEMRCluster_InstanceGroupConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_InstanceGroupConfig) AWSCloudFormationType() string { +func (r *Cluster_InstanceGroupConfig) AWSCloudFormationType() string { return "AWS::EMR::Cluster.InstanceGroupConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_InstanceGroupConfig) DependsOn() []string { +func (r *Cluster_InstanceGroupConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_InstanceGroupConfig) SetDependsOn(dependencies []string) { +func (r *Cluster_InstanceGroupConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_InstanceGroupConfig) Metadata() map[string]interface{} { +func (r *Cluster_InstanceGroupConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_InstanceGroupConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_InstanceGroupConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_InstanceGroupConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_InstanceGroupConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_InstanceGroupConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_InstanceGroupConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_instancetypeconfig.go b/cloudformation/emr/aws-emr-cluster_instancetypeconfig.go similarity index 79% rename from cloudformation/resources/aws-emr-cluster_instancetypeconfig.go rename to cloudformation/emr/aws-emr-cluster_instancetypeconfig.go index 8f6a089927..0fe82be6f2 100644 --- a/cloudformation/resources/aws-emr-cluster_instancetypeconfig.go +++ b/cloudformation/emr/aws-emr-cluster_instancetypeconfig.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_InstanceTypeConfig AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceTypeConfig) +// Cluster_InstanceTypeConfig AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceTypeConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html -type AWSEMRCluster_InstanceTypeConfig struct { +type Cluster_InstanceTypeConfig struct { // BidPrice AWS CloudFormation Property // Required: false @@ -19,12 +21,12 @@ type AWSEMRCluster_InstanceTypeConfig struct { // Configurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-configurations - Configurations []AWSEMRCluster_Configuration `json:"Configurations,omitempty"` + Configurations []Cluster_Configuration `json:"Configurations,omitempty"` // EbsConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-ebsconfiguration - EbsConfiguration *AWSEMRCluster_EbsConfiguration `json:"EbsConfiguration,omitempty"` + EbsConfiguration *Cluster_EbsConfiguration `json:"EbsConfiguration,omitempty"` // InstanceType AWS CloudFormation Property // Required: true @@ -47,42 +49,42 @@ type AWSEMRCluster_InstanceTypeConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_InstanceTypeConfig) AWSCloudFormationType() string { +func (r *Cluster_InstanceTypeConfig) AWSCloudFormationType() string { return "AWS::EMR::Cluster.InstanceTypeConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_InstanceTypeConfig) DependsOn() []string { +func (r *Cluster_InstanceTypeConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_InstanceTypeConfig) SetDependsOn(dependencies []string) { +func (r *Cluster_InstanceTypeConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_InstanceTypeConfig) Metadata() map[string]interface{} { +func (r *Cluster_InstanceTypeConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_InstanceTypeConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_InstanceTypeConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_InstanceTypeConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_InstanceTypeConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_InstanceTypeConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_InstanceTypeConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_jobflowinstancesconfig.go b/cloudformation/emr/aws-emr-cluster_jobflowinstancesconfig.go similarity index 84% rename from cloudformation/resources/aws-emr-cluster_jobflowinstancesconfig.go rename to cloudformation/emr/aws-emr-cluster_jobflowinstancesconfig.go index 6cae0c21de..9fc8def9e0 100644 --- a/cloudformation/resources/aws-emr-cluster_jobflowinstancesconfig.go +++ b/cloudformation/emr/aws-emr-cluster_jobflowinstancesconfig.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_JobFlowInstancesConfig AWS CloudFormation Resource (AWS::EMR::Cluster.JobFlowInstancesConfig) +// Cluster_JobFlowInstancesConfig AWS CloudFormation Resource (AWS::EMR::Cluster.JobFlowInstancesConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html -type AWSEMRCluster_JobFlowInstancesConfig struct { +type Cluster_JobFlowInstancesConfig struct { // AdditionalMasterSecurityGroups AWS CloudFormation Property // Required: false @@ -19,12 +21,12 @@ type AWSEMRCluster_JobFlowInstancesConfig struct { // CoreInstanceFleet AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-coreinstancefleet - CoreInstanceFleet *AWSEMRCluster_InstanceFleetConfig `json:"CoreInstanceFleet,omitempty"` + CoreInstanceFleet *Cluster_InstanceFleetConfig `json:"CoreInstanceFleet,omitempty"` // CoreInstanceGroup AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-coreinstancegroup - CoreInstanceGroup *AWSEMRCluster_InstanceGroupConfig `json:"CoreInstanceGroup,omitempty"` + CoreInstanceGroup *Cluster_InstanceGroupConfig `json:"CoreInstanceGroup,omitempty"` // Ec2KeyName AWS CloudFormation Property // Required: false @@ -64,17 +66,17 @@ type AWSEMRCluster_JobFlowInstancesConfig struct { // MasterInstanceFleet AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-masterinstancefleet - MasterInstanceFleet *AWSEMRCluster_InstanceFleetConfig `json:"MasterInstanceFleet,omitempty"` + MasterInstanceFleet *Cluster_InstanceFleetConfig `json:"MasterInstanceFleet,omitempty"` // MasterInstanceGroup AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-masterinstancegroup - MasterInstanceGroup *AWSEMRCluster_InstanceGroupConfig `json:"MasterInstanceGroup,omitempty"` + MasterInstanceGroup *Cluster_InstanceGroupConfig `json:"MasterInstanceGroup,omitempty"` // Placement AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-placement - Placement *AWSEMRCluster_PlacementType `json:"Placement,omitempty"` + Placement *Cluster_PlacementType `json:"Placement,omitempty"` // ServiceAccessSecurityGroup AWS CloudFormation Property // Required: false @@ -97,42 +99,42 @@ type AWSEMRCluster_JobFlowInstancesConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_JobFlowInstancesConfig) AWSCloudFormationType() string { +func (r *Cluster_JobFlowInstancesConfig) AWSCloudFormationType() string { return "AWS::EMR::Cluster.JobFlowInstancesConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_JobFlowInstancesConfig) DependsOn() []string { +func (r *Cluster_JobFlowInstancesConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_JobFlowInstancesConfig) SetDependsOn(dependencies []string) { +func (r *Cluster_JobFlowInstancesConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_JobFlowInstancesConfig) Metadata() map[string]interface{} { +func (r *Cluster_JobFlowInstancesConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_JobFlowInstancesConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_JobFlowInstancesConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_JobFlowInstancesConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_JobFlowInstancesConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_JobFlowInstancesConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_JobFlowInstancesConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_kerberosattributes.go b/cloudformation/emr/aws-emr-cluster_kerberosattributes.go similarity index 81% rename from cloudformation/resources/aws-emr-cluster_kerberosattributes.go rename to cloudformation/emr/aws-emr-cluster_kerberosattributes.go index 8ce55f1bda..a18e7e9845 100644 --- a/cloudformation/resources/aws-emr-cluster_kerberosattributes.go +++ b/cloudformation/emr/aws-emr-cluster_kerberosattributes.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_KerberosAttributes AWS CloudFormation Resource (AWS::EMR::Cluster.KerberosAttributes) +// Cluster_KerberosAttributes AWS CloudFormation Resource (AWS::EMR::Cluster.KerberosAttributes) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html -type AWSEMRCluster_KerberosAttributes struct { +type Cluster_KerberosAttributes struct { // ADDomainJoinPassword AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSEMRCluster_KerberosAttributes struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_KerberosAttributes) AWSCloudFormationType() string { +func (r *Cluster_KerberosAttributes) AWSCloudFormationType() string { return "AWS::EMR::Cluster.KerberosAttributes" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_KerberosAttributes) DependsOn() []string { +func (r *Cluster_KerberosAttributes) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_KerberosAttributes) SetDependsOn(dependencies []string) { +func (r *Cluster_KerberosAttributes) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_KerberosAttributes) Metadata() map[string]interface{} { +func (r *Cluster_KerberosAttributes) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_KerberosAttributes) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_KerberosAttributes) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_KerberosAttributes) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_KerberosAttributes) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_KerberosAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_KerberosAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_keyvalue.go b/cloudformation/emr/aws-emr-cluster_keyvalue.go similarity index 76% rename from cloudformation/resources/aws-emr-cluster_keyvalue.go rename to cloudformation/emr/aws-emr-cluster_keyvalue.go index b97d458cde..ab24761b58 100644 --- a/cloudformation/resources/aws-emr-cluster_keyvalue.go +++ b/cloudformation/emr/aws-emr-cluster_keyvalue.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_KeyValue AWS CloudFormation Resource (AWS::EMR::Cluster.KeyValue) +// Cluster_KeyValue AWS CloudFormation Resource (AWS::EMR::Cluster.KeyValue) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html -type AWSEMRCluster_KeyValue struct { +type Cluster_KeyValue struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRCluster_KeyValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_KeyValue) AWSCloudFormationType() string { +func (r *Cluster_KeyValue) AWSCloudFormationType() string { return "AWS::EMR::Cluster.KeyValue" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_KeyValue) DependsOn() []string { +func (r *Cluster_KeyValue) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_KeyValue) SetDependsOn(dependencies []string) { +func (r *Cluster_KeyValue) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_KeyValue) Metadata() map[string]interface{} { +func (r *Cluster_KeyValue) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_KeyValue) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_KeyValue) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_KeyValue) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_KeyValue) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_KeyValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_KeyValue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_metricdimension.go b/cloudformation/emr/aws-emr-cluster_metricdimension.go similarity index 75% rename from cloudformation/resources/aws-emr-cluster_metricdimension.go rename to cloudformation/emr/aws-emr-cluster_metricdimension.go index b700a43c4a..ba467d3dbe 100644 --- a/cloudformation/resources/aws-emr-cluster_metricdimension.go +++ b/cloudformation/emr/aws-emr-cluster_metricdimension.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_MetricDimension AWS CloudFormation Resource (AWS::EMR::Cluster.MetricDimension) +// Cluster_MetricDimension AWS CloudFormation Resource (AWS::EMR::Cluster.MetricDimension) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html -type AWSEMRCluster_MetricDimension struct { +type Cluster_MetricDimension struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEMRCluster_MetricDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_MetricDimension) AWSCloudFormationType() string { +func (r *Cluster_MetricDimension) AWSCloudFormationType() string { return "AWS::EMR::Cluster.MetricDimension" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_MetricDimension) DependsOn() []string { +func (r *Cluster_MetricDimension) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_MetricDimension) SetDependsOn(dependencies []string) { +func (r *Cluster_MetricDimension) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_MetricDimension) Metadata() map[string]interface{} { +func (r *Cluster_MetricDimension) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_MetricDimension) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_MetricDimension) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_MetricDimension) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_MetricDimension) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/emr/aws-emr-cluster_placementtype.go b/cloudformation/emr/aws-emr-cluster_placementtype.go new file mode 100644 index 0000000000..ace3b75649 --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_placementtype.go @@ -0,0 +1,65 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_PlacementType AWS CloudFormation Resource (AWS::EMR::Cluster.PlacementType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html +type Cluster_PlacementType struct { + + // AvailabilityZone AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html#cfn-elasticmapreduce-cluster-placementtype-availabilityzone + AvailabilityZone string `json:"AvailabilityZone,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_PlacementType) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.PlacementType" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_PlacementType) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_PlacementType) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_PlacementType) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_PlacementType) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_PlacementType) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_PlacementType) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-cluster_scalingaction.go b/cloudformation/emr/aws-emr-cluster_scalingaction.go new file mode 100644 index 0000000000..51d88a5257 --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_scalingaction.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_ScalingAction AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html +type Cluster_ScalingAction struct { + + // Market AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-market + Market string `json:"Market,omitempty"` + + // SimpleScalingPolicyConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-simplescalingpolicyconfiguration + SimpleScalingPolicyConfiguration *Cluster_SimpleScalingPolicyConfiguration `json:"SimpleScalingPolicyConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_ScalingAction) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.ScalingAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ScalingAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ScalingAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ScalingAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ScalingAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ScalingAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ScalingAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-cluster_scalingconstraints.go b/cloudformation/emr/aws-emr-cluster_scalingconstraints.go new file mode 100644 index 0000000000..9e3295200b --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_scalingconstraints.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_ScalingConstraints AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingConstraints) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html +type Cluster_ScalingConstraints struct { + + // MaxCapacity AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-maxcapacity + MaxCapacity int `json:"MaxCapacity"` + + // MinCapacity AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-mincapacity + MinCapacity int `json:"MinCapacity"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_ScalingConstraints) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.ScalingConstraints" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ScalingConstraints) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ScalingConstraints) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ScalingConstraints) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ScalingConstraints) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ScalingConstraints) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ScalingConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-cluster_scalingrule.go b/cloudformation/emr/aws-emr-cluster_scalingrule.go similarity index 76% rename from cloudformation/resources/aws-emr-cluster_scalingrule.go rename to cloudformation/emr/aws-emr-cluster_scalingrule.go index 16e6322170..1fbb700ae7 100644 --- a/cloudformation/resources/aws-emr-cluster_scalingrule.go +++ b/cloudformation/emr/aws-emr-cluster_scalingrule.go @@ -1,15 +1,17 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_ScalingRule AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingRule) +// Cluster_ScalingRule AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html -type AWSEMRCluster_ScalingRule struct { +type Cluster_ScalingRule struct { // Action AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-action - Action *AWSEMRCluster_ScalingAction `json:"Action,omitempty"` + Action *Cluster_ScalingAction `json:"Action,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSEMRCluster_ScalingRule struct { // Trigger AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-trigger - Trigger *AWSEMRCluster_ScalingTrigger `json:"Trigger,omitempty"` + Trigger *Cluster_ScalingTrigger `json:"Trigger,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSEMRCluster_ScalingRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScalingRule) AWSCloudFormationType() string { +func (r *Cluster_ScalingRule) AWSCloudFormationType() string { return "AWS::EMR::Cluster.ScalingRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScalingRule) DependsOn() []string { +func (r *Cluster_ScalingRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScalingRule) SetDependsOn(dependencies []string) { +func (r *Cluster_ScalingRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScalingRule) Metadata() map[string]interface{} { +func (r *Cluster_ScalingRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScalingRule) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_ScalingRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScalingRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_ScalingRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScalingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_ScalingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/emr/aws-emr-cluster_scalingtrigger.go b/cloudformation/emr/aws-emr-cluster_scalingtrigger.go new file mode 100644 index 0000000000..abf571ac08 --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_scalingtrigger.go @@ -0,0 +1,65 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_ScalingTrigger AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingTrigger) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html +type Cluster_ScalingTrigger struct { + + // CloudWatchAlarmDefinition AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html#cfn-elasticmapreduce-cluster-scalingtrigger-cloudwatchalarmdefinition + CloudWatchAlarmDefinition *Cluster_CloudWatchAlarmDefinition `json:"CloudWatchAlarmDefinition,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_ScalingTrigger) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.ScalingTrigger" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ScalingTrigger) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ScalingTrigger) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ScalingTrigger) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ScalingTrigger) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ScalingTrigger) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ScalingTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-cluster_scriptbootstrapactionconfig.go b/cloudformation/emr/aws-emr-cluster_scriptbootstrapactionconfig.go new file mode 100644 index 0000000000..ec4de0718f --- /dev/null +++ b/cloudformation/emr/aws-emr-cluster_scriptbootstrapactionconfig.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_ScriptBootstrapActionConfig AWS CloudFormation Resource (AWS::EMR::Cluster.ScriptBootstrapActionConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html +type Cluster_ScriptBootstrapActionConfig struct { + + // Args AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-args + Args []string `json:"Args,omitempty"` + + // Path AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-path + Path string `json:"Path,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_ScriptBootstrapActionConfig) AWSCloudFormationType() string { + return "AWS::EMR::Cluster.ScriptBootstrapActionConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ScriptBootstrapActionConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ScriptBootstrapActionConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ScriptBootstrapActionConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ScriptBootstrapActionConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ScriptBootstrapActionConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ScriptBootstrapActionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-cluster_simplescalingpolicyconfiguration.go b/cloudformation/emr/aws-emr-cluster_simplescalingpolicyconfiguration.go similarity index 75% rename from cloudformation/resources/aws-emr-cluster_simplescalingpolicyconfiguration.go rename to cloudformation/emr/aws-emr-cluster_simplescalingpolicyconfiguration.go index 400260cdee..c2df901884 100644 --- a/cloudformation/resources/aws-emr-cluster_simplescalingpolicyconfiguration.go +++ b/cloudformation/emr/aws-emr-cluster_simplescalingpolicyconfiguration.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_SimpleScalingPolicyConfiguration AWS CloudFormation Resource (AWS::EMR::Cluster.SimpleScalingPolicyConfiguration) +// Cluster_SimpleScalingPolicyConfiguration AWS CloudFormation Resource (AWS::EMR::Cluster.SimpleScalingPolicyConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html -type AWSEMRCluster_SimpleScalingPolicyConfiguration struct { +type Cluster_SimpleScalingPolicyConfiguration struct { // AdjustmentType AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEMRCluster_SimpleScalingPolicyConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_SimpleScalingPolicyConfiguration) AWSCloudFormationType() string { +func (r *Cluster_SimpleScalingPolicyConfiguration) AWSCloudFormationType() string { return "AWS::EMR::Cluster.SimpleScalingPolicyConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_SimpleScalingPolicyConfiguration) DependsOn() []string { +func (r *Cluster_SimpleScalingPolicyConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_SimpleScalingPolicyConfiguration) SetDependsOn(dependencies []string) { +func (r *Cluster_SimpleScalingPolicyConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_SimpleScalingPolicyConfiguration) Metadata() map[string]interface{} { +func (r *Cluster_SimpleScalingPolicyConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_SimpleScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_SimpleScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_SimpleScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_SimpleScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_SimpleScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_SimpleScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_spotprovisioningspecification.go b/cloudformation/emr/aws-emr-cluster_spotprovisioningspecification.go similarity index 75% rename from cloudformation/resources/aws-emr-cluster_spotprovisioningspecification.go rename to cloudformation/emr/aws-emr-cluster_spotprovisioningspecification.go index 7dabce1af9..c467d77053 100644 --- a/cloudformation/resources/aws-emr-cluster_spotprovisioningspecification.go +++ b/cloudformation/emr/aws-emr-cluster_spotprovisioningspecification.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_SpotProvisioningSpecification AWS CloudFormation Resource (AWS::EMR::Cluster.SpotProvisioningSpecification) +// Cluster_SpotProvisioningSpecification AWS CloudFormation Resource (AWS::EMR::Cluster.SpotProvisioningSpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html -type AWSEMRCluster_SpotProvisioningSpecification struct { +type Cluster_SpotProvisioningSpecification struct { // BlockDurationMinutes AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEMRCluster_SpotProvisioningSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_SpotProvisioningSpecification) AWSCloudFormationType() string { +func (r *Cluster_SpotProvisioningSpecification) AWSCloudFormationType() string { return "AWS::EMR::Cluster.SpotProvisioningSpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_SpotProvisioningSpecification) DependsOn() []string { +func (r *Cluster_SpotProvisioningSpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_SpotProvisioningSpecification) SetDependsOn(dependencies []string) { +func (r *Cluster_SpotProvisioningSpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_SpotProvisioningSpecification) Metadata() map[string]interface{} { +func (r *Cluster_SpotProvisioningSpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_SpotProvisioningSpecification) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_SpotProvisioningSpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_SpotProvisioningSpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_SpotProvisioningSpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_SpotProvisioningSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_SpotProvisioningSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_stepconfig.go b/cloudformation/emr/aws-emr-cluster_stepconfig.go similarity index 76% rename from cloudformation/resources/aws-emr-cluster_stepconfig.go rename to cloudformation/emr/aws-emr-cluster_stepconfig.go index ed60f8f07c..54a02133a6 100644 --- a/cloudformation/resources/aws-emr-cluster_stepconfig.go +++ b/cloudformation/emr/aws-emr-cluster_stepconfig.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_StepConfig AWS CloudFormation Resource (AWS::EMR::Cluster.StepConfig) +// Cluster_StepConfig AWS CloudFormation Resource (AWS::EMR::Cluster.StepConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html -type AWSEMRCluster_StepConfig struct { +type Cluster_StepConfig struct { // ActionOnFailure AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSEMRCluster_StepConfig struct { // HadoopJarStep AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-hadoopjarstep - HadoopJarStep *AWSEMRCluster_HadoopJarStepConfig `json:"HadoopJarStep,omitempty"` + HadoopJarStep *Cluster_HadoopJarStepConfig `json:"HadoopJarStep,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSEMRCluster_StepConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_StepConfig) AWSCloudFormationType() string { +func (r *Cluster_StepConfig) AWSCloudFormationType() string { return "AWS::EMR::Cluster.StepConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_StepConfig) DependsOn() []string { +func (r *Cluster_StepConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_StepConfig) SetDependsOn(dependencies []string) { +func (r *Cluster_StepConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_StepConfig) Metadata() map[string]interface{} { +func (r *Cluster_StepConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_StepConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_StepConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_StepConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_StepConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_StepConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_StepConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_volumespecification.go b/cloudformation/emr/aws-emr-cluster_volumespecification.go similarity index 76% rename from cloudformation/resources/aws-emr-cluster_volumespecification.go rename to cloudformation/emr/aws-emr-cluster_volumespecification.go index 7af1d7c617..3da00aee2c 100644 --- a/cloudformation/resources/aws-emr-cluster_volumespecification.go +++ b/cloudformation/emr/aws-emr-cluster_volumespecification.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRCluster_VolumeSpecification AWS CloudFormation Resource (AWS::EMR::Cluster.VolumeSpecification) +// Cluster_VolumeSpecification AWS CloudFormation Resource (AWS::EMR::Cluster.VolumeSpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html -type AWSEMRCluster_VolumeSpecification struct { +type Cluster_VolumeSpecification struct { // Iops AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEMRCluster_VolumeSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_VolumeSpecification) AWSCloudFormationType() string { +func (r *Cluster_VolumeSpecification) AWSCloudFormationType() string { return "AWS::EMR::Cluster.VolumeSpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_VolumeSpecification) DependsOn() []string { +func (r *Cluster_VolumeSpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_VolumeSpecification) SetDependsOn(dependencies []string) { +func (r *Cluster_VolumeSpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_VolumeSpecification) Metadata() map[string]interface{} { +func (r *Cluster_VolumeSpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_VolumeSpecification) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_VolumeSpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_VolumeSpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_VolumeSpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_VolumeSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_VolumeSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancefleetconfig.go b/cloudformation/emr/aws-emr-instancefleetconfig.go similarity index 81% rename from cloudformation/resources/aws-emr-instancefleetconfig.go rename to cloudformation/emr/aws-emr-instancefleetconfig.go index acf9912021..7e1acc4ea7 100644 --- a/cloudformation/resources/aws-emr-instancefleetconfig.go +++ b/cloudformation/emr/aws-emr-instancefleetconfig.go @@ -1,15 +1,16 @@ -package resources +package emr import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEMRInstanceFleetConfig AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig) +// InstanceFleetConfig AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html -type AWSEMRInstanceFleetConfig struct { +type InstanceFleetConfig struct { // ClusterId AWS CloudFormation Property // Required: true @@ -24,12 +25,12 @@ type AWSEMRInstanceFleetConfig struct { // InstanceTypeConfigs AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfigs - InstanceTypeConfigs []AWSEMRInstanceFleetConfig_InstanceTypeConfig `json:"InstanceTypeConfigs,omitempty"` + InstanceTypeConfigs []InstanceFleetConfig_InstanceTypeConfig `json:"InstanceTypeConfigs,omitempty"` // LaunchSpecifications AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-launchspecifications - LaunchSpecifications *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications `json:"LaunchSpecifications,omitempty"` + LaunchSpecifications *InstanceFleetConfig_InstanceFleetProvisioningSpecifications `json:"LaunchSpecifications,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSEMRInstanceFleetConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig) AWSCloudFormationType() string { +func (r *InstanceFleetConfig) AWSCloudFormationType() string { return "AWS::EMR::InstanceFleetConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig) DependsOn() []string { +func (r *InstanceFleetConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig) SetDependsOn(dependencies []string) { +func (r *InstanceFleetConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig) Metadata() map[string]interface{} { +func (r *InstanceFleetConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig) SetMetadata(metadata map[string]interface{}) { +func (r *InstanceFleetConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *InstanceFleetConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceFleetConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEMRInstanceFleetConfig) MarshalJSON() ([]byte, error) { - type Properties AWSEMRInstanceFleetConfig +func (r InstanceFleetConfig) MarshalJSON() ([]byte, error) { + type Properties InstanceFleetConfig return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSEMRInstanceFleetConfig) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEMRInstanceFleetConfig) UnmarshalJSON(b []byte) error { - type Properties AWSEMRInstanceFleetConfig +func (r *InstanceFleetConfig) UnmarshalJSON(b []byte) error { + type Properties InstanceFleetConfig res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSEMRInstanceFleetConfig) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEMRInstanceFleetConfig(*res.Properties) + *r = InstanceFleetConfig(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/emr/aws-emr-instancefleetconfig_configuration.go b/cloudformation/emr/aws-emr-instancefleetconfig_configuration.go new file mode 100644 index 0000000000..6cb5ee9db7 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancefleetconfig_configuration.go @@ -0,0 +1,75 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceFleetConfig_Configuration AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.Configuration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html +type InstanceFleetConfig_Configuration struct { + + // Classification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-classification + Classification string `json:"Classification,omitempty"` + + // ConfigurationProperties AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurationproperties + ConfigurationProperties map[string]string `json:"ConfigurationProperties,omitempty"` + + // Configurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurations + Configurations []InstanceFleetConfig_Configuration `json:"Configurations,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceFleetConfig_Configuration) AWSCloudFormationType() string { + return "AWS::EMR::InstanceFleetConfig.Configuration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_Configuration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_Configuration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_Configuration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_Configuration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_Configuration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go b/cloudformation/emr/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go new file mode 100644 index 0000000000..83a60ec6f1 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceFleetConfig_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.EbsBlockDeviceConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html +type InstanceFleetConfig_EbsBlockDeviceConfig struct { + + // VolumeSpecification AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumespecification + VolumeSpecification *InstanceFleetConfig_VolumeSpecification `json:"VolumeSpecification,omitempty"` + + // VolumesPerInstance AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumesperinstance + VolumesPerInstance int `json:"VolumesPerInstance,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceFleetConfig_EbsBlockDeviceConfig) AWSCloudFormationType() string { + return "AWS::EMR::InstanceFleetConfig.EbsBlockDeviceConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_EbsBlockDeviceConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_EbsBlockDeviceConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancefleetconfig_ebsconfiguration.go b/cloudformation/emr/aws-emr-instancefleetconfig_ebsconfiguration.go new file mode 100644 index 0000000000..a1b1d3994b --- /dev/null +++ b/cloudformation/emr/aws-emr-instancefleetconfig_ebsconfiguration.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceFleetConfig_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.EbsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html +type InstanceFleetConfig_EbsConfiguration struct { + + // EbsBlockDeviceConfigs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsblockdeviceconfigs + EbsBlockDeviceConfigs []InstanceFleetConfig_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` + + // EbsOptimized AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsoptimized + EbsOptimized bool `json:"EbsOptimized,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceFleetConfig_EbsConfiguration) AWSCloudFormationType() string { + return "AWS::EMR::InstanceFleetConfig.EbsConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_EbsConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_EbsConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_EbsConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go b/cloudformation/emr/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go new file mode 100644 index 0000000000..96e6d2a23b --- /dev/null +++ b/cloudformation/emr/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go @@ -0,0 +1,65 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceFleetConfig_InstanceFleetProvisioningSpecifications AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.InstanceFleetProvisioningSpecifications) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html +type InstanceFleetConfig_InstanceFleetProvisioningSpecifications struct { + + // SpotSpecification AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications-spotspecification + SpotSpecification *InstanceFleetConfig_SpotProvisioningSpecification `json:"SpotSpecification,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceFleetConfig_InstanceFleetProvisioningSpecifications) AWSCloudFormationType() string { + return "AWS::EMR::InstanceFleetConfig.InstanceFleetProvisioningSpecifications" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_InstanceFleetProvisioningSpecifications) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_InstanceFleetProvisioningSpecifications) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_InstanceFleetProvisioningSpecifications) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_instancetypeconfig.go b/cloudformation/emr/aws-emr-instancefleetconfig_instancetypeconfig.go similarity index 77% rename from cloudformation/resources/aws-emr-instancefleetconfig_instancetypeconfig.go rename to cloudformation/emr/aws-emr-instancefleetconfig_instancetypeconfig.go index cc55eb31de..5b6a542248 100644 --- a/cloudformation/resources/aws-emr-instancefleetconfig_instancetypeconfig.go +++ b/cloudformation/emr/aws-emr-instancefleetconfig_instancetypeconfig.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRInstanceFleetConfig_InstanceTypeConfig AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.InstanceTypeConfig) +// InstanceFleetConfig_InstanceTypeConfig AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.InstanceTypeConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html -type AWSEMRInstanceFleetConfig_InstanceTypeConfig struct { +type InstanceFleetConfig_InstanceTypeConfig struct { // BidPrice AWS CloudFormation Property // Required: false @@ -19,12 +21,12 @@ type AWSEMRInstanceFleetConfig_InstanceTypeConfig struct { // Configurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-configurations - Configurations []AWSEMRInstanceFleetConfig_Configuration `json:"Configurations,omitempty"` + Configurations []InstanceFleetConfig_Configuration `json:"Configurations,omitempty"` // EbsConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-ebsconfiguration - EbsConfiguration *AWSEMRInstanceFleetConfig_EbsConfiguration `json:"EbsConfiguration,omitempty"` + EbsConfiguration *InstanceFleetConfig_EbsConfiguration `json:"EbsConfiguration,omitempty"` // InstanceType AWS CloudFormation Property // Required: true @@ -47,42 +49,42 @@ type AWSEMRInstanceFleetConfig_InstanceTypeConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_InstanceTypeConfig) AWSCloudFormationType() string { +func (r *InstanceFleetConfig_InstanceTypeConfig) AWSCloudFormationType() string { return "AWS::EMR::InstanceFleetConfig.InstanceTypeConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_InstanceTypeConfig) DependsOn() []string { +func (r *InstanceFleetConfig_InstanceTypeConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_InstanceTypeConfig) SetDependsOn(dependencies []string) { +func (r *InstanceFleetConfig_InstanceTypeConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_InstanceTypeConfig) Metadata() map[string]interface{} { +func (r *InstanceFleetConfig_InstanceTypeConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_InstanceTypeConfig) SetMetadata(metadata map[string]interface{}) { +func (r *InstanceFleetConfig_InstanceTypeConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_InstanceTypeConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *InstanceFleetConfig_InstanceTypeConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_InstanceTypeConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceFleetConfig_InstanceTypeConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/emr/aws-emr-instancefleetconfig_spotprovisioningspecification.go b/cloudformation/emr/aws-emr-instancefleetconfig_spotprovisioningspecification.go new file mode 100644 index 0000000000..7e90c00242 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancefleetconfig_spotprovisioningspecification.go @@ -0,0 +1,75 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceFleetConfig_SpotProvisioningSpecification AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.SpotProvisioningSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html +type InstanceFleetConfig_SpotProvisioningSpecification struct { + + // BlockDurationMinutes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-blockdurationminutes + BlockDurationMinutes int `json:"BlockDurationMinutes,omitempty"` + + // TimeoutAction AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutaction + TimeoutAction string `json:"TimeoutAction,omitempty"` + + // TimeoutDurationMinutes AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutdurationminutes + TimeoutDurationMinutes int `json:"TimeoutDurationMinutes"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceFleetConfig_SpotProvisioningSpecification) AWSCloudFormationType() string { + return "AWS::EMR::InstanceFleetConfig.SpotProvisioningSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_SpotProvisioningSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_SpotProvisioningSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_SpotProvisioningSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_SpotProvisioningSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_SpotProvisioningSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_SpotProvisioningSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancefleetconfig_volumespecification.go b/cloudformation/emr/aws-emr-instancefleetconfig_volumespecification.go new file mode 100644 index 0000000000..f4d97a0660 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancefleetconfig_volumespecification.go @@ -0,0 +1,75 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceFleetConfig_VolumeSpecification AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.VolumeSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html +type InstanceFleetConfig_VolumeSpecification struct { + + // Iops AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-iops + Iops int `json:"Iops,omitempty"` + + // SizeInGB AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-sizeingb + SizeInGB int `json:"SizeInGB"` + + // VolumeType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-volumetype + VolumeType string `json:"VolumeType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceFleetConfig_VolumeSpecification) AWSCloudFormationType() string { + return "AWS::EMR::InstanceFleetConfig.VolumeSpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_VolumeSpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceFleetConfig_VolumeSpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_VolumeSpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceFleetConfig_VolumeSpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_VolumeSpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceFleetConfig_VolumeSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig.go b/cloudformation/emr/aws-emr-instancegroupconfig.go similarity index 81% rename from cloudformation/resources/aws-emr-instancegroupconfig.go rename to cloudformation/emr/aws-emr-instancegroupconfig.go index 63bb2e1551..ccceeb20b0 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig.go @@ -1,20 +1,21 @@ -package resources +package emr import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEMRInstanceGroupConfig AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig) +// InstanceGroupConfig AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html -type AWSEMRInstanceGroupConfig struct { +type InstanceGroupConfig struct { // AutoScalingPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy - AutoScalingPolicy *AWSEMRInstanceGroupConfig_AutoScalingPolicy `json:"AutoScalingPolicy,omitempty"` + AutoScalingPolicy *InstanceGroupConfig_AutoScalingPolicy `json:"AutoScalingPolicy,omitempty"` // BidPrice AWS CloudFormation Property // Required: false @@ -24,12 +25,12 @@ type AWSEMRInstanceGroupConfig struct { // Configurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-configurations - Configurations []AWSEMRInstanceGroupConfig_Configuration `json:"Configurations,omitempty"` + Configurations []InstanceGroupConfig_Configuration `json:"Configurations,omitempty"` // EbsConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-ebsconfiguration - EbsConfiguration *AWSEMRInstanceGroupConfig_EbsConfiguration `json:"EbsConfiguration,omitempty"` + EbsConfiguration *InstanceGroupConfig_EbsConfiguration `json:"EbsConfiguration,omitempty"` // InstanceCount AWS CloudFormation Property // Required: true @@ -72,50 +73,50 @@ type AWSEMRInstanceGroupConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig) AWSCloudFormationType() string { +func (r *InstanceGroupConfig) AWSCloudFormationType() string { return "AWS::EMR::InstanceGroupConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig) DependsOn() []string { +func (r *InstanceGroupConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig) SetDependsOn(dependencies []string) { +func (r *InstanceGroupConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig) Metadata() map[string]interface{} { +func (r *InstanceGroupConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig) SetMetadata(metadata map[string]interface{}) { +func (r *InstanceGroupConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *InstanceGroupConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEMRInstanceGroupConfig) MarshalJSON() ([]byte, error) { - type Properties AWSEMRInstanceGroupConfig +func (r InstanceGroupConfig) MarshalJSON() ([]byte, error) { + type Properties InstanceGroupConfig return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSEMRInstanceGroupConfig) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEMRInstanceGroupConfig) UnmarshalJSON(b []byte) error { - type Properties AWSEMRInstanceGroupConfig +func (r *InstanceGroupConfig) UnmarshalJSON(b []byte) error { + type Properties InstanceGroupConfig res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSEMRInstanceGroupConfig) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEMRInstanceGroupConfig(*res.Properties) + *r = InstanceGroupConfig(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_autoscalingpolicy.go b/cloudformation/emr/aws-emr-instancegroupconfig_autoscalingpolicy.go new file mode 100644 index 0000000000..e1f775fe50 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_autoscalingpolicy.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_AutoScalingPolicy AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.AutoScalingPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html +type InstanceGroupConfig_AutoScalingPolicy struct { + + // Constraints AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-constraints + Constraints *InstanceGroupConfig_ScalingConstraints `json:"Constraints,omitempty"` + + // Rules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-rules + Rules []InstanceGroupConfig_ScalingRule `json:"Rules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_AutoScalingPolicy) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.AutoScalingPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_AutoScalingPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_AutoScalingPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_AutoScalingPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_AutoScalingPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_AutoScalingPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_AutoScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_cloudwatchalarmdefinition.go b/cloudformation/emr/aws-emr-instancegroupconfig_cloudwatchalarmdefinition.go similarity index 81% rename from cloudformation/resources/aws-emr-instancegroupconfig_cloudwatchalarmdefinition.go rename to cloudformation/emr/aws-emr-instancegroupconfig_cloudwatchalarmdefinition.go index c83126b087..94a2a5a8e4 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_cloudwatchalarmdefinition.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_cloudwatchalarmdefinition.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.CloudWatchAlarmDefinition) +// InstanceGroupConfig_CloudWatchAlarmDefinition AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.CloudWatchAlarmDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html -type AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition struct { +type InstanceGroupConfig_CloudWatchAlarmDefinition struct { // ComparisonOperator AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition struct { // Dimensions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-dimensions - Dimensions []AWSEMRInstanceGroupConfig_MetricDimension `json:"Dimensions,omitempty"` + Dimensions []InstanceGroupConfig_MetricDimension `json:"Dimensions,omitempty"` // EvaluationPeriods AWS CloudFormation Property // Required: false @@ -62,42 +64,42 @@ type AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition) AWSCloudFormationType() string { +func (r *InstanceGroupConfig_CloudWatchAlarmDefinition) AWSCloudFormationType() string { return "AWS::EMR::InstanceGroupConfig.CloudWatchAlarmDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition) DependsOn() []string { +func (r *InstanceGroupConfig_CloudWatchAlarmDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition) SetDependsOn(dependencies []string) { +func (r *InstanceGroupConfig_CloudWatchAlarmDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition) Metadata() map[string]interface{} { +func (r *InstanceGroupConfig_CloudWatchAlarmDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *InstanceGroupConfig_CloudWatchAlarmDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *InstanceGroupConfig_CloudWatchAlarmDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_CloudWatchAlarmDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_configuration.go b/cloudformation/emr/aws-emr-instancegroupconfig_configuration.go new file mode 100644 index 0000000000..ceda6e1872 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_configuration.go @@ -0,0 +1,75 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_Configuration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.Configuration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html +type InstanceGroupConfig_Configuration struct { + + // Classification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-classification + Classification string `json:"Classification,omitempty"` + + // ConfigurationProperties AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurationproperties + ConfigurationProperties map[string]string `json:"ConfigurationProperties,omitempty"` + + // Configurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurations + Configurations []InstanceGroupConfig_Configuration `json:"Configurations,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_Configuration) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.Configuration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_Configuration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_Configuration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_Configuration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_Configuration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_Configuration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go b/cloudformation/emr/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go new file mode 100644 index 0000000000..6cbb5a69af --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.EbsBlockDeviceConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html +type InstanceGroupConfig_EbsBlockDeviceConfig struct { + + // VolumeSpecification AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification + VolumeSpecification *InstanceGroupConfig_VolumeSpecification `json:"VolumeSpecification,omitempty"` + + // VolumesPerInstance AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumesperinstance + VolumesPerInstance int `json:"VolumesPerInstance,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_EbsBlockDeviceConfig) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.EbsBlockDeviceConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_EbsBlockDeviceConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_EbsBlockDeviceConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_ebsconfiguration.go b/cloudformation/emr/aws-emr-instancegroupconfig_ebsconfiguration.go new file mode 100644 index 0000000000..b9a9988bf4 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_ebsconfiguration.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.EbsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html +type InstanceGroupConfig_EbsConfiguration struct { + + // EbsBlockDeviceConfigs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfigs + EbsBlockDeviceConfigs []InstanceGroupConfig_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` + + // EbsOptimized AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsoptimized + EbsOptimized bool `json:"EbsOptimized,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_EbsConfiguration) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.EbsConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_EbsConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_EbsConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_EbsConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_metricdimension.go b/cloudformation/emr/aws-emr-instancegroupconfig_metricdimension.go new file mode 100644 index 0000000000..ccf0b73372 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_metricdimension.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_MetricDimension AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.MetricDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html +type InstanceGroupConfig_MetricDimension struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_MetricDimension) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.MetricDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_MetricDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_MetricDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_MetricDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_MetricDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_MetricDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_scalingaction.go b/cloudformation/emr/aws-emr-instancegroupconfig_scalingaction.go new file mode 100644 index 0000000000..3bd3640c72 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_scalingaction.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_ScalingAction AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html +type InstanceGroupConfig_ScalingAction struct { + + // Market AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-market + Market string `json:"Market,omitempty"` + + // SimpleScalingPolicyConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-simplescalingpolicyconfiguration + SimpleScalingPolicyConfiguration *InstanceGroupConfig_SimpleScalingPolicyConfiguration `json:"SimpleScalingPolicyConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_ScalingAction) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.ScalingAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_ScalingAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_ScalingAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_ScalingAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_ScalingAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_ScalingAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_ScalingAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_scalingconstraints.go b/cloudformation/emr/aws-emr-instancegroupconfig_scalingconstraints.go new file mode 100644 index 0000000000..38eea3e230 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_scalingconstraints.go @@ -0,0 +1,70 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_ScalingConstraints AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingConstraints) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html +type InstanceGroupConfig_ScalingConstraints struct { + + // MaxCapacity AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-maxcapacity + MaxCapacity int `json:"MaxCapacity"` + + // MinCapacity AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-mincapacity + MinCapacity int `json:"MinCapacity"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_ScalingConstraints) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.ScalingConstraints" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_ScalingConstraints) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_ScalingConstraints) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_ScalingConstraints) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_ScalingConstraints) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_ScalingConstraints) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_ScalingConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_scalingrule.go b/cloudformation/emr/aws-emr-instancegroupconfig_scalingrule.go new file mode 100644 index 0000000000..b259adeb8d --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_scalingrule.go @@ -0,0 +1,80 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_ScalingRule AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html +type InstanceGroupConfig_ScalingRule struct { + + // Action AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-action + Action *InstanceGroupConfig_ScalingAction `json:"Action,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-description + Description string `json:"Description,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-name + Name string `json:"Name,omitempty"` + + // Trigger AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-trigger + Trigger *InstanceGroupConfig_ScalingTrigger `json:"Trigger,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_ScalingRule) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.ScalingRule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_ScalingRule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_ScalingRule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_ScalingRule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_ScalingRule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_ScalingRule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_ScalingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_scalingtrigger.go b/cloudformation/emr/aws-emr-instancegroupconfig_scalingtrigger.go new file mode 100644 index 0000000000..4aa8f29135 --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_scalingtrigger.go @@ -0,0 +1,65 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_ScalingTrigger AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingTrigger) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html +type InstanceGroupConfig_ScalingTrigger struct { + + // CloudWatchAlarmDefinition AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html#cfn-elasticmapreduce-instancegroupconfig-scalingtrigger-cloudwatchalarmdefinition + CloudWatchAlarmDefinition *InstanceGroupConfig_CloudWatchAlarmDefinition `json:"CloudWatchAlarmDefinition,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_ScalingTrigger) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.ScalingTrigger" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_ScalingTrigger) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_ScalingTrigger) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_ScalingTrigger) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_ScalingTrigger) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_ScalingTrigger) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_ScalingTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/emr/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go b/cloudformation/emr/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go new file mode 100644 index 0000000000..d263368e7a --- /dev/null +++ b/cloudformation/emr/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go @@ -0,0 +1,75 @@ +package emr + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InstanceGroupConfig_SimpleScalingPolicyConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.SimpleScalingPolicyConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html +type InstanceGroupConfig_SimpleScalingPolicyConfiguration struct { + + // AdjustmentType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-adjustmenttype + AdjustmentType string `json:"AdjustmentType,omitempty"` + + // CoolDown AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-cooldown + CoolDown int `json:"CoolDown,omitempty"` + + // ScalingAdjustment AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-scalingadjustment + ScalingAdjustment int `json:"ScalingAdjustment"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InstanceGroupConfig_SimpleScalingPolicyConfiguration) AWSCloudFormationType() string { + return "AWS::EMR::InstanceGroupConfig.SimpleScalingPolicyConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_SimpleScalingPolicyConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InstanceGroupConfig_SimpleScalingPolicyConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_SimpleScalingPolicyConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InstanceGroupConfig_SimpleScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_SimpleScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InstanceGroupConfig_SimpleScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_volumespecification.go b/cloudformation/emr/aws-emr-instancegroupconfig_volumespecification.go similarity index 75% rename from cloudformation/resources/aws-emr-instancegroupconfig_volumespecification.go rename to cloudformation/emr/aws-emr-instancegroupconfig_volumespecification.go index 603b13fcbe..62b6ac0ae0 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_volumespecification.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_volumespecification.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRInstanceGroupConfig_VolumeSpecification AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.VolumeSpecification) +// InstanceGroupConfig_VolumeSpecification AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.VolumeSpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html -type AWSEMRInstanceGroupConfig_VolumeSpecification struct { +type InstanceGroupConfig_VolumeSpecification struct { // Iops AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEMRInstanceGroupConfig_VolumeSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_VolumeSpecification) AWSCloudFormationType() string { +func (r *InstanceGroupConfig_VolumeSpecification) AWSCloudFormationType() string { return "AWS::EMR::InstanceGroupConfig.VolumeSpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_VolumeSpecification) DependsOn() []string { +func (r *InstanceGroupConfig_VolumeSpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_VolumeSpecification) SetDependsOn(dependencies []string) { +func (r *InstanceGroupConfig_VolumeSpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_VolumeSpecification) Metadata() map[string]interface{} { +func (r *InstanceGroupConfig_VolumeSpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_VolumeSpecification) SetMetadata(metadata map[string]interface{}) { +func (r *InstanceGroupConfig_VolumeSpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_VolumeSpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *InstanceGroupConfig_VolumeSpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_VolumeSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_VolumeSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-securityconfiguration.go b/cloudformation/emr/aws-emr-securityconfiguration.go similarity index 78% rename from cloudformation/resources/aws-emr-securityconfiguration.go rename to cloudformation/emr/aws-emr-securityconfiguration.go index 11c28bd9cb..a29765ee21 100644 --- a/cloudformation/resources/aws-emr-securityconfiguration.go +++ b/cloudformation/emr/aws-emr-securityconfiguration.go @@ -1,15 +1,16 @@ -package resources +package emr import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEMRSecurityConfiguration AWS CloudFormation Resource (AWS::EMR::SecurityConfiguration) +// SecurityConfiguration AWS CloudFormation Resource (AWS::EMR::SecurityConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html -type AWSEMRSecurityConfiguration struct { +type SecurityConfiguration struct { // Name AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSEMRSecurityConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRSecurityConfiguration) AWSCloudFormationType() string { +func (r *SecurityConfiguration) AWSCloudFormationType() string { return "AWS::EMR::SecurityConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRSecurityConfiguration) DependsOn() []string { +func (r *SecurityConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRSecurityConfiguration) SetDependsOn(dependencies []string) { +func (r *SecurityConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRSecurityConfiguration) Metadata() map[string]interface{} { +func (r *SecurityConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRSecurityConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRSecurityConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRSecurityConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEMRSecurityConfiguration) MarshalJSON() ([]byte, error) { - type Properties AWSEMRSecurityConfiguration +func (r SecurityConfiguration) MarshalJSON() ([]byte, error) { + type Properties SecurityConfiguration return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEMRSecurityConfiguration) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEMRSecurityConfiguration) UnmarshalJSON(b []byte) error { - type Properties AWSEMRSecurityConfiguration +func (r *SecurityConfiguration) UnmarshalJSON(b []byte) error { + type Properties SecurityConfiguration res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEMRSecurityConfiguration) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEMRSecurityConfiguration(*res.Properties) + *r = SecurityConfiguration(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-emr-step.go b/cloudformation/emr/aws-emr-step.go similarity index 83% rename from cloudformation/resources/aws-emr-step.go rename to cloudformation/emr/aws-emr-step.go index e07624b806..a742d10d4d 100644 --- a/cloudformation/resources/aws-emr-step.go +++ b/cloudformation/emr/aws-emr-step.go @@ -1,15 +1,16 @@ -package resources +package emr import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEMRStep AWS CloudFormation Resource (AWS::EMR::Step) +// Step AWS CloudFormation Resource (AWS::EMR::Step) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html -type AWSEMRStep struct { +type Step struct { // ActionOnFailure AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSEMRStep struct { // HadoopJarStep AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-hadoopjarstep - HadoopJarStep *AWSEMRStep_HadoopJarStepConfig `json:"HadoopJarStep,omitempty"` + HadoopJarStep *Step_HadoopJarStepConfig `json:"HadoopJarStep,omitempty"` // JobFlowId AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSEMRStep struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRStep) AWSCloudFormationType() string { +func (r *Step) AWSCloudFormationType() string { return "AWS::EMR::Step" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRStep) DependsOn() []string { +func (r *Step) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRStep) SetDependsOn(dependencies []string) { +func (r *Step) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRStep) Metadata() map[string]interface{} { +func (r *Step) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRStep) SetMetadata(metadata map[string]interface{}) { +func (r *Step) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRStep) DeletionPolicy() policies.DeletionPolicy { +func (r *Step) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRStep) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Step) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEMRStep) MarshalJSON() ([]byte, error) { - type Properties AWSEMRStep +func (r Step) MarshalJSON() ([]byte, error) { + type Properties Step return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSEMRStep) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEMRStep) UnmarshalJSON(b []byte) error { - type Properties AWSEMRStep +func (r *Step) UnmarshalJSON(b []byte) error { + type Properties Step res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSEMRStep) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEMRStep(*res.Properties) + *r = Step(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-emr-step_hadoopjarstepconfig.go b/cloudformation/emr/aws-emr-step_hadoopjarstepconfig.go similarity index 77% rename from cloudformation/resources/aws-emr-step_hadoopjarstepconfig.go rename to cloudformation/emr/aws-emr-step_hadoopjarstepconfig.go index 1259a72aef..9c0f4ae8c4 100644 --- a/cloudformation/resources/aws-emr-step_hadoopjarstepconfig.go +++ b/cloudformation/emr/aws-emr-step_hadoopjarstepconfig.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRStep_HadoopJarStepConfig AWS CloudFormation Resource (AWS::EMR::Step.HadoopJarStepConfig) +// Step_HadoopJarStepConfig AWS CloudFormation Resource (AWS::EMR::Step.HadoopJarStepConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html -type AWSEMRStep_HadoopJarStepConfig struct { +type Step_HadoopJarStepConfig struct { // Args AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSEMRStep_HadoopJarStepConfig struct { // StepProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-stepproperties - StepProperties []AWSEMRStep_KeyValue `json:"StepProperties,omitempty"` + StepProperties []Step_KeyValue `json:"StepProperties,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSEMRStep_HadoopJarStepConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRStep_HadoopJarStepConfig) AWSCloudFormationType() string { +func (r *Step_HadoopJarStepConfig) AWSCloudFormationType() string { return "AWS::EMR::Step.HadoopJarStepConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRStep_HadoopJarStepConfig) DependsOn() []string { +func (r *Step_HadoopJarStepConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRStep_HadoopJarStepConfig) SetDependsOn(dependencies []string) { +func (r *Step_HadoopJarStepConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRStep_HadoopJarStepConfig) Metadata() map[string]interface{} { +func (r *Step_HadoopJarStepConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRStep_HadoopJarStepConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Step_HadoopJarStepConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRStep_HadoopJarStepConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Step_HadoopJarStepConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRStep_HadoopJarStepConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Step_HadoopJarStepConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-step_keyvalue.go b/cloudformation/emr/aws-emr-step_keyvalue.go similarity index 77% rename from cloudformation/resources/aws-emr-step_keyvalue.go rename to cloudformation/emr/aws-emr-step_keyvalue.go index ad54e4c55c..7475458626 100644 --- a/cloudformation/resources/aws-emr-step_keyvalue.go +++ b/cloudformation/emr/aws-emr-step_keyvalue.go @@ -1,10 +1,12 @@ -package resources +package emr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEMRStep_KeyValue AWS CloudFormation Resource (AWS::EMR::Step.KeyValue) +// Step_KeyValue AWS CloudFormation Resource (AWS::EMR::Step.KeyValue) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html -type AWSEMRStep_KeyValue struct { +type Step_KeyValue struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRStep_KeyValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRStep_KeyValue) AWSCloudFormationType() string { +func (r *Step_KeyValue) AWSCloudFormationType() string { return "AWS::EMR::Step.KeyValue" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRStep_KeyValue) DependsOn() []string { +func (r *Step_KeyValue) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRStep_KeyValue) SetDependsOn(dependencies []string) { +func (r *Step_KeyValue) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRStep_KeyValue) Metadata() map[string]interface{} { +func (r *Step_KeyValue) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRStep_KeyValue) SetMetadata(metadata map[string]interface{}) { +func (r *Step_KeyValue) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRStep_KeyValue) DeletionPolicy() policies.DeletionPolicy { +func (r *Step_KeyValue) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRStep_KeyValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Step_KeyValue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-events-eventbus.go b/cloudformation/events/aws-events-eventbus.go similarity index 81% rename from cloudformation/resources/aws-events-eventbus.go rename to cloudformation/events/aws-events-eventbus.go index f65938d25e..4f61d9b588 100644 --- a/cloudformation/resources/aws-events-eventbus.go +++ b/cloudformation/events/aws-events-eventbus.go @@ -1,15 +1,16 @@ -package resources +package events import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEventsEventBus AWS CloudFormation Resource (AWS::Events::EventBus) +// EventBus AWS CloudFormation Resource (AWS::Events::EventBus) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html -type AWSEventsEventBus struct { +type EventBus struct { // EventSourceName AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSEventsEventBus struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsEventBus) AWSCloudFormationType() string { +func (r *EventBus) AWSCloudFormationType() string { return "AWS::Events::EventBus" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsEventBus) DependsOn() []string { +func (r *EventBus) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsEventBus) SetDependsOn(dependencies []string) { +func (r *EventBus) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsEventBus) Metadata() map[string]interface{} { +func (r *EventBus) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsEventBus) SetMetadata(metadata map[string]interface{}) { +func (r *EventBus) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsEventBus) DeletionPolicy() policies.DeletionPolicy { +func (r *EventBus) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsEventBus) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EventBus) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEventsEventBus) MarshalJSON() ([]byte, error) { - type Properties AWSEventsEventBus +func (r EventBus) MarshalJSON() ([]byte, error) { + type Properties EventBus return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSEventsEventBus) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEventsEventBus) UnmarshalJSON(b []byte) error { - type Properties AWSEventsEventBus +func (r *EventBus) UnmarshalJSON(b []byte) error { + type Properties EventBus res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSEventsEventBus) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEventsEventBus(*res.Properties) + *r = EventBus(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-events-eventbuspolicy.go b/cloudformation/events/aws-events-eventbuspolicy.go similarity index 81% rename from cloudformation/resources/aws-events-eventbuspolicy.go rename to cloudformation/events/aws-events-eventbuspolicy.go index 6b94f55adb..b0a3f0a558 100644 --- a/cloudformation/resources/aws-events-eventbuspolicy.go +++ b/cloudformation/events/aws-events-eventbuspolicy.go @@ -1,15 +1,16 @@ -package resources +package events import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEventsEventBusPolicy AWS CloudFormation Resource (AWS::Events::EventBusPolicy) +// EventBusPolicy AWS CloudFormation Resource (AWS::Events::EventBusPolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html -type AWSEventsEventBusPolicy struct { +type EventBusPolicy struct { // Action AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSEventsEventBusPolicy struct { // Condition AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-condition - Condition *AWSEventsEventBusPolicy_Condition `json:"Condition,omitempty"` + Condition *EventBusPolicy_Condition `json:"Condition,omitempty"` // EventBusName AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSEventsEventBusPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsEventBusPolicy) AWSCloudFormationType() string { +func (r *EventBusPolicy) AWSCloudFormationType() string { return "AWS::Events::EventBusPolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsEventBusPolicy) DependsOn() []string { +func (r *EventBusPolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsEventBusPolicy) SetDependsOn(dependencies []string) { +func (r *EventBusPolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsEventBusPolicy) Metadata() map[string]interface{} { +func (r *EventBusPolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsEventBusPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *EventBusPolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsEventBusPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *EventBusPolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsEventBusPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EventBusPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEventsEventBusPolicy) MarshalJSON() ([]byte, error) { - type Properties AWSEventsEventBusPolicy +func (r EventBusPolicy) MarshalJSON() ([]byte, error) { + type Properties EventBusPolicy return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSEventsEventBusPolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEventsEventBusPolicy) UnmarshalJSON(b []byte) error { - type Properties AWSEventsEventBusPolicy +func (r *EventBusPolicy) UnmarshalJSON(b []byte) error { + type Properties EventBusPolicy res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSEventsEventBusPolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEventsEventBusPolicy(*res.Properties) + *r = EventBusPolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-events-eventbuspolicy_condition.go b/cloudformation/events/aws-events-eventbuspolicy_condition.go similarity index 75% rename from cloudformation/resources/aws-events-eventbuspolicy_condition.go rename to cloudformation/events/aws-events-eventbuspolicy_condition.go index dea87d2a1d..838286a315 100644 --- a/cloudformation/resources/aws-events-eventbuspolicy_condition.go +++ b/cloudformation/events/aws-events-eventbuspolicy_condition.go @@ -1,10 +1,12 @@ -package resources +package events -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEventsEventBusPolicy_Condition AWS CloudFormation Resource (AWS::Events::EventBusPolicy.Condition) +// EventBusPolicy_Condition AWS CloudFormation Resource (AWS::Events::EventBusPolicy.Condition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html -type AWSEventsEventBusPolicy_Condition struct { +type EventBusPolicy_Condition struct { // Key AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEventsEventBusPolicy_Condition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsEventBusPolicy_Condition) AWSCloudFormationType() string { +func (r *EventBusPolicy_Condition) AWSCloudFormationType() string { return "AWS::Events::EventBusPolicy.Condition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsEventBusPolicy_Condition) DependsOn() []string { +func (r *EventBusPolicy_Condition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsEventBusPolicy_Condition) SetDependsOn(dependencies []string) { +func (r *EventBusPolicy_Condition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsEventBusPolicy_Condition) Metadata() map[string]interface{} { +func (r *EventBusPolicy_Condition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsEventBusPolicy_Condition) SetMetadata(metadata map[string]interface{}) { +func (r *EventBusPolicy_Condition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsEventBusPolicy_Condition) DeletionPolicy() policies.DeletionPolicy { +func (r *EventBusPolicy_Condition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsEventBusPolicy_Condition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EventBusPolicy_Condition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-events-rule.go b/cloudformation/events/aws-events-rule.go similarity index 84% rename from cloudformation/resources/aws-events-rule.go rename to cloudformation/events/aws-events-rule.go index 84103b3872..0cbec61741 100644 --- a/cloudformation/resources/aws-events-rule.go +++ b/cloudformation/events/aws-events-rule.go @@ -1,15 +1,16 @@ -package resources +package events import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSEventsRule AWS CloudFormation Resource (AWS::Events::Rule) +// Rule AWS CloudFormation Resource (AWS::Events::Rule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html -type AWSEventsRule struct { +type Rule struct { // Description AWS CloudFormation Property // Required: false @@ -44,7 +45,7 @@ type AWSEventsRule struct { // Targets AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets - Targets []AWSEventsRule_Target `json:"Targets,omitempty"` + Targets []Rule_Target `json:"Targets,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +58,50 @@ type AWSEventsRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule) AWSCloudFormationType() string { +func (r *Rule) AWSCloudFormationType() string { return "AWS::Events::Rule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule) DependsOn() []string { +func (r *Rule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule) SetDependsOn(dependencies []string) { +func (r *Rule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule) Metadata() map[string]interface{} { +func (r *Rule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule) SetMetadata(metadata map[string]interface{}) { +func (r *Rule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSEventsRule) MarshalJSON() ([]byte, error) { - type Properties AWSEventsRule +func (r Rule) MarshalJSON() ([]byte, error) { + type Properties Rule return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSEventsRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSEventsRule) UnmarshalJSON(b []byte) error { - type Properties AWSEventsRule +func (r *Rule) UnmarshalJSON(b []byte) error { + type Properties Rule res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSEventsRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSEventsRule(*res.Properties) + *r = Rule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-events-rule_awsvpcconfiguration.go b/cloudformation/events/aws-events-rule_awsvpcconfiguration.go similarity index 76% rename from cloudformation/resources/aws-events-rule_awsvpcconfiguration.go rename to cloudformation/events/aws-events-rule_awsvpcconfiguration.go index 1f38c43863..2ff5b92f73 100644 --- a/cloudformation/resources/aws-events-rule_awsvpcconfiguration.go +++ b/cloudformation/events/aws-events-rule_awsvpcconfiguration.go @@ -1,10 +1,12 @@ -package resources +package events -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEventsRule_AwsVpcConfiguration AWS CloudFormation Resource (AWS::Events::Rule.AwsVpcConfiguration) +// Rule_AwsVpcConfiguration AWS CloudFormation Resource (AWS::Events::Rule.AwsVpcConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html -type AWSEventsRule_AwsVpcConfiguration struct { +type Rule_AwsVpcConfiguration struct { // AssignPublicIp AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEventsRule_AwsVpcConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_AwsVpcConfiguration) AWSCloudFormationType() string { +func (r *Rule_AwsVpcConfiguration) AWSCloudFormationType() string { return "AWS::Events::Rule.AwsVpcConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_AwsVpcConfiguration) DependsOn() []string { +func (r *Rule_AwsVpcConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_AwsVpcConfiguration) SetDependsOn(dependencies []string) { +func (r *Rule_AwsVpcConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_AwsVpcConfiguration) Metadata() map[string]interface{} { +func (r *Rule_AwsVpcConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_AwsVpcConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Rule_AwsVpcConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_AwsVpcConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule_AwsVpcConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_AwsVpcConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_AwsVpcConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-events-rule_ecsparameters.go b/cloudformation/events/aws-events-rule_ecsparameters.go similarity index 79% rename from cloudformation/resources/aws-events-rule_ecsparameters.go rename to cloudformation/events/aws-events-rule_ecsparameters.go index 8bf496c18b..4b77aafa72 100644 --- a/cloudformation/resources/aws-events-rule_ecsparameters.go +++ b/cloudformation/events/aws-events-rule_ecsparameters.go @@ -1,10 +1,12 @@ -package resources +package events -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEventsRule_EcsParameters AWS CloudFormation Resource (AWS::Events::Rule.EcsParameters) +// Rule_EcsParameters AWS CloudFormation Resource (AWS::Events::Rule.EcsParameters) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html -type AWSEventsRule_EcsParameters struct { +type Rule_EcsParameters struct { // Group AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSEventsRule_EcsParameters struct { // NetworkConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-networkconfiguration - NetworkConfiguration *AWSEventsRule_NetworkConfiguration `json:"NetworkConfiguration,omitempty"` + NetworkConfiguration *Rule_NetworkConfiguration `json:"NetworkConfiguration,omitempty"` // PlatformVersion AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSEventsRule_EcsParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_EcsParameters) AWSCloudFormationType() string { +func (r *Rule_EcsParameters) AWSCloudFormationType() string { return "AWS::Events::Rule.EcsParameters" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_EcsParameters) DependsOn() []string { +func (r *Rule_EcsParameters) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_EcsParameters) SetDependsOn(dependencies []string) { +func (r *Rule_EcsParameters) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_EcsParameters) Metadata() map[string]interface{} { +func (r *Rule_EcsParameters) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_EcsParameters) SetMetadata(metadata map[string]interface{}) { +func (r *Rule_EcsParameters) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_EcsParameters) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule_EcsParameters) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_EcsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_EcsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-events-rule_inputtransformer.go b/cloudformation/events/aws-events-rule_inputtransformer.go similarity index 75% rename from cloudformation/resources/aws-events-rule_inputtransformer.go rename to cloudformation/events/aws-events-rule_inputtransformer.go index 99dcfc4140..f583202b3b 100644 --- a/cloudformation/resources/aws-events-rule_inputtransformer.go +++ b/cloudformation/events/aws-events-rule_inputtransformer.go @@ -1,10 +1,12 @@ -package resources +package events -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEventsRule_InputTransformer AWS CloudFormation Resource (AWS::Events::Rule.InputTransformer) +// Rule_InputTransformer AWS CloudFormation Resource (AWS::Events::Rule.InputTransformer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html -type AWSEventsRule_InputTransformer struct { +type Rule_InputTransformer struct { // InputPathsMap AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEventsRule_InputTransformer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_InputTransformer) AWSCloudFormationType() string { +func (r *Rule_InputTransformer) AWSCloudFormationType() string { return "AWS::Events::Rule.InputTransformer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_InputTransformer) DependsOn() []string { +func (r *Rule_InputTransformer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_InputTransformer) SetDependsOn(dependencies []string) { +func (r *Rule_InputTransformer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_InputTransformer) Metadata() map[string]interface{} { +func (r *Rule_InputTransformer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_InputTransformer) SetMetadata(metadata map[string]interface{}) { +func (r *Rule_InputTransformer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_InputTransformer) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule_InputTransformer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_InputTransformer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_InputTransformer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/events/aws-events-rule_kinesisparameters.go b/cloudformation/events/aws-events-rule_kinesisparameters.go new file mode 100644 index 0000000000..5ceff1d4ce --- /dev/null +++ b/cloudformation/events/aws-events-rule_kinesisparameters.go @@ -0,0 +1,65 @@ +package events + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Rule_KinesisParameters AWS CloudFormation Resource (AWS::Events::Rule.KinesisParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-kinesisparameters.html +type Rule_KinesisParameters struct { + + // PartitionKeyPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-kinesisparameters.html#cfn-events-rule-kinesisparameters-partitionkeypath + PartitionKeyPath string `json:"PartitionKeyPath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Rule_KinesisParameters) AWSCloudFormationType() string { + return "AWS::Events::Rule.KinesisParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_KinesisParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_KinesisParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_KinesisParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_KinesisParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_KinesisParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_KinesisParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/events/aws-events-rule_networkconfiguration.go b/cloudformation/events/aws-events-rule_networkconfiguration.go new file mode 100644 index 0000000000..4a64d851ab --- /dev/null +++ b/cloudformation/events/aws-events-rule_networkconfiguration.go @@ -0,0 +1,65 @@ +package events + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Rule_NetworkConfiguration AWS CloudFormation Resource (AWS::Events::Rule.NetworkConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-networkconfiguration.html +type Rule_NetworkConfiguration struct { + + // AwsVpcConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-networkconfiguration.html#cfn-events-rule-networkconfiguration-awsvpcconfiguration + AwsVpcConfiguration *Rule_AwsVpcConfiguration `json:"AwsVpcConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Rule_NetworkConfiguration) AWSCloudFormationType() string { + return "AWS::Events::Rule.NetworkConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_NetworkConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_NetworkConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_NetworkConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_NetworkConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_NetworkConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/events/aws-events-rule_runcommandparameters.go b/cloudformation/events/aws-events-rule_runcommandparameters.go new file mode 100644 index 0000000000..621c1ec0d0 --- /dev/null +++ b/cloudformation/events/aws-events-rule_runcommandparameters.go @@ -0,0 +1,65 @@ +package events + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Rule_RunCommandParameters AWS CloudFormation Resource (AWS::Events::Rule.RunCommandParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandparameters.html +type Rule_RunCommandParameters struct { + + // RunCommandTargets AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandparameters.html#cfn-events-rule-runcommandparameters-runcommandtargets + RunCommandTargets []Rule_RunCommandTarget `json:"RunCommandTargets,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Rule_RunCommandParameters) AWSCloudFormationType() string { + return "AWS::Events::Rule.RunCommandParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_RunCommandParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_RunCommandParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_RunCommandParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_RunCommandParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_RunCommandParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_RunCommandParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/events/aws-events-rule_runcommandtarget.go b/cloudformation/events/aws-events-rule_runcommandtarget.go new file mode 100644 index 0000000000..9a49b17e27 --- /dev/null +++ b/cloudformation/events/aws-events-rule_runcommandtarget.go @@ -0,0 +1,70 @@ +package events + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Rule_RunCommandTarget AWS CloudFormation Resource (AWS::Events::Rule.RunCommandTarget) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html +type Rule_RunCommandTarget struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html#cfn-events-rule-runcommandtarget-key + Key string `json:"Key,omitempty"` + + // Values AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html#cfn-events-rule-runcommandtarget-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Rule_RunCommandTarget) AWSCloudFormationType() string { + return "AWS::Events::Rule.RunCommandTarget" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_RunCommandTarget) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_RunCommandTarget) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_RunCommandTarget) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_RunCommandTarget) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_RunCommandTarget) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_RunCommandTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/events/aws-events-rule_sqsparameters.go b/cloudformation/events/aws-events-rule_sqsparameters.go new file mode 100644 index 0000000000..91231cce2f --- /dev/null +++ b/cloudformation/events/aws-events-rule_sqsparameters.go @@ -0,0 +1,65 @@ +package events + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Rule_SqsParameters AWS CloudFormation Resource (AWS::Events::Rule.SqsParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-sqsparameters.html +type Rule_SqsParameters struct { + + // MessageGroupId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-sqsparameters.html#cfn-events-rule-sqsparameters-messagegroupid + MessageGroupId string `json:"MessageGroupId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Rule_SqsParameters) AWSCloudFormationType() string { + return "AWS::Events::Rule.SqsParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_SqsParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Rule_SqsParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_SqsParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Rule_SqsParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_SqsParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Rule_SqsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-events-rule_target.go b/cloudformation/events/aws-events-rule_target.go similarity index 78% rename from cloudformation/resources/aws-events-rule_target.go rename to cloudformation/events/aws-events-rule_target.go index 69d3790efc..e0aaf08e07 100644 --- a/cloudformation/resources/aws-events-rule_target.go +++ b/cloudformation/events/aws-events-rule_target.go @@ -1,10 +1,12 @@ -package resources +package events -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEventsRule_Target AWS CloudFormation Resource (AWS::Events::Rule.Target) +// Rule_Target AWS CloudFormation Resource (AWS::Events::Rule.Target) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html -type AWSEventsRule_Target struct { +type Rule_Target struct { // Arn AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSEventsRule_Target struct { // EcsParameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-ecsparameters - EcsParameters *AWSEventsRule_EcsParameters `json:"EcsParameters,omitempty"` + EcsParameters *Rule_EcsParameters `json:"EcsParameters,omitempty"` // Id AWS CloudFormation Property // Required: true @@ -34,12 +36,12 @@ type AWSEventsRule_Target struct { // InputTransformer AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputtransformer - InputTransformer *AWSEventsRule_InputTransformer `json:"InputTransformer,omitempty"` + InputTransformer *Rule_InputTransformer `json:"InputTransformer,omitempty"` // KinesisParameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-kinesisparameters - KinesisParameters *AWSEventsRule_KinesisParameters `json:"KinesisParameters,omitempty"` + KinesisParameters *Rule_KinesisParameters `json:"KinesisParameters,omitempty"` // RoleArn AWS CloudFormation Property // Required: false @@ -49,12 +51,12 @@ type AWSEventsRule_Target struct { // RunCommandParameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-runcommandparameters - RunCommandParameters *AWSEventsRule_RunCommandParameters `json:"RunCommandParameters,omitempty"` + RunCommandParameters *Rule_RunCommandParameters `json:"RunCommandParameters,omitempty"` // SqsParameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-sqsparameters - SqsParameters *AWSEventsRule_SqsParameters `json:"SqsParameters,omitempty"` + SqsParameters *Rule_SqsParameters `json:"SqsParameters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -67,42 +69,42 @@ type AWSEventsRule_Target struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_Target) AWSCloudFormationType() string { +func (r *Rule_Target) AWSCloudFormationType() string { return "AWS::Events::Rule.Target" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_Target) DependsOn() []string { +func (r *Rule_Target) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_Target) SetDependsOn(dependencies []string) { +func (r *Rule_Target) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_Target) Metadata() map[string]interface{} { +func (r *Rule_Target) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_Target) SetMetadata(metadata map[string]interface{}) { +func (r *Rule_Target) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_Target) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule_Target) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_Target) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_Target) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-fsx-filesystem.go b/cloudformation/fsx/aws-fsx-filesystem.go similarity index 83% rename from cloudformation/resources/aws-fsx-filesystem.go rename to cloudformation/fsx/aws-fsx-filesystem.go index 862642d625..20e67684a2 100644 --- a/cloudformation/resources/aws-fsx-filesystem.go +++ b/cloudformation/fsx/aws-fsx-filesystem.go @@ -1,15 +1,17 @@ -package resources +package fsx import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSFSxFileSystem AWS CloudFormation Resource (AWS::FSx::FileSystem) +// FileSystem AWS CloudFormation Resource (AWS::FSx::FileSystem) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html -type AWSFSxFileSystem struct { +type FileSystem struct { // BackupId AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSFSxFileSystem struct { // LustreConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-lustreconfiguration - LustreConfiguration *AWSFSxFileSystem_LustreConfiguration `json:"LustreConfiguration,omitempty"` + LustreConfiguration *FileSystem_LustreConfiguration `json:"LustreConfiguration,omitempty"` // SecurityGroupIds AWS CloudFormation Property // Required: false @@ -49,12 +51,12 @@ type AWSFSxFileSystem struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // WindowsConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-windowsconfiguration - WindowsConfiguration *AWSFSxFileSystem_WindowsConfiguration `json:"WindowsConfiguration,omitempty"` + WindowsConfiguration *FileSystem_WindowsConfiguration `json:"WindowsConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -67,50 +69,50 @@ type AWSFSxFileSystem struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSFSxFileSystem) AWSCloudFormationType() string { +func (r *FileSystem) AWSCloudFormationType() string { return "AWS::FSx::FileSystem" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSFSxFileSystem) DependsOn() []string { +func (r *FileSystem) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSFSxFileSystem) SetDependsOn(dependencies []string) { +func (r *FileSystem) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSFSxFileSystem) Metadata() map[string]interface{} { +func (r *FileSystem) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSFSxFileSystem) SetMetadata(metadata map[string]interface{}) { +func (r *FileSystem) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSFSxFileSystem) DeletionPolicy() policies.DeletionPolicy { +func (r *FileSystem) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSFSxFileSystem) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FileSystem) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSFSxFileSystem) MarshalJSON() ([]byte, error) { - type Properties AWSFSxFileSystem +func (r FileSystem) MarshalJSON() ([]byte, error) { + type Properties FileSystem return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +130,8 @@ func (r AWSFSxFileSystem) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSFSxFileSystem) UnmarshalJSON(b []byte) error { - type Properties AWSFSxFileSystem +func (r *FileSystem) UnmarshalJSON(b []byte) error { + type Properties FileSystem res := &struct { Type string Properties *Properties @@ -148,7 +150,7 @@ func (r *AWSFSxFileSystem) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSFSxFileSystem(*res.Properties) + *r = FileSystem(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-fsx-filesystem_lustreconfiguration.go b/cloudformation/fsx/aws-fsx-filesystem_lustreconfiguration.go similarity index 78% rename from cloudformation/resources/aws-fsx-filesystem_lustreconfiguration.go rename to cloudformation/fsx/aws-fsx-filesystem_lustreconfiguration.go index e073a5952a..db57c69456 100644 --- a/cloudformation/resources/aws-fsx-filesystem_lustreconfiguration.go +++ b/cloudformation/fsx/aws-fsx-filesystem_lustreconfiguration.go @@ -1,10 +1,12 @@ -package resources +package fsx -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSFSxFileSystem_LustreConfiguration AWS CloudFormation Resource (AWS::FSx::FileSystem.LustreConfiguration) +// FileSystem_LustreConfiguration AWS CloudFormation Resource (AWS::FSx::FileSystem.LustreConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html -type AWSFSxFileSystem_LustreConfiguration struct { +type FileSystem_LustreConfiguration struct { // ExportPath AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSFSxFileSystem_LustreConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSFSxFileSystem_LustreConfiguration) AWSCloudFormationType() string { +func (r *FileSystem_LustreConfiguration) AWSCloudFormationType() string { return "AWS::FSx::FileSystem.LustreConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSFSxFileSystem_LustreConfiguration) DependsOn() []string { +func (r *FileSystem_LustreConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSFSxFileSystem_LustreConfiguration) SetDependsOn(dependencies []string) { +func (r *FileSystem_LustreConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSFSxFileSystem_LustreConfiguration) Metadata() map[string]interface{} { +func (r *FileSystem_LustreConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSFSxFileSystem_LustreConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *FileSystem_LustreConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSFSxFileSystem_LustreConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *FileSystem_LustreConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSFSxFileSystem_LustreConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FileSystem_LustreConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-fsx-filesystem_selfmanagedactivedirectoryconfiguration.go b/cloudformation/fsx/aws-fsx-filesystem_selfmanagedactivedirectoryconfiguration.go similarity index 80% rename from cloudformation/resources/aws-fsx-filesystem_selfmanagedactivedirectoryconfiguration.go rename to cloudformation/fsx/aws-fsx-filesystem_selfmanagedactivedirectoryconfiguration.go index c171948845..7b5e1bd123 100644 --- a/cloudformation/resources/aws-fsx-filesystem_selfmanagedactivedirectoryconfiguration.go +++ b/cloudformation/fsx/aws-fsx-filesystem_selfmanagedactivedirectoryconfiguration.go @@ -1,10 +1,12 @@ -package resources +package fsx -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration AWS CloudFormation Resource (AWS::FSx::FileSystem.SelfManagedActiveDirectoryConfiguration) +// FileSystem_SelfManagedActiveDirectoryConfiguration AWS CloudFormation Resource (AWS::FSx::FileSystem.SelfManagedActiveDirectoryConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html -type AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration struct { +type FileSystem_SelfManagedActiveDirectoryConfiguration struct { // DnsIps AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration) AWSCloudFormationType() string { +func (r *FileSystem_SelfManagedActiveDirectoryConfiguration) AWSCloudFormationType() string { return "AWS::FSx::FileSystem.SelfManagedActiveDirectoryConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration) DependsOn() []string { +func (r *FileSystem_SelfManagedActiveDirectoryConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration) SetDependsOn(dependencies []string) { +func (r *FileSystem_SelfManagedActiveDirectoryConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration) Metadata() map[string]interface{} { +func (r *FileSystem_SelfManagedActiveDirectoryConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *FileSystem_SelfManagedActiveDirectoryConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *FileSystem_SelfManagedActiveDirectoryConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FileSystem_SelfManagedActiveDirectoryConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-fsx-filesystem_windowsconfiguration.go b/cloudformation/fsx/aws-fsx-filesystem_windowsconfiguration.go similarity index 80% rename from cloudformation/resources/aws-fsx-filesystem_windowsconfiguration.go rename to cloudformation/fsx/aws-fsx-filesystem_windowsconfiguration.go index 056b475984..7602dd2b8e 100644 --- a/cloudformation/resources/aws-fsx-filesystem_windowsconfiguration.go +++ b/cloudformation/fsx/aws-fsx-filesystem_windowsconfiguration.go @@ -1,10 +1,12 @@ -package resources +package fsx -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSFSxFileSystem_WindowsConfiguration AWS CloudFormation Resource (AWS::FSx::FileSystem.WindowsConfiguration) +// FileSystem_WindowsConfiguration AWS CloudFormation Resource (AWS::FSx::FileSystem.WindowsConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html -type AWSFSxFileSystem_WindowsConfiguration struct { +type FileSystem_WindowsConfiguration struct { // ActiveDirectoryId AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSFSxFileSystem_WindowsConfiguration struct { // SelfManagedActiveDirectoryConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration - SelfManagedActiveDirectoryConfiguration *AWSFSxFileSystem_SelfManagedActiveDirectoryConfiguration `json:"SelfManagedActiveDirectoryConfiguration,omitempty"` + SelfManagedActiveDirectoryConfiguration *FileSystem_SelfManagedActiveDirectoryConfiguration `json:"SelfManagedActiveDirectoryConfiguration,omitempty"` // ThroughputCapacity AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSFSxFileSystem_WindowsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSFSxFileSystem_WindowsConfiguration) AWSCloudFormationType() string { +func (r *FileSystem_WindowsConfiguration) AWSCloudFormationType() string { return "AWS::FSx::FileSystem.WindowsConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSFSxFileSystem_WindowsConfiguration) DependsOn() []string { +func (r *FileSystem_WindowsConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSFSxFileSystem_WindowsConfiguration) SetDependsOn(dependencies []string) { +func (r *FileSystem_WindowsConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSFSxFileSystem_WindowsConfiguration) Metadata() map[string]interface{} { +func (r *FileSystem_WindowsConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSFSxFileSystem_WindowsConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *FileSystem_WindowsConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSFSxFileSystem_WindowsConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *FileSystem_WindowsConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSFSxFileSystem_WindowsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FileSystem_WindowsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-gamelift-alias.go b/cloudformation/gamelift/aws-gamelift-alias.go similarity index 80% rename from cloudformation/resources/aws-gamelift-alias.go rename to cloudformation/gamelift/aws-gamelift-alias.go index 2629057c6b..4e789bd049 100644 --- a/cloudformation/resources/aws-gamelift-alias.go +++ b/cloudformation/gamelift/aws-gamelift-alias.go @@ -1,15 +1,16 @@ -package resources +package gamelift import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGameLiftAlias AWS CloudFormation Resource (AWS::GameLift::Alias) +// Alias AWS CloudFormation Resource (AWS::GameLift::Alias) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html -type AWSGameLiftAlias struct { +type Alias struct { // Description AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSGameLiftAlias struct { // RoutingStrategy AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-routingstrategy - RoutingStrategy *AWSGameLiftAlias_RoutingStrategy `json:"RoutingStrategy,omitempty"` + RoutingStrategy *Alias_RoutingStrategy `json:"RoutingStrategy,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSGameLiftAlias struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGameLiftAlias) AWSCloudFormationType() string { +func (r *Alias) AWSCloudFormationType() string { return "AWS::GameLift::Alias" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftAlias) DependsOn() []string { +func (r *Alias) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftAlias) SetDependsOn(dependencies []string) { +func (r *Alias) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftAlias) Metadata() map[string]interface{} { +func (r *Alias) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftAlias) SetMetadata(metadata map[string]interface{}) { +func (r *Alias) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftAlias) DeletionPolicy() policies.DeletionPolicy { +func (r *Alias) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftAlias) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alias) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGameLiftAlias) MarshalJSON() ([]byte, error) { - type Properties AWSGameLiftAlias +func (r Alias) MarshalJSON() ([]byte, error) { + type Properties Alias return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGameLiftAlias) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGameLiftAlias) UnmarshalJSON(b []byte) error { - type Properties AWSGameLiftAlias +func (r *Alias) UnmarshalJSON(b []byte) error { + type Properties Alias res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGameLiftAlias) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGameLiftAlias(*res.Properties) + *r = Alias(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-gamelift-alias_routingstrategy.go b/cloudformation/gamelift/aws-gamelift-alias_routingstrategy.go similarity index 76% rename from cloudformation/resources/aws-gamelift-alias_routingstrategy.go rename to cloudformation/gamelift/aws-gamelift-alias_routingstrategy.go index 57f2d57395..d0733db33e 100644 --- a/cloudformation/resources/aws-gamelift-alias_routingstrategy.go +++ b/cloudformation/gamelift/aws-gamelift-alias_routingstrategy.go @@ -1,10 +1,12 @@ -package resources +package gamelift -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGameLiftAlias_RoutingStrategy AWS CloudFormation Resource (AWS::GameLift::Alias.RoutingStrategy) +// Alias_RoutingStrategy AWS CloudFormation Resource (AWS::GameLift::Alias.RoutingStrategy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html -type AWSGameLiftAlias_RoutingStrategy struct { +type Alias_RoutingStrategy struct { // FleetId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGameLiftAlias_RoutingStrategy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGameLiftAlias_RoutingStrategy) AWSCloudFormationType() string { +func (r *Alias_RoutingStrategy) AWSCloudFormationType() string { return "AWS::GameLift::Alias.RoutingStrategy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftAlias_RoutingStrategy) DependsOn() []string { +func (r *Alias_RoutingStrategy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftAlias_RoutingStrategy) SetDependsOn(dependencies []string) { +func (r *Alias_RoutingStrategy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftAlias_RoutingStrategy) Metadata() map[string]interface{} { +func (r *Alias_RoutingStrategy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftAlias_RoutingStrategy) SetMetadata(metadata map[string]interface{}) { +func (r *Alias_RoutingStrategy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftAlias_RoutingStrategy) DeletionPolicy() policies.DeletionPolicy { +func (r *Alias_RoutingStrategy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftAlias_RoutingStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alias_RoutingStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-gamelift-build.go b/cloudformation/gamelift/aws-gamelift-build.go similarity index 80% rename from cloudformation/resources/aws-gamelift-build.go rename to cloudformation/gamelift/aws-gamelift-build.go index c929186945..8a57f55f19 100644 --- a/cloudformation/resources/aws-gamelift-build.go +++ b/cloudformation/gamelift/aws-gamelift-build.go @@ -1,15 +1,16 @@ -package resources +package gamelift import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGameLiftBuild AWS CloudFormation Resource (AWS::GameLift::Build) +// Build AWS CloudFormation Resource (AWS::GameLift::Build) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html -type AWSGameLiftBuild struct { +type Build struct { // Name AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSGameLiftBuild struct { // StorageLocation AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-storagelocation - StorageLocation *AWSGameLiftBuild_S3Location `json:"StorageLocation,omitempty"` + StorageLocation *Build_S3Location `json:"StorageLocation,omitempty"` // Version AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSGameLiftBuild struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGameLiftBuild) AWSCloudFormationType() string { +func (r *Build) AWSCloudFormationType() string { return "AWS::GameLift::Build" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftBuild) DependsOn() []string { +func (r *Build) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftBuild) SetDependsOn(dependencies []string) { +func (r *Build) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftBuild) Metadata() map[string]interface{} { +func (r *Build) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftBuild) SetMetadata(metadata map[string]interface{}) { +func (r *Build) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftBuild) DeletionPolicy() policies.DeletionPolicy { +func (r *Build) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftBuild) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Build) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGameLiftBuild) MarshalJSON() ([]byte, error) { - type Properties AWSGameLiftBuild +func (r Build) MarshalJSON() ([]byte, error) { + type Properties Build return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGameLiftBuild) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGameLiftBuild) UnmarshalJSON(b []byte) error { - type Properties AWSGameLiftBuild +func (r *Build) UnmarshalJSON(b []byte) error { + type Properties Build res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGameLiftBuild) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGameLiftBuild(*res.Properties) + *r = Build(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-gamelift-build_s3location.go b/cloudformation/gamelift/aws-gamelift-build_s3location.go similarity index 77% rename from cloudformation/resources/aws-gamelift-build_s3location.go rename to cloudformation/gamelift/aws-gamelift-build_s3location.go index 39f8558f5b..44c0910c70 100644 --- a/cloudformation/resources/aws-gamelift-build_s3location.go +++ b/cloudformation/gamelift/aws-gamelift-build_s3location.go @@ -1,10 +1,12 @@ -package resources +package gamelift -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGameLiftBuild_S3Location AWS CloudFormation Resource (AWS::GameLift::Build.S3Location) +// Build_S3Location AWS CloudFormation Resource (AWS::GameLift::Build.S3Location) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html -type AWSGameLiftBuild_S3Location struct { +type Build_S3Location struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGameLiftBuild_S3Location struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGameLiftBuild_S3Location) AWSCloudFormationType() string { +func (r *Build_S3Location) AWSCloudFormationType() string { return "AWS::GameLift::Build.S3Location" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftBuild_S3Location) DependsOn() []string { +func (r *Build_S3Location) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftBuild_S3Location) SetDependsOn(dependencies []string) { +func (r *Build_S3Location) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftBuild_S3Location) Metadata() map[string]interface{} { +func (r *Build_S3Location) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftBuild_S3Location) SetMetadata(metadata map[string]interface{}) { +func (r *Build_S3Location) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftBuild_S3Location) DeletionPolicy() policies.DeletionPolicy { +func (r *Build_S3Location) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftBuild_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Build_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-gamelift-fleet.go b/cloudformation/gamelift/aws-gamelift-fleet.go similarity index 86% rename from cloudformation/resources/aws-gamelift-fleet.go rename to cloudformation/gamelift/aws-gamelift-fleet.go index f0704e2349..b0f4d494f8 100644 --- a/cloudformation/resources/aws-gamelift-fleet.go +++ b/cloudformation/gamelift/aws-gamelift-fleet.go @@ -1,15 +1,16 @@ -package resources +package gamelift import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGameLiftFleet AWS CloudFormation Resource (AWS::GameLift::Fleet) +// Fleet AWS CloudFormation Resource (AWS::GameLift::Fleet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html -type AWSGameLiftFleet struct { +type Fleet struct { // BuildId AWS CloudFormation Property // Required: true @@ -29,7 +30,7 @@ type AWSGameLiftFleet struct { // EC2InboundPermissions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-ec2inboundpermissions - EC2InboundPermissions []AWSGameLiftFleet_IpPermission `json:"EC2InboundPermissions,omitempty"` + EC2InboundPermissions []Fleet_IpPermission `json:"EC2InboundPermissions,omitempty"` // EC2InstanceType AWS CloudFormation Property // Required: true @@ -77,50 +78,50 @@ type AWSGameLiftFleet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGameLiftFleet) AWSCloudFormationType() string { +func (r *Fleet) AWSCloudFormationType() string { return "AWS::GameLift::Fleet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftFleet) DependsOn() []string { +func (r *Fleet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftFleet) SetDependsOn(dependencies []string) { +func (r *Fleet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftFleet) Metadata() map[string]interface{} { +func (r *Fleet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftFleet) SetMetadata(metadata map[string]interface{}) { +func (r *Fleet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftFleet) DeletionPolicy() policies.DeletionPolicy { +func (r *Fleet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftFleet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Fleet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGameLiftFleet) MarshalJSON() ([]byte, error) { - type Properties AWSGameLiftFleet +func (r Fleet) MarshalJSON() ([]byte, error) { + type Properties Fleet return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +139,8 @@ func (r AWSGameLiftFleet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGameLiftFleet) UnmarshalJSON(b []byte) error { - type Properties AWSGameLiftFleet +func (r *Fleet) UnmarshalJSON(b []byte) error { + type Properties Fleet res := &struct { Type string Properties *Properties @@ -158,7 +159,7 @@ func (r *AWSGameLiftFleet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGameLiftFleet(*res.Properties) + *r = Fleet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-gamelift-fleet_ippermission.go b/cloudformation/gamelift/aws-gamelift-fleet_ippermission.go similarity index 78% rename from cloudformation/resources/aws-gamelift-fleet_ippermission.go rename to cloudformation/gamelift/aws-gamelift-fleet_ippermission.go index bc14cf39b7..e37fcf38c6 100644 --- a/cloudformation/resources/aws-gamelift-fleet_ippermission.go +++ b/cloudformation/gamelift/aws-gamelift-fleet_ippermission.go @@ -1,10 +1,12 @@ -package resources +package gamelift -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGameLiftFleet_IpPermission AWS CloudFormation Resource (AWS::GameLift::Fleet.IpPermission) +// Fleet_IpPermission AWS CloudFormation Resource (AWS::GameLift::Fleet.IpPermission) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html -type AWSGameLiftFleet_IpPermission struct { +type Fleet_IpPermission struct { // FromPort AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSGameLiftFleet_IpPermission struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGameLiftFleet_IpPermission) AWSCloudFormationType() string { +func (r *Fleet_IpPermission) AWSCloudFormationType() string { return "AWS::GameLift::Fleet.IpPermission" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftFleet_IpPermission) DependsOn() []string { +func (r *Fleet_IpPermission) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGameLiftFleet_IpPermission) SetDependsOn(dependencies []string) { +func (r *Fleet_IpPermission) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftFleet_IpPermission) Metadata() map[string]interface{} { +func (r *Fleet_IpPermission) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGameLiftFleet_IpPermission) SetMetadata(metadata map[string]interface{}) { +func (r *Fleet_IpPermission) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftFleet_IpPermission) DeletionPolicy() policies.DeletionPolicy { +func (r *Fleet_IpPermission) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGameLiftFleet_IpPermission) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Fleet_IpPermission) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-classifier.go b/cloudformation/glue/aws-glue-classifier.go similarity index 77% rename from cloudformation/resources/aws-glue-classifier.go rename to cloudformation/glue/aws-glue-classifier.go index 7fd9b271c7..fda872f34e 100644 --- a/cloudformation/resources/aws-glue-classifier.go +++ b/cloudformation/glue/aws-glue-classifier.go @@ -1,35 +1,36 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueClassifier AWS CloudFormation Resource (AWS::Glue::Classifier) +// Classifier AWS CloudFormation Resource (AWS::Glue::Classifier) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html -type AWSGlueClassifier struct { +type Classifier struct { // CsvClassifier AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-csvclassifier - CsvClassifier *AWSGlueClassifier_CsvClassifier `json:"CsvClassifier,omitempty"` + CsvClassifier *Classifier_CsvClassifier `json:"CsvClassifier,omitempty"` // GrokClassifier AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-grokclassifier - GrokClassifier *AWSGlueClassifier_GrokClassifier `json:"GrokClassifier,omitempty"` + GrokClassifier *Classifier_GrokClassifier `json:"GrokClassifier,omitempty"` // JsonClassifier AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-jsonclassifier - JsonClassifier *AWSGlueClassifier_JsonClassifier `json:"JsonClassifier,omitempty"` + JsonClassifier *Classifier_JsonClassifier `json:"JsonClassifier,omitempty"` // XMLClassifier AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-xmlclassifier - XMLClassifier *AWSGlueClassifier_XMLClassifier `json:"XMLClassifier,omitempty"` + XMLClassifier *Classifier_XMLClassifier `json:"XMLClassifier,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSGlueClassifier struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueClassifier) AWSCloudFormationType() string { +func (r *Classifier) AWSCloudFormationType() string { return "AWS::Glue::Classifier" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier) DependsOn() []string { +func (r *Classifier) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier) SetDependsOn(dependencies []string) { +func (r *Classifier) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier) Metadata() map[string]interface{} { +func (r *Classifier) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier) SetMetadata(metadata map[string]interface{}) { +func (r *Classifier) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier) DeletionPolicy() policies.DeletionPolicy { +func (r *Classifier) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Classifier) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueClassifier) MarshalJSON() ([]byte, error) { - type Properties AWSGlueClassifier +func (r Classifier) MarshalJSON() ([]byte, error) { + type Properties Classifier return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSGlueClassifier) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueClassifier) UnmarshalJSON(b []byte) error { - type Properties AWSGlueClassifier +func (r *Classifier) UnmarshalJSON(b []byte) error { + type Properties Classifier res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSGlueClassifier) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueClassifier(*res.Properties) + *r = Classifier(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-classifier_csvclassifier.go b/cloudformation/glue/aws-glue-classifier_csvclassifier.go similarity index 82% rename from cloudformation/resources/aws-glue-classifier_csvclassifier.go rename to cloudformation/glue/aws-glue-classifier_csvclassifier.go index b561ed66cf..1a4045fc98 100644 --- a/cloudformation/resources/aws-glue-classifier_csvclassifier.go +++ b/cloudformation/glue/aws-glue-classifier_csvclassifier.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueClassifier_CsvClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.CsvClassifier) +// Classifier_CsvClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.CsvClassifier) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html -type AWSGlueClassifier_CsvClassifier struct { +type Classifier_CsvClassifier struct { // AllowSingleColumn AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSGlueClassifier_CsvClassifier struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueClassifier_CsvClassifier) AWSCloudFormationType() string { +func (r *Classifier_CsvClassifier) AWSCloudFormationType() string { return "AWS::Glue::Classifier.CsvClassifier" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier_CsvClassifier) DependsOn() []string { +func (r *Classifier_CsvClassifier) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier_CsvClassifier) SetDependsOn(dependencies []string) { +func (r *Classifier_CsvClassifier) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier_CsvClassifier) Metadata() map[string]interface{} { +func (r *Classifier_CsvClassifier) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier_CsvClassifier) SetMetadata(metadata map[string]interface{}) { +func (r *Classifier_CsvClassifier) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier_CsvClassifier) DeletionPolicy() policies.DeletionPolicy { +func (r *Classifier_CsvClassifier) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier_CsvClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Classifier_CsvClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-classifier_grokclassifier.go b/cloudformation/glue/aws-glue-classifier_grokclassifier.go similarity index 78% rename from cloudformation/resources/aws-glue-classifier_grokclassifier.go rename to cloudformation/glue/aws-glue-classifier_grokclassifier.go index 9fc25c2875..bf7308a474 100644 --- a/cloudformation/resources/aws-glue-classifier_grokclassifier.go +++ b/cloudformation/glue/aws-glue-classifier_grokclassifier.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueClassifier_GrokClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.GrokClassifier) +// Classifier_GrokClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.GrokClassifier) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html -type AWSGlueClassifier_GrokClassifier struct { +type Classifier_GrokClassifier struct { // Classification AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSGlueClassifier_GrokClassifier struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueClassifier_GrokClassifier) AWSCloudFormationType() string { +func (r *Classifier_GrokClassifier) AWSCloudFormationType() string { return "AWS::Glue::Classifier.GrokClassifier" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier_GrokClassifier) DependsOn() []string { +func (r *Classifier_GrokClassifier) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier_GrokClassifier) SetDependsOn(dependencies []string) { +func (r *Classifier_GrokClassifier) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier_GrokClassifier) Metadata() map[string]interface{} { +func (r *Classifier_GrokClassifier) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier_GrokClassifier) SetMetadata(metadata map[string]interface{}) { +func (r *Classifier_GrokClassifier) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier_GrokClassifier) DeletionPolicy() policies.DeletionPolicy { +func (r *Classifier_GrokClassifier) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier_GrokClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Classifier_GrokClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/glue/aws-glue-classifier_jsonclassifier.go b/cloudformation/glue/aws-glue-classifier_jsonclassifier.go new file mode 100644 index 0000000000..7abd400b59 --- /dev/null +++ b/cloudformation/glue/aws-glue-classifier_jsonclassifier.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Classifier_JsonClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.JsonClassifier) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html +type Classifier_JsonClassifier struct { + + // JsonPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html#cfn-glue-classifier-jsonclassifier-jsonpath + JsonPath string `json:"JsonPath,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html#cfn-glue-classifier-jsonclassifier-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Classifier_JsonClassifier) AWSCloudFormationType() string { + return "AWS::Glue::Classifier.JsonClassifier" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Classifier_JsonClassifier) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Classifier_JsonClassifier) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Classifier_JsonClassifier) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Classifier_JsonClassifier) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Classifier_JsonClassifier) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Classifier_JsonClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-classifier_xmlclassifier.go b/cloudformation/glue/aws-glue-classifier_xmlclassifier.go similarity index 76% rename from cloudformation/resources/aws-glue-classifier_xmlclassifier.go rename to cloudformation/glue/aws-glue-classifier_xmlclassifier.go index caa08e2b13..5d57155756 100644 --- a/cloudformation/resources/aws-glue-classifier_xmlclassifier.go +++ b/cloudformation/glue/aws-glue-classifier_xmlclassifier.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueClassifier_XMLClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.XMLClassifier) +// Classifier_XMLClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.XMLClassifier) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html -type AWSGlueClassifier_XMLClassifier struct { +type Classifier_XMLClassifier struct { // Classification AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGlueClassifier_XMLClassifier struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueClassifier_XMLClassifier) AWSCloudFormationType() string { +func (r *Classifier_XMLClassifier) AWSCloudFormationType() string { return "AWS::Glue::Classifier.XMLClassifier" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier_XMLClassifier) DependsOn() []string { +func (r *Classifier_XMLClassifier) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier_XMLClassifier) SetDependsOn(dependencies []string) { +func (r *Classifier_XMLClassifier) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier_XMLClassifier) Metadata() map[string]interface{} { +func (r *Classifier_XMLClassifier) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier_XMLClassifier) SetMetadata(metadata map[string]interface{}) { +func (r *Classifier_XMLClassifier) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier_XMLClassifier) DeletionPolicy() policies.DeletionPolicy { +func (r *Classifier_XMLClassifier) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier_XMLClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Classifier_XMLClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-connection.go b/cloudformation/glue/aws-glue-connection.go similarity index 79% rename from cloudformation/resources/aws-glue-connection.go rename to cloudformation/glue/aws-glue-connection.go index 1c414b0fb5..173b88991d 100644 --- a/cloudformation/resources/aws-glue-connection.go +++ b/cloudformation/glue/aws-glue-connection.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueConnection AWS CloudFormation Resource (AWS::Glue::Connection) +// Connection AWS CloudFormation Resource (AWS::Glue::Connection) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html -type AWSGlueConnection struct { +type Connection struct { // CatalogId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGlueConnection struct { // ConnectionInput AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html#cfn-glue-connection-connectioninput - ConnectionInput *AWSGlueConnection_ConnectionInput `json:"ConnectionInput,omitempty"` + ConnectionInput *Connection_ConnectionInput `json:"ConnectionInput,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGlueConnection struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueConnection) AWSCloudFormationType() string { +func (r *Connection) AWSCloudFormationType() string { return "AWS::Glue::Connection" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueConnection) DependsOn() []string { +func (r *Connection) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueConnection) SetDependsOn(dependencies []string) { +func (r *Connection) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueConnection) Metadata() map[string]interface{} { +func (r *Connection) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueConnection) SetMetadata(metadata map[string]interface{}) { +func (r *Connection) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueConnection) DeletionPolicy() policies.DeletionPolicy { +func (r *Connection) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueConnection) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Connection) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueConnection) MarshalJSON() ([]byte, error) { - type Properties AWSGlueConnection +func (r Connection) MarshalJSON() ([]byte, error) { + type Properties Connection return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGlueConnection) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueConnection) UnmarshalJSON(b []byte) error { - type Properties AWSGlueConnection +func (r *Connection) UnmarshalJSON(b []byte) error { + type Properties Connection res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGlueConnection) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueConnection(*res.Properties) + *r = Connection(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-connection_connectioninput.go b/cloudformation/glue/aws-glue-connection_connectioninput.go similarity index 78% rename from cloudformation/resources/aws-glue-connection_connectioninput.go rename to cloudformation/glue/aws-glue-connection_connectioninput.go index 4e5618d974..551c88f3fa 100644 --- a/cloudformation/resources/aws-glue-connection_connectioninput.go +++ b/cloudformation/glue/aws-glue-connection_connectioninput.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueConnection_ConnectionInput AWS CloudFormation Resource (AWS::Glue::Connection.ConnectionInput) +// Connection_ConnectionInput AWS CloudFormation Resource (AWS::Glue::Connection.ConnectionInput) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html -type AWSGlueConnection_ConnectionInput struct { +type Connection_ConnectionInput struct { // ConnectionProperties AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSGlueConnection_ConnectionInput struct { // PhysicalConnectionRequirements AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-physicalconnectionrequirements - PhysicalConnectionRequirements *AWSGlueConnection_PhysicalConnectionRequirements `json:"PhysicalConnectionRequirements,omitempty"` + PhysicalConnectionRequirements *Connection_PhysicalConnectionRequirements `json:"PhysicalConnectionRequirements,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,42 +49,42 @@ type AWSGlueConnection_ConnectionInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueConnection_ConnectionInput) AWSCloudFormationType() string { +func (r *Connection_ConnectionInput) AWSCloudFormationType() string { return "AWS::Glue::Connection.ConnectionInput" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueConnection_ConnectionInput) DependsOn() []string { +func (r *Connection_ConnectionInput) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueConnection_ConnectionInput) SetDependsOn(dependencies []string) { +func (r *Connection_ConnectionInput) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueConnection_ConnectionInput) Metadata() map[string]interface{} { +func (r *Connection_ConnectionInput) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueConnection_ConnectionInput) SetMetadata(metadata map[string]interface{}) { +func (r *Connection_ConnectionInput) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueConnection_ConnectionInput) DeletionPolicy() policies.DeletionPolicy { +func (r *Connection_ConnectionInput) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueConnection_ConnectionInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Connection_ConnectionInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/glue/aws-glue-connection_physicalconnectionrequirements.go b/cloudformation/glue/aws-glue-connection_physicalconnectionrequirements.go new file mode 100644 index 0000000000..332fbe1d0f --- /dev/null +++ b/cloudformation/glue/aws-glue-connection_physicalconnectionrequirements.go @@ -0,0 +1,75 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Connection_PhysicalConnectionRequirements AWS CloudFormation Resource (AWS::Glue::Connection.PhysicalConnectionRequirements) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html +type Connection_PhysicalConnectionRequirements struct { + + // AvailabilityZone AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-availabilityzone + AvailabilityZone string `json:"AvailabilityZone,omitempty"` + + // SecurityGroupIdList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-securitygroupidlist + SecurityGroupIdList []string `json:"SecurityGroupIdList,omitempty"` + + // SubnetId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-subnetid + SubnetId string `json:"SubnetId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Connection_PhysicalConnectionRequirements) AWSCloudFormationType() string { + return "AWS::Glue::Connection.PhysicalConnectionRequirements" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Connection_PhysicalConnectionRequirements) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Connection_PhysicalConnectionRequirements) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Connection_PhysicalConnectionRequirements) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Connection_PhysicalConnectionRequirements) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Connection_PhysicalConnectionRequirements) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Connection_PhysicalConnectionRequirements) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-crawler.go b/cloudformation/glue/aws-glue-crawler.go similarity index 85% rename from cloudformation/resources/aws-glue-crawler.go rename to cloudformation/glue/aws-glue-crawler.go index c4993cdbd9..15f68176ab 100644 --- a/cloudformation/resources/aws-glue-crawler.go +++ b/cloudformation/glue/aws-glue-crawler.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueCrawler AWS CloudFormation Resource (AWS::Glue::Crawler) +// Crawler AWS CloudFormation Resource (AWS::Glue::Crawler) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html -type AWSGlueCrawler struct { +type Crawler struct { // Classifiers AWS CloudFormation Property // Required: false @@ -49,12 +50,12 @@ type AWSGlueCrawler struct { // Schedule AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-schedule - Schedule *AWSGlueCrawler_Schedule `json:"Schedule,omitempty"` + Schedule *Crawler_Schedule `json:"Schedule,omitempty"` // SchemaChangePolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-schemachangepolicy - SchemaChangePolicy *AWSGlueCrawler_SchemaChangePolicy `json:"SchemaChangePolicy,omitempty"` + SchemaChangePolicy *Crawler_SchemaChangePolicy `json:"SchemaChangePolicy,omitempty"` // TablePrefix AWS CloudFormation Property // Required: false @@ -69,7 +70,7 @@ type AWSGlueCrawler struct { // Targets AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-targets - Targets *AWSGlueCrawler_Targets `json:"Targets,omitempty"` + Targets *Crawler_Targets `json:"Targets,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -82,50 +83,50 @@ type AWSGlueCrawler struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler) AWSCloudFormationType() string { +func (r *Crawler) AWSCloudFormationType() string { return "AWS::Glue::Crawler" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler) DependsOn() []string { +func (r *Crawler) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler) SetDependsOn(dependencies []string) { +func (r *Crawler) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler) Metadata() map[string]interface{} { +func (r *Crawler) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler) SetMetadata(metadata map[string]interface{}) { +func (r *Crawler) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler) DeletionPolicy() policies.DeletionPolicy { +func (r *Crawler) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Crawler) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueCrawler) MarshalJSON() ([]byte, error) { - type Properties AWSGlueCrawler +func (r Crawler) MarshalJSON() ([]byte, error) { + type Properties Crawler return json.Marshal(&struct { Type string Properties Properties @@ -143,8 +144,8 @@ func (r AWSGlueCrawler) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueCrawler) UnmarshalJSON(b []byte) error { - type Properties AWSGlueCrawler +func (r *Crawler) UnmarshalJSON(b []byte) error { + type Properties Crawler res := &struct { Type string Properties *Properties @@ -163,7 +164,7 @@ func (r *AWSGlueCrawler) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueCrawler(*res.Properties) + *r = Crawler(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-crawler_jdbctarget.go b/cloudformation/glue/aws-glue-crawler_jdbctarget.go similarity index 77% rename from cloudformation/resources/aws-glue-crawler_jdbctarget.go rename to cloudformation/glue/aws-glue-crawler_jdbctarget.go index fc8780b974..75b48f9fb7 100644 --- a/cloudformation/resources/aws-glue-crawler_jdbctarget.go +++ b/cloudformation/glue/aws-glue-crawler_jdbctarget.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueCrawler_JdbcTarget AWS CloudFormation Resource (AWS::Glue::Crawler.JdbcTarget) +// Crawler_JdbcTarget AWS CloudFormation Resource (AWS::Glue::Crawler.JdbcTarget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html -type AWSGlueCrawler_JdbcTarget struct { +type Crawler_JdbcTarget struct { // ConnectionName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGlueCrawler_JdbcTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler_JdbcTarget) AWSCloudFormationType() string { +func (r *Crawler_JdbcTarget) AWSCloudFormationType() string { return "AWS::Glue::Crawler.JdbcTarget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_JdbcTarget) DependsOn() []string { +func (r *Crawler_JdbcTarget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_JdbcTarget) SetDependsOn(dependencies []string) { +func (r *Crawler_JdbcTarget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_JdbcTarget) Metadata() map[string]interface{} { +func (r *Crawler_JdbcTarget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_JdbcTarget) SetMetadata(metadata map[string]interface{}) { +func (r *Crawler_JdbcTarget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_JdbcTarget) DeletionPolicy() policies.DeletionPolicy { +func (r *Crawler_JdbcTarget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_JdbcTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Crawler_JdbcTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-crawler_s3target.go b/cloudformation/glue/aws-glue-crawler_s3target.go similarity index 76% rename from cloudformation/resources/aws-glue-crawler_s3target.go rename to cloudformation/glue/aws-glue-crawler_s3target.go index 121f6141ef..2bddb2a0ff 100644 --- a/cloudformation/resources/aws-glue-crawler_s3target.go +++ b/cloudformation/glue/aws-glue-crawler_s3target.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueCrawler_S3Target AWS CloudFormation Resource (AWS::Glue::Crawler.S3Target) +// Crawler_S3Target AWS CloudFormation Resource (AWS::Glue::Crawler.S3Target) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-s3target.html -type AWSGlueCrawler_S3Target struct { +type Crawler_S3Target struct { // Exclusions AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGlueCrawler_S3Target struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler_S3Target) AWSCloudFormationType() string { +func (r *Crawler_S3Target) AWSCloudFormationType() string { return "AWS::Glue::Crawler.S3Target" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_S3Target) DependsOn() []string { +func (r *Crawler_S3Target) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_S3Target) SetDependsOn(dependencies []string) { +func (r *Crawler_S3Target) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_S3Target) Metadata() map[string]interface{} { +func (r *Crawler_S3Target) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_S3Target) SetMetadata(metadata map[string]interface{}) { +func (r *Crawler_S3Target) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_S3Target) DeletionPolicy() policies.DeletionPolicy { +func (r *Crawler_S3Target) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_S3Target) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Crawler_S3Target) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/glue/aws-glue-crawler_schedule.go b/cloudformation/glue/aws-glue-crawler_schedule.go new file mode 100644 index 0000000000..770b37434a --- /dev/null +++ b/cloudformation/glue/aws-glue-crawler_schedule.go @@ -0,0 +1,65 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Crawler_Schedule AWS CloudFormation Resource (AWS::Glue::Crawler.Schedule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schedule.html +type Crawler_Schedule struct { + + // ScheduleExpression AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schedule.html#cfn-glue-crawler-schedule-scheduleexpression + ScheduleExpression string `json:"ScheduleExpression,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Crawler_Schedule) AWSCloudFormationType() string { + return "AWS::Glue::Crawler.Schedule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Crawler_Schedule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Crawler_Schedule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Crawler_Schedule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Crawler_Schedule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Crawler_Schedule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Crawler_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-crawler_schemachangepolicy.go b/cloudformation/glue/aws-glue-crawler_schemachangepolicy.go new file mode 100644 index 0000000000..77f411fc9d --- /dev/null +++ b/cloudformation/glue/aws-glue-crawler_schemachangepolicy.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Crawler_SchemaChangePolicy AWS CloudFormation Resource (AWS::Glue::Crawler.SchemaChangePolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html +type Crawler_SchemaChangePolicy struct { + + // DeleteBehavior AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html#cfn-glue-crawler-schemachangepolicy-deletebehavior + DeleteBehavior string `json:"DeleteBehavior,omitempty"` + + // UpdateBehavior AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html#cfn-glue-crawler-schemachangepolicy-updatebehavior + UpdateBehavior string `json:"UpdateBehavior,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Crawler_SchemaChangePolicy) AWSCloudFormationType() string { + return "AWS::Glue::Crawler.SchemaChangePolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Crawler_SchemaChangePolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Crawler_SchemaChangePolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Crawler_SchemaChangePolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Crawler_SchemaChangePolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Crawler_SchemaChangePolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Crawler_SchemaChangePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-crawler_targets.go b/cloudformation/glue/aws-glue-crawler_targets.go new file mode 100644 index 0000000000..64543b664f --- /dev/null +++ b/cloudformation/glue/aws-glue-crawler_targets.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Crawler_Targets AWS CloudFormation Resource (AWS::Glue::Crawler.Targets) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html +type Crawler_Targets struct { + + // JdbcTargets AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-jdbctargets + JdbcTargets []Crawler_JdbcTarget `json:"JdbcTargets,omitempty"` + + // S3Targets AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-s3targets + S3Targets []Crawler_S3Target `json:"S3Targets,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Crawler_Targets) AWSCloudFormationType() string { + return "AWS::Glue::Crawler.Targets" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Crawler_Targets) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Crawler_Targets) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Crawler_Targets) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Crawler_Targets) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Crawler_Targets) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Crawler_Targets) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-database.go b/cloudformation/glue/aws-glue-database.go similarity index 80% rename from cloudformation/resources/aws-glue-database.go rename to cloudformation/glue/aws-glue-database.go index fe29925b9c..e6599541f9 100644 --- a/cloudformation/resources/aws-glue-database.go +++ b/cloudformation/glue/aws-glue-database.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueDatabase AWS CloudFormation Resource (AWS::Glue::Database) +// Database AWS CloudFormation Resource (AWS::Glue::Database) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html -type AWSGlueDatabase struct { +type Database struct { // CatalogId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGlueDatabase struct { // DatabaseInput AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html#cfn-glue-database-databaseinput - DatabaseInput *AWSGlueDatabase_DatabaseInput `json:"DatabaseInput,omitempty"` + DatabaseInput *Database_DatabaseInput `json:"DatabaseInput,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGlueDatabase struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDatabase) AWSCloudFormationType() string { +func (r *Database) AWSCloudFormationType() string { return "AWS::Glue::Database" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDatabase) DependsOn() []string { +func (r *Database) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDatabase) SetDependsOn(dependencies []string) { +func (r *Database) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDatabase) Metadata() map[string]interface{} { +func (r *Database) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDatabase) SetMetadata(metadata map[string]interface{}) { +func (r *Database) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDatabase) DeletionPolicy() policies.DeletionPolicy { +func (r *Database) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDatabase) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Database) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueDatabase) MarshalJSON() ([]byte, error) { - type Properties AWSGlueDatabase +func (r Database) MarshalJSON() ([]byte, error) { + type Properties Database return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGlueDatabase) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueDatabase) UnmarshalJSON(b []byte) error { - type Properties AWSGlueDatabase +func (r *Database) UnmarshalJSON(b []byte) error { + type Properties Database res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGlueDatabase) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueDatabase(*res.Properties) + *r = Database(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-database_databaseinput.go b/cloudformation/glue/aws-glue-database_databaseinput.go similarity index 78% rename from cloudformation/resources/aws-glue-database_databaseinput.go rename to cloudformation/glue/aws-glue-database_databaseinput.go index 8bb3919219..e63c1a21d8 100644 --- a/cloudformation/resources/aws-glue-database_databaseinput.go +++ b/cloudformation/glue/aws-glue-database_databaseinput.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueDatabase_DatabaseInput AWS CloudFormation Resource (AWS::Glue::Database.DatabaseInput) +// Database_DatabaseInput AWS CloudFormation Resource (AWS::Glue::Database.DatabaseInput) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html -type AWSGlueDatabase_DatabaseInput struct { +type Database_DatabaseInput struct { // Description AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSGlueDatabase_DatabaseInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDatabase_DatabaseInput) AWSCloudFormationType() string { +func (r *Database_DatabaseInput) AWSCloudFormationType() string { return "AWS::Glue::Database.DatabaseInput" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDatabase_DatabaseInput) DependsOn() []string { +func (r *Database_DatabaseInput) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDatabase_DatabaseInput) SetDependsOn(dependencies []string) { +func (r *Database_DatabaseInput) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDatabase_DatabaseInput) Metadata() map[string]interface{} { +func (r *Database_DatabaseInput) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDatabase_DatabaseInput) SetMetadata(metadata map[string]interface{}) { +func (r *Database_DatabaseInput) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDatabase_DatabaseInput) DeletionPolicy() policies.DeletionPolicy { +func (r *Database_DatabaseInput) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDatabase_DatabaseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Database_DatabaseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/glue/aws-glue-datacatalogencryptionsettings.go b/cloudformation/glue/aws-glue-datacatalogencryptionsettings.go new file mode 100644 index 0000000000..d74f5e8128 --- /dev/null +++ b/cloudformation/glue/aws-glue-datacatalogencryptionsettings.go @@ -0,0 +1,129 @@ +package glue + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataCatalogEncryptionSettings AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html +type DataCatalogEncryptionSettings struct { + + // CatalogId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-catalogid + CatalogId string `json:"CatalogId,omitempty"` + + // DataCatalogEncryptionSettings AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings + DataCatalogEncryptionSettings *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings `json:"DataCatalogEncryptionSettings,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataCatalogEncryptionSettings) AWSCloudFormationType() string { + return "AWS::Glue::DataCatalogEncryptionSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataCatalogEncryptionSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataCatalogEncryptionSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataCatalogEncryptionSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataCatalogEncryptionSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataCatalogEncryptionSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataCatalogEncryptionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r DataCatalogEncryptionSettings) MarshalJSON() ([]byte, error) { + type Properties DataCatalogEncryptionSettings + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *DataCatalogEncryptionSettings) UnmarshalJSON(b []byte) error { + type Properties DataCatalogEncryptionSettings + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = DataCatalogEncryptionSettings(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/glue/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go new file mode 100644 index 0000000000..441ba564f7 --- /dev/null +++ b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataCatalogEncryptionSettings_ConnectionPasswordEncryption AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.ConnectionPasswordEncryption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html +type DataCatalogEncryptionSettings_ConnectionPasswordEncryption struct { + + // KmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html#cfn-glue-datacatalogencryptionsettings-connectionpasswordencryption-kmskeyid + KmsKeyId string `json:"KmsKeyId,omitempty"` + + // ReturnConnectionPasswordEncrypted AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html#cfn-glue-datacatalogencryptionsettings-connectionpasswordencryption-returnconnectionpasswordencrypted + ReturnConnectionPasswordEncrypted bool `json:"ReturnConnectionPasswordEncrypted,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataCatalogEncryptionSettings_ConnectionPasswordEncryption) AWSCloudFormationType() string { + return "AWS::Glue::DataCatalogEncryptionSettings.ConnectionPasswordEncryption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataCatalogEncryptionSettings_ConnectionPasswordEncryption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataCatalogEncryptionSettings_ConnectionPasswordEncryption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataCatalogEncryptionSettings_ConnectionPasswordEncryption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go new file mode 100644 index 0000000000..9c4234f4af --- /dev/null +++ b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataCatalogEncryptionSettings_DataCatalogEncryptionSettings AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.DataCatalogEncryptionSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html +type DataCatalogEncryptionSettings_DataCatalogEncryptionSettings struct { + + // ConnectionPasswordEncryption AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings-connectionpasswordencryption + ConnectionPasswordEncryption *DataCatalogEncryptionSettings_ConnectionPasswordEncryption `json:"ConnectionPasswordEncryption,omitempty"` + + // EncryptionAtRest AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings-encryptionatrest + EncryptionAtRest *DataCatalogEncryptionSettings_EncryptionAtRest `json:"EncryptionAtRest,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings) AWSCloudFormationType() string { + return "AWS::Glue::DataCatalogEncryptionSettings.DataCatalogEncryptionSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-datacatalogencryptionsettings_encryptionatrest.go b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_encryptionatrest.go new file mode 100644 index 0000000000..461a06a569 --- /dev/null +++ b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_encryptionatrest.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataCatalogEncryptionSettings_EncryptionAtRest AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.EncryptionAtRest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html +type DataCatalogEncryptionSettings_EncryptionAtRest struct { + + // CatalogEncryptionMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html#cfn-glue-datacatalogencryptionsettings-encryptionatrest-catalogencryptionmode + CatalogEncryptionMode string `json:"CatalogEncryptionMode,omitempty"` + + // SseAwsKmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html#cfn-glue-datacatalogencryptionsettings-encryptionatrest-sseawskmskeyid + SseAwsKmsKeyId string `json:"SseAwsKmsKeyId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataCatalogEncryptionSettings_EncryptionAtRest) AWSCloudFormationType() string { + return "AWS::Glue::DataCatalogEncryptionSettings.EncryptionAtRest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataCatalogEncryptionSettings_EncryptionAtRest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataCatalogEncryptionSettings_EncryptionAtRest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataCatalogEncryptionSettings_EncryptionAtRest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataCatalogEncryptionSettings_EncryptionAtRest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataCatalogEncryptionSettings_EncryptionAtRest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataCatalogEncryptionSettings_EncryptionAtRest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-devendpoint.go b/cloudformation/glue/aws-glue-devendpoint.go similarity index 88% rename from cloudformation/resources/aws-glue-devendpoint.go rename to cloudformation/glue/aws-glue-devendpoint.go index 2b61af5df2..38d74d392f 100644 --- a/cloudformation/resources/aws-glue-devendpoint.go +++ b/cloudformation/glue/aws-glue-devendpoint.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueDevEndpoint AWS CloudFormation Resource (AWS::Glue::DevEndpoint) +// DevEndpoint AWS CloudFormation Resource (AWS::Glue::DevEndpoint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html -type AWSGlueDevEndpoint struct { +type DevEndpoint struct { // Arguments AWS CloudFormation Property // Required: false @@ -92,50 +93,50 @@ type AWSGlueDevEndpoint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDevEndpoint) AWSCloudFormationType() string { +func (r *DevEndpoint) AWSCloudFormationType() string { return "AWS::Glue::DevEndpoint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDevEndpoint) DependsOn() []string { +func (r *DevEndpoint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDevEndpoint) SetDependsOn(dependencies []string) { +func (r *DevEndpoint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDevEndpoint) Metadata() map[string]interface{} { +func (r *DevEndpoint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDevEndpoint) SetMetadata(metadata map[string]interface{}) { +func (r *DevEndpoint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDevEndpoint) DeletionPolicy() policies.DeletionPolicy { +func (r *DevEndpoint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDevEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DevEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueDevEndpoint) MarshalJSON() ([]byte, error) { - type Properties AWSGlueDevEndpoint +func (r DevEndpoint) MarshalJSON() ([]byte, error) { + type Properties DevEndpoint return json.Marshal(&struct { Type string Properties Properties @@ -153,8 +154,8 @@ func (r AWSGlueDevEndpoint) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueDevEndpoint) UnmarshalJSON(b []byte) error { - type Properties AWSGlueDevEndpoint +func (r *DevEndpoint) UnmarshalJSON(b []byte) error { + type Properties DevEndpoint res := &struct { Type string Properties *Properties @@ -173,7 +174,7 @@ func (r *AWSGlueDevEndpoint) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueDevEndpoint(*res.Properties) + *r = DevEndpoint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-job.go b/cloudformation/glue/aws-glue-job.go similarity index 87% rename from cloudformation/resources/aws-glue-job.go rename to cloudformation/glue/aws-glue-job.go index a8b2d9043f..f04f7f0d9b 100644 --- a/cloudformation/resources/aws-glue-job.go +++ b/cloudformation/glue/aws-glue-job.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueJob AWS CloudFormation Resource (AWS::Glue::Job) +// Job AWS CloudFormation Resource (AWS::Glue::Job) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html -type AWSGlueJob struct { +type Job struct { // AllocatedCapacity AWS CloudFormation Property // Required: false @@ -19,12 +20,12 @@ type AWSGlueJob struct { // Command AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-command - Command *AWSGlueJob_JobCommand `json:"Command,omitempty"` + Command *Job_JobCommand `json:"Command,omitempty"` // Connections AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-connections - Connections *AWSGlueJob_ConnectionsList `json:"Connections,omitempty"` + Connections *Job_ConnectionsList `json:"Connections,omitempty"` // DefaultArguments AWS CloudFormation Property // Required: false @@ -39,7 +40,7 @@ type AWSGlueJob struct { // ExecutionProperty AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-executionproperty - ExecutionProperty *AWSGlueJob_ExecutionProperty `json:"ExecutionProperty,omitempty"` + ExecutionProperty *Job_ExecutionProperty `json:"ExecutionProperty,omitempty"` // GlueVersion AWS CloudFormation Property // Required: false @@ -69,7 +70,7 @@ type AWSGlueJob struct { // NotificationProperty AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-notificationproperty - NotificationProperty *AWSGlueJob_NotificationProperty `json:"NotificationProperty,omitempty"` + NotificationProperty *Job_NotificationProperty `json:"NotificationProperty,omitempty"` // NumberOfWorkers AWS CloudFormation Property // Required: false @@ -112,50 +113,50 @@ type AWSGlueJob struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueJob) AWSCloudFormationType() string { +func (r *Job) AWSCloudFormationType() string { return "AWS::Glue::Job" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob) DependsOn() []string { +func (r *Job) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob) SetDependsOn(dependencies []string) { +func (r *Job) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob) Metadata() map[string]interface{} { +func (r *Job) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob) SetMetadata(metadata map[string]interface{}) { +func (r *Job) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob) DeletionPolicy() policies.DeletionPolicy { +func (r *Job) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Job) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueJob) MarshalJSON() ([]byte, error) { - type Properties AWSGlueJob +func (r Job) MarshalJSON() ([]byte, error) { + type Properties Job return json.Marshal(&struct { Type string Properties Properties @@ -173,8 +174,8 @@ func (r AWSGlueJob) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueJob) UnmarshalJSON(b []byte) error { - type Properties AWSGlueJob +func (r *Job) UnmarshalJSON(b []byte) error { + type Properties Job res := &struct { Type string Properties *Properties @@ -193,7 +194,7 @@ func (r *AWSGlueJob) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueJob(*res.Properties) + *r = Job(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/glue/aws-glue-job_connectionslist.go b/cloudformation/glue/aws-glue-job_connectionslist.go new file mode 100644 index 0000000000..09750b27af --- /dev/null +++ b/cloudformation/glue/aws-glue-job_connectionslist.go @@ -0,0 +1,65 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Job_ConnectionsList AWS CloudFormation Resource (AWS::Glue::Job.ConnectionsList) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-connectionslist.html +type Job_ConnectionsList struct { + + // Connections AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-connectionslist.html#cfn-glue-job-connectionslist-connections + Connections []string `json:"Connections,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Job_ConnectionsList) AWSCloudFormationType() string { + return "AWS::Glue::Job.ConnectionsList" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Job_ConnectionsList) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Job_ConnectionsList) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Job_ConnectionsList) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Job_ConnectionsList) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Job_ConnectionsList) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Job_ConnectionsList) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-job_executionproperty.go b/cloudformation/glue/aws-glue-job_executionproperty.go new file mode 100644 index 0000000000..e37c8a20eb --- /dev/null +++ b/cloudformation/glue/aws-glue-job_executionproperty.go @@ -0,0 +1,65 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Job_ExecutionProperty AWS CloudFormation Resource (AWS::Glue::Job.ExecutionProperty) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-executionproperty.html +type Job_ExecutionProperty struct { + + // MaxConcurrentRuns AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-executionproperty.html#cfn-glue-job-executionproperty-maxconcurrentruns + MaxConcurrentRuns float64 `json:"MaxConcurrentRuns,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Job_ExecutionProperty) AWSCloudFormationType() string { + return "AWS::Glue::Job.ExecutionProperty" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Job_ExecutionProperty) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Job_ExecutionProperty) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Job_ExecutionProperty) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Job_ExecutionProperty) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Job_ExecutionProperty) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Job_ExecutionProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-job_jobcommand.go b/cloudformation/glue/aws-glue-job_jobcommand.go similarity index 78% rename from cloudformation/resources/aws-glue-job_jobcommand.go rename to cloudformation/glue/aws-glue-job_jobcommand.go index 67f28895b2..0392a0ab27 100644 --- a/cloudformation/resources/aws-glue-job_jobcommand.go +++ b/cloudformation/glue/aws-glue-job_jobcommand.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueJob_JobCommand AWS CloudFormation Resource (AWS::Glue::Job.JobCommand) +// Job_JobCommand AWS CloudFormation Resource (AWS::Glue::Job.JobCommand) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html -type AWSGlueJob_JobCommand struct { +type Job_JobCommand struct { // Name AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGlueJob_JobCommand struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueJob_JobCommand) AWSCloudFormationType() string { +func (r *Job_JobCommand) AWSCloudFormationType() string { return "AWS::Glue::Job.JobCommand" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob_JobCommand) DependsOn() []string { +func (r *Job_JobCommand) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob_JobCommand) SetDependsOn(dependencies []string) { +func (r *Job_JobCommand) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob_JobCommand) Metadata() map[string]interface{} { +func (r *Job_JobCommand) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob_JobCommand) SetMetadata(metadata map[string]interface{}) { +func (r *Job_JobCommand) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob_JobCommand) DeletionPolicy() policies.DeletionPolicy { +func (r *Job_JobCommand) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob_JobCommand) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Job_JobCommand) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/glue/aws-glue-job_notificationproperty.go b/cloudformation/glue/aws-glue-job_notificationproperty.go new file mode 100644 index 0000000000..2c2fc50c79 --- /dev/null +++ b/cloudformation/glue/aws-glue-job_notificationproperty.go @@ -0,0 +1,65 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Job_NotificationProperty AWS CloudFormation Resource (AWS::Glue::Job.NotificationProperty) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-notificationproperty.html +type Job_NotificationProperty struct { + + // NotifyDelayAfter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-notificationproperty.html#cfn-glue-job-notificationproperty-notifydelayafter + NotifyDelayAfter int `json:"NotifyDelayAfter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Job_NotificationProperty) AWSCloudFormationType() string { + return "AWS::Glue::Job.NotificationProperty" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Job_NotificationProperty) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Job_NotificationProperty) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Job_NotificationProperty) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Job_NotificationProperty) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Job_NotificationProperty) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Job_NotificationProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-mltransform.go b/cloudformation/glue/aws-glue-mltransform.go similarity index 83% rename from cloudformation/resources/aws-glue-mltransform.go rename to cloudformation/glue/aws-glue-mltransform.go index 0118e8aa37..d87be8e8cb 100644 --- a/cloudformation/resources/aws-glue-mltransform.go +++ b/cloudformation/glue/aws-glue-mltransform.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueMLTransform AWS CloudFormation Resource (AWS::Glue::MLTransform) +// MLTransform AWS CloudFormation Resource (AWS::Glue::MLTransform) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html -type AWSGlueMLTransform struct { +type MLTransform struct { // Description AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSGlueMLTransform struct { // InputRecordTables AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-inputrecordtables - InputRecordTables *AWSGlueMLTransform_InputRecordTables `json:"InputRecordTables,omitempty"` + InputRecordTables *MLTransform_InputRecordTables `json:"InputRecordTables,omitempty"` // MaxCapacity AWS CloudFormation Property // Required: false @@ -54,7 +55,7 @@ type AWSGlueMLTransform struct { // TransformParameters AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-transformparameters - TransformParameters *AWSGlueMLTransform_TransformParameters `json:"TransformParameters,omitempty"` + TransformParameters *MLTransform_TransformParameters `json:"TransformParameters,omitempty"` // WorkerType AWS CloudFormation Property // Required: false @@ -72,50 +73,50 @@ type AWSGlueMLTransform struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueMLTransform) AWSCloudFormationType() string { +func (r *MLTransform) AWSCloudFormationType() string { return "AWS::Glue::MLTransform" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform) DependsOn() []string { +func (r *MLTransform) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform) SetDependsOn(dependencies []string) { +func (r *MLTransform) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform) Metadata() map[string]interface{} { +func (r *MLTransform) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform) SetMetadata(metadata map[string]interface{}) { +func (r *MLTransform) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform) DeletionPolicy() policies.DeletionPolicy { +func (r *MLTransform) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MLTransform) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueMLTransform) MarshalJSON() ([]byte, error) { - type Properties AWSGlueMLTransform +func (r MLTransform) MarshalJSON() ([]byte, error) { + type Properties MLTransform return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +134,8 @@ func (r AWSGlueMLTransform) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueMLTransform) UnmarshalJSON(b []byte) error { - type Properties AWSGlueMLTransform +func (r *MLTransform) UnmarshalJSON(b []byte) error { + type Properties MLTransform res := &struct { Type string Properties *Properties @@ -153,7 +154,7 @@ func (r *AWSGlueMLTransform) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueMLTransform(*res.Properties) + *r = MLTransform(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-mltransform_findmatchesparameters.go b/cloudformation/glue/aws-glue-mltransform_findmatchesparameters.go similarity index 79% rename from cloudformation/resources/aws-glue-mltransform_findmatchesparameters.go rename to cloudformation/glue/aws-glue-mltransform_findmatchesparameters.go index b95db66911..022b38a860 100644 --- a/cloudformation/resources/aws-glue-mltransform_findmatchesparameters.go +++ b/cloudformation/glue/aws-glue-mltransform_findmatchesparameters.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueMLTransform_FindMatchesParameters AWS CloudFormation Resource (AWS::Glue::MLTransform.FindMatchesParameters) +// MLTransform_FindMatchesParameters AWS CloudFormation Resource (AWS::Glue::MLTransform.FindMatchesParameters) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html -type AWSGlueMLTransform_FindMatchesParameters struct { +type MLTransform_FindMatchesParameters struct { // AccuracyCostTradeoff AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSGlueMLTransform_FindMatchesParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueMLTransform_FindMatchesParameters) AWSCloudFormationType() string { +func (r *MLTransform_FindMatchesParameters) AWSCloudFormationType() string { return "AWS::Glue::MLTransform.FindMatchesParameters" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform_FindMatchesParameters) DependsOn() []string { +func (r *MLTransform_FindMatchesParameters) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform_FindMatchesParameters) SetDependsOn(dependencies []string) { +func (r *MLTransform_FindMatchesParameters) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform_FindMatchesParameters) Metadata() map[string]interface{} { +func (r *MLTransform_FindMatchesParameters) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform_FindMatchesParameters) SetMetadata(metadata map[string]interface{}) { +func (r *MLTransform_FindMatchesParameters) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform_FindMatchesParameters) DeletionPolicy() policies.DeletionPolicy { +func (r *MLTransform_FindMatchesParameters) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform_FindMatchesParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MLTransform_FindMatchesParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-mltransform_gluetables.go b/cloudformation/glue/aws-glue-mltransform_gluetables.go similarity index 79% rename from cloudformation/resources/aws-glue-mltransform_gluetables.go rename to cloudformation/glue/aws-glue-mltransform_gluetables.go index e2ae76b930..0edda68413 100644 --- a/cloudformation/resources/aws-glue-mltransform_gluetables.go +++ b/cloudformation/glue/aws-glue-mltransform_gluetables.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueMLTransform_GlueTables AWS CloudFormation Resource (AWS::Glue::MLTransform.GlueTables) +// MLTransform_GlueTables AWS CloudFormation Resource (AWS::Glue::MLTransform.GlueTables) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html -type AWSGlueMLTransform_GlueTables struct { +type MLTransform_GlueTables struct { // CatalogId AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSGlueMLTransform_GlueTables struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueMLTransform_GlueTables) AWSCloudFormationType() string { +func (r *MLTransform_GlueTables) AWSCloudFormationType() string { return "AWS::Glue::MLTransform.GlueTables" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform_GlueTables) DependsOn() []string { +func (r *MLTransform_GlueTables) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform_GlueTables) SetDependsOn(dependencies []string) { +func (r *MLTransform_GlueTables) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform_GlueTables) Metadata() map[string]interface{} { +func (r *MLTransform_GlueTables) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform_GlueTables) SetMetadata(metadata map[string]interface{}) { +func (r *MLTransform_GlueTables) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform_GlueTables) DeletionPolicy() policies.DeletionPolicy { +func (r *MLTransform_GlueTables) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform_GlueTables) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MLTransform_GlueTables) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/glue/aws-glue-mltransform_inputrecordtables.go b/cloudformation/glue/aws-glue-mltransform_inputrecordtables.go new file mode 100644 index 0000000000..0b1248a80a --- /dev/null +++ b/cloudformation/glue/aws-glue-mltransform_inputrecordtables.go @@ -0,0 +1,65 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MLTransform_InputRecordTables AWS CloudFormation Resource (AWS::Glue::MLTransform.InputRecordTables) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables.html +type MLTransform_InputRecordTables struct { + + // GlueTables AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables.html#cfn-glue-mltransform-inputrecordtables-gluetables + GlueTables []MLTransform_GlueTables `json:"GlueTables,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MLTransform_InputRecordTables) AWSCloudFormationType() string { + return "AWS::Glue::MLTransform.InputRecordTables" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MLTransform_InputRecordTables) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MLTransform_InputRecordTables) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MLTransform_InputRecordTables) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MLTransform_InputRecordTables) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MLTransform_InputRecordTables) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MLTransform_InputRecordTables) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-mltransform_transformparameters.go b/cloudformation/glue/aws-glue-mltransform_transformparameters.go new file mode 100644 index 0000000000..6d9903e148 --- /dev/null +++ b/cloudformation/glue/aws-glue-mltransform_transformparameters.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MLTransform_TransformParameters AWS CloudFormation Resource (AWS::Glue::MLTransform.TransformParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html +type MLTransform_TransformParameters struct { + + // FindMatchesParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters + FindMatchesParameters *MLTransform_FindMatchesParameters `json:"FindMatchesParameters,omitempty"` + + // TransformType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html#cfn-glue-mltransform-transformparameters-transformtype + TransformType string `json:"TransformType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MLTransform_TransformParameters) AWSCloudFormationType() string { + return "AWS::Glue::MLTransform.TransformParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MLTransform_TransformParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MLTransform_TransformParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MLTransform_TransformParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MLTransform_TransformParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MLTransform_TransformParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MLTransform_TransformParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-partition.go b/cloudformation/glue/aws-glue-partition.go similarity index 81% rename from cloudformation/resources/aws-glue-partition.go rename to cloudformation/glue/aws-glue-partition.go index b8d3aaedad..82bcf0f8ec 100644 --- a/cloudformation/resources/aws-glue-partition.go +++ b/cloudformation/glue/aws-glue-partition.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGluePartition AWS CloudFormation Resource (AWS::Glue::Partition) +// Partition AWS CloudFormation Resource (AWS::Glue::Partition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html -type AWSGluePartition struct { +type Partition struct { // CatalogId AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSGluePartition struct { // PartitionInput AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-partitioninput - PartitionInput *AWSGluePartition_PartitionInput `json:"PartitionInput,omitempty"` + PartitionInput *Partition_PartitionInput `json:"PartitionInput,omitempty"` // TableName AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSGluePartition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGluePartition) AWSCloudFormationType() string { +func (r *Partition) AWSCloudFormationType() string { return "AWS::Glue::Partition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition) DependsOn() []string { +func (r *Partition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition) SetDependsOn(dependencies []string) { +func (r *Partition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition) Metadata() map[string]interface{} { +func (r *Partition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition) SetMetadata(metadata map[string]interface{}) { +func (r *Partition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition) DeletionPolicy() policies.DeletionPolicy { +func (r *Partition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Partition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGluePartition) MarshalJSON() ([]byte, error) { - type Properties AWSGluePartition +func (r Partition) MarshalJSON() ([]byte, error) { + type Properties Partition return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSGluePartition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGluePartition) UnmarshalJSON(b []byte) error { - type Properties AWSGluePartition +func (r *Partition) UnmarshalJSON(b []byte) error { + type Properties Partition res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSGluePartition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGluePartition(*res.Properties) + *r = Partition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-partition_column.go b/cloudformation/glue/aws-glue-partition_column.go similarity index 77% rename from cloudformation/resources/aws-glue-partition_column.go rename to cloudformation/glue/aws-glue-partition_column.go index 98c14cb908..fc17300db3 100644 --- a/cloudformation/resources/aws-glue-partition_column.go +++ b/cloudformation/glue/aws-glue-partition_column.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGluePartition_Column AWS CloudFormation Resource (AWS::Glue::Partition.Column) +// Partition_Column AWS CloudFormation Resource (AWS::Glue::Partition.Column) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html -type AWSGluePartition_Column struct { +type Partition_Column struct { // Comment AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGluePartition_Column struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGluePartition_Column) AWSCloudFormationType() string { +func (r *Partition_Column) AWSCloudFormationType() string { return "AWS::Glue::Partition.Column" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_Column) DependsOn() []string { +func (r *Partition_Column) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_Column) SetDependsOn(dependencies []string) { +func (r *Partition_Column) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_Column) Metadata() map[string]interface{} { +func (r *Partition_Column) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_Column) SetMetadata(metadata map[string]interface{}) { +func (r *Partition_Column) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_Column) DeletionPolicy() policies.DeletionPolicy { +func (r *Partition_Column) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_Column) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Partition_Column) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-partition_order.go b/cloudformation/glue/aws-glue-partition_order.go similarity index 76% rename from cloudformation/resources/aws-glue-partition_order.go rename to cloudformation/glue/aws-glue-partition_order.go index b8fcc95bad..f8b7b86d6e 100644 --- a/cloudformation/resources/aws-glue-partition_order.go +++ b/cloudformation/glue/aws-glue-partition_order.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGluePartition_Order AWS CloudFormation Resource (AWS::Glue::Partition.Order) +// Partition_Order AWS CloudFormation Resource (AWS::Glue::Partition.Order) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-order.html -type AWSGluePartition_Order struct { +type Partition_Order struct { // Column AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGluePartition_Order struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGluePartition_Order) AWSCloudFormationType() string { +func (r *Partition_Order) AWSCloudFormationType() string { return "AWS::Glue::Partition.Order" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_Order) DependsOn() []string { +func (r *Partition_Order) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_Order) SetDependsOn(dependencies []string) { +func (r *Partition_Order) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_Order) Metadata() map[string]interface{} { +func (r *Partition_Order) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_Order) SetMetadata(metadata map[string]interface{}) { +func (r *Partition_Order) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_Order) DeletionPolicy() policies.DeletionPolicy { +func (r *Partition_Order) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_Order) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Partition_Order) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/glue/aws-glue-partition_partitioninput.go b/cloudformation/glue/aws-glue-partition_partitioninput.go new file mode 100644 index 0000000000..28338425b5 --- /dev/null +++ b/cloudformation/glue/aws-glue-partition_partitioninput.go @@ -0,0 +1,75 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Partition_PartitionInput AWS CloudFormation Resource (AWS::Glue::Partition.PartitionInput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html +type Partition_PartitionInput struct { + + // Parameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-parameters + Parameters interface{} `json:"Parameters,omitempty"` + + // StorageDescriptor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-storagedescriptor + StorageDescriptor *Partition_StorageDescriptor `json:"StorageDescriptor,omitempty"` + + // Values AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Partition_PartitionInput) AWSCloudFormationType() string { + return "AWS::Glue::Partition.PartitionInput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Partition_PartitionInput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Partition_PartitionInput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Partition_PartitionInput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Partition_PartitionInput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Partition_PartitionInput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Partition_PartitionInput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-partition_serdeinfo.go b/cloudformation/glue/aws-glue-partition_serdeinfo.go similarity index 77% rename from cloudformation/resources/aws-glue-partition_serdeinfo.go rename to cloudformation/glue/aws-glue-partition_serdeinfo.go index c3d6e4f936..edf7d84885 100644 --- a/cloudformation/resources/aws-glue-partition_serdeinfo.go +++ b/cloudformation/glue/aws-glue-partition_serdeinfo.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGluePartition_SerdeInfo AWS CloudFormation Resource (AWS::Glue::Partition.SerdeInfo) +// Partition_SerdeInfo AWS CloudFormation Resource (AWS::Glue::Partition.SerdeInfo) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html -type AWSGluePartition_SerdeInfo struct { +type Partition_SerdeInfo struct { // Name AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGluePartition_SerdeInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGluePartition_SerdeInfo) AWSCloudFormationType() string { +func (r *Partition_SerdeInfo) AWSCloudFormationType() string { return "AWS::Glue::Partition.SerdeInfo" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_SerdeInfo) DependsOn() []string { +func (r *Partition_SerdeInfo) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_SerdeInfo) SetDependsOn(dependencies []string) { +func (r *Partition_SerdeInfo) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_SerdeInfo) Metadata() map[string]interface{} { +func (r *Partition_SerdeInfo) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_SerdeInfo) SetMetadata(metadata map[string]interface{}) { +func (r *Partition_SerdeInfo) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_SerdeInfo) DeletionPolicy() policies.DeletionPolicy { +func (r *Partition_SerdeInfo) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_SerdeInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Partition_SerdeInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-partition_skewedinfo.go b/cloudformation/glue/aws-glue-partition_skewedinfo.go similarity index 78% rename from cloudformation/resources/aws-glue-partition_skewedinfo.go rename to cloudformation/glue/aws-glue-partition_skewedinfo.go index c5526af1d7..bb36d997d9 100644 --- a/cloudformation/resources/aws-glue-partition_skewedinfo.go +++ b/cloudformation/glue/aws-glue-partition_skewedinfo.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGluePartition_SkewedInfo AWS CloudFormation Resource (AWS::Glue::Partition.SkewedInfo) +// Partition_SkewedInfo AWS CloudFormation Resource (AWS::Glue::Partition.SkewedInfo) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html -type AWSGluePartition_SkewedInfo struct { +type Partition_SkewedInfo struct { // SkewedColumnNames AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGluePartition_SkewedInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGluePartition_SkewedInfo) AWSCloudFormationType() string { +func (r *Partition_SkewedInfo) AWSCloudFormationType() string { return "AWS::Glue::Partition.SkewedInfo" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_SkewedInfo) DependsOn() []string { +func (r *Partition_SkewedInfo) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_SkewedInfo) SetDependsOn(dependencies []string) { +func (r *Partition_SkewedInfo) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_SkewedInfo) Metadata() map[string]interface{} { +func (r *Partition_SkewedInfo) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_SkewedInfo) SetMetadata(metadata map[string]interface{}) { +func (r *Partition_SkewedInfo) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_SkewedInfo) DeletionPolicy() policies.DeletionPolicy { +func (r *Partition_SkewedInfo) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_SkewedInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Partition_SkewedInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-partition_storagedescriptor.go b/cloudformation/glue/aws-glue-partition_storagedescriptor.go similarity index 82% rename from cloudformation/resources/aws-glue-partition_storagedescriptor.go rename to cloudformation/glue/aws-glue-partition_storagedescriptor.go index fc04fc40e5..dd26ce7b61 100644 --- a/cloudformation/resources/aws-glue-partition_storagedescriptor.go +++ b/cloudformation/glue/aws-glue-partition_storagedescriptor.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGluePartition_StorageDescriptor AWS CloudFormation Resource (AWS::Glue::Partition.StorageDescriptor) +// Partition_StorageDescriptor AWS CloudFormation Resource (AWS::Glue::Partition.StorageDescriptor) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html -type AWSGluePartition_StorageDescriptor struct { +type Partition_StorageDescriptor struct { // BucketColumns AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSGluePartition_StorageDescriptor struct { // Columns AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-columns - Columns []AWSGluePartition_Column `json:"Columns,omitempty"` + Columns []Partition_Column `json:"Columns,omitempty"` // Compressed AWS CloudFormation Property // Required: false @@ -49,17 +51,17 @@ type AWSGluePartition_StorageDescriptor struct { // SerdeInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-serdeinfo - SerdeInfo *AWSGluePartition_SerdeInfo `json:"SerdeInfo,omitempty"` + SerdeInfo *Partition_SerdeInfo `json:"SerdeInfo,omitempty"` // SkewedInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-skewedinfo - SkewedInfo *AWSGluePartition_SkewedInfo `json:"SkewedInfo,omitempty"` + SkewedInfo *Partition_SkewedInfo `json:"SkewedInfo,omitempty"` // SortColumns AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-sortcolumns - SortColumns []AWSGluePartition_Order `json:"SortColumns,omitempty"` + SortColumns []Partition_Order `json:"SortColumns,omitempty"` // StoredAsSubDirectories AWS CloudFormation Property // Required: false @@ -77,42 +79,42 @@ type AWSGluePartition_StorageDescriptor struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGluePartition_StorageDescriptor) AWSCloudFormationType() string { +func (r *Partition_StorageDescriptor) AWSCloudFormationType() string { return "AWS::Glue::Partition.StorageDescriptor" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_StorageDescriptor) DependsOn() []string { +func (r *Partition_StorageDescriptor) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_StorageDescriptor) SetDependsOn(dependencies []string) { +func (r *Partition_StorageDescriptor) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_StorageDescriptor) Metadata() map[string]interface{} { +func (r *Partition_StorageDescriptor) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_StorageDescriptor) SetMetadata(metadata map[string]interface{}) { +func (r *Partition_StorageDescriptor) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_StorageDescriptor) DeletionPolicy() policies.DeletionPolicy { +func (r *Partition_StorageDescriptor) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_StorageDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Partition_StorageDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-securityconfiguration.go b/cloudformation/glue/aws-glue-securityconfiguration.go similarity index 76% rename from cloudformation/resources/aws-glue-securityconfiguration.go rename to cloudformation/glue/aws-glue-securityconfiguration.go index e3e38440d2..9fbcf8f320 100644 --- a/cloudformation/resources/aws-glue-securityconfiguration.go +++ b/cloudformation/glue/aws-glue-securityconfiguration.go @@ -1,20 +1,21 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueSecurityConfiguration AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration) +// SecurityConfiguration AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html -type AWSGlueSecurityConfiguration struct { +type SecurityConfiguration struct { // EncryptionConfiguration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration - EncryptionConfiguration *AWSGlueSecurityConfiguration_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` + EncryptionConfiguration *SecurityConfiguration_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSGlueSecurityConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration) AWSCloudFormationType() string { +func (r *SecurityConfiguration) AWSCloudFormationType() string { return "AWS::Glue::SecurityConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration) DependsOn() []string { +func (r *SecurityConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration) SetDependsOn(dependencies []string) { +func (r *SecurityConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration) Metadata() map[string]interface{} { +func (r *SecurityConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *SecurityConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *SecurityConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueSecurityConfiguration) MarshalJSON() ([]byte, error) { - type Properties AWSGlueSecurityConfiguration +func (r SecurityConfiguration) MarshalJSON() ([]byte, error) { + type Properties SecurityConfiguration return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGlueSecurityConfiguration) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueSecurityConfiguration) UnmarshalJSON(b []byte) error { - type Properties AWSGlueSecurityConfiguration +func (r *SecurityConfiguration) UnmarshalJSON(b []byte) error { + type Properties SecurityConfiguration res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGlueSecurityConfiguration) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueSecurityConfiguration(*res.Properties) + *r = SecurityConfiguration(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/glue/aws-glue-securityconfiguration_cloudwatchencryption.go b/cloudformation/glue/aws-glue-securityconfiguration_cloudwatchencryption.go new file mode 100644 index 0000000000..94c7f6ae5f --- /dev/null +++ b/cloudformation/glue/aws-glue-securityconfiguration_cloudwatchencryption.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SecurityConfiguration_CloudWatchEncryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.CloudWatchEncryption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html +type SecurityConfiguration_CloudWatchEncryption struct { + + // CloudWatchEncryptionMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html#cfn-glue-securityconfiguration-cloudwatchencryption-cloudwatchencryptionmode + CloudWatchEncryptionMode string `json:"CloudWatchEncryptionMode,omitempty"` + + // KmsKeyArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html#cfn-glue-securityconfiguration-cloudwatchencryption-kmskeyarn + KmsKeyArn string `json:"KmsKeyArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SecurityConfiguration_CloudWatchEncryption) AWSCloudFormationType() string { + return "AWS::Glue::SecurityConfiguration.CloudWatchEncryption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_CloudWatchEncryption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_CloudWatchEncryption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_CloudWatchEncryption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_CloudWatchEncryption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_CloudWatchEncryption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_CloudWatchEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-securityconfiguration_encryptionconfiguration.go b/cloudformation/glue/aws-glue-securityconfiguration_encryptionconfiguration.go new file mode 100644 index 0000000000..64aaf68af6 --- /dev/null +++ b/cloudformation/glue/aws-glue-securityconfiguration_encryptionconfiguration.go @@ -0,0 +1,75 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SecurityConfiguration_EncryptionConfiguration AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.EncryptionConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html +type SecurityConfiguration_EncryptionConfiguration struct { + + // CloudWatchEncryption AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-cloudwatchencryption + CloudWatchEncryption *SecurityConfiguration_CloudWatchEncryption `json:"CloudWatchEncryption,omitempty"` + + // JobBookmarksEncryption AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-jobbookmarksencryption + JobBookmarksEncryption *SecurityConfiguration_JobBookmarksEncryption `json:"JobBookmarksEncryption,omitempty"` + + // S3Encryptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-s3encryptions + S3Encryptions *SecurityConfiguration_S3Encryptions `json:"S3Encryptions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SecurityConfiguration_EncryptionConfiguration) AWSCloudFormationType() string { + return "AWS::Glue::SecurityConfiguration.EncryptionConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_EncryptionConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_EncryptionConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_EncryptionConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-securityconfiguration_jobbookmarksencryption.go b/cloudformation/glue/aws-glue-securityconfiguration_jobbookmarksencryption.go new file mode 100644 index 0000000000..8e4cdbed92 --- /dev/null +++ b/cloudformation/glue/aws-glue-securityconfiguration_jobbookmarksencryption.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SecurityConfiguration_JobBookmarksEncryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.JobBookmarksEncryption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html +type SecurityConfiguration_JobBookmarksEncryption struct { + + // JobBookmarksEncryptionMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html#cfn-glue-securityconfiguration-jobbookmarksencryption-jobbookmarksencryptionmode + JobBookmarksEncryptionMode string `json:"JobBookmarksEncryptionMode,omitempty"` + + // KmsKeyArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html#cfn-glue-securityconfiguration-jobbookmarksencryption-kmskeyarn + KmsKeyArn string `json:"KmsKeyArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SecurityConfiguration_JobBookmarksEncryption) AWSCloudFormationType() string { + return "AWS::Glue::SecurityConfiguration.JobBookmarksEncryption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_JobBookmarksEncryption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_JobBookmarksEncryption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_JobBookmarksEncryption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_JobBookmarksEncryption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_JobBookmarksEncryption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_JobBookmarksEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-securityconfiguration_s3encryption.go b/cloudformation/glue/aws-glue-securityconfiguration_s3encryption.go new file mode 100644 index 0000000000..0ed698e467 --- /dev/null +++ b/cloudformation/glue/aws-glue-securityconfiguration_s3encryption.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SecurityConfiguration_S3Encryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.S3Encryption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html +type SecurityConfiguration_S3Encryption struct { + + // KmsKeyArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html#cfn-glue-securityconfiguration-s3encryption-kmskeyarn + KmsKeyArn string `json:"KmsKeyArn,omitempty"` + + // S3EncryptionMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html#cfn-glue-securityconfiguration-s3encryption-s3encryptionmode + S3EncryptionMode string `json:"S3EncryptionMode,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SecurityConfiguration_S3Encryption) AWSCloudFormationType() string { + return "AWS::Glue::SecurityConfiguration.S3Encryption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_S3Encryption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_S3Encryption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_S3Encryption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_S3Encryption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_S3Encryption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_S3Encryption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-securityconfiguration_s3encryptions.go b/cloudformation/glue/aws-glue-securityconfiguration_s3encryptions.go new file mode 100644 index 0000000000..d8419ef9e8 --- /dev/null +++ b/cloudformation/glue/aws-glue-securityconfiguration_s3encryptions.go @@ -0,0 +1,60 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SecurityConfiguration_S3Encryptions AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.S3Encryptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryptions.html +type SecurityConfiguration_S3Encryptions struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SecurityConfiguration_S3Encryptions) AWSCloudFormationType() string { + return "AWS::Glue::SecurityConfiguration.S3Encryptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_S3Encryptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SecurityConfiguration_S3Encryptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_S3Encryptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SecurityConfiguration_S3Encryptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_S3Encryptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SecurityConfiguration_S3Encryptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-table.go b/cloudformation/glue/aws-glue-table.go similarity index 81% rename from cloudformation/resources/aws-glue-table.go rename to cloudformation/glue/aws-glue-table.go index 2fa6224138..6ea35e7b33 100644 --- a/cloudformation/resources/aws-glue-table.go +++ b/cloudformation/glue/aws-glue-table.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueTable AWS CloudFormation Resource (AWS::Glue::Table) +// Table AWS CloudFormation Resource (AWS::Glue::Table) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html -type AWSGlueTable struct { +type Table struct { // CatalogId AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSGlueTable struct { // TableInput AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html#cfn-glue-table-tableinput - TableInput *AWSGlueTable_TableInput `json:"TableInput,omitempty"` + TableInput *Table_TableInput `json:"TableInput,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSGlueTable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTable) AWSCloudFormationType() string { +func (r *Table) AWSCloudFormationType() string { return "AWS::Glue::Table" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable) DependsOn() []string { +func (r *Table) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable) SetDependsOn(dependencies []string) { +func (r *Table) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable) Metadata() map[string]interface{} { +func (r *Table) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable) SetMetadata(metadata map[string]interface{}) { +func (r *Table) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable) DeletionPolicy() policies.DeletionPolicy { +func (r *Table) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueTable) MarshalJSON() ([]byte, error) { - type Properties AWSGlueTable +func (r Table) MarshalJSON() ([]byte, error) { + type Properties Table return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGlueTable) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueTable) UnmarshalJSON(b []byte) error { - type Properties AWSGlueTable +func (r *Table) UnmarshalJSON(b []byte) error { + type Properties Table res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGlueTable) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueTable(*res.Properties) + *r = Table(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-table_column.go b/cloudformation/glue/aws-glue-table_column.go similarity index 78% rename from cloudformation/resources/aws-glue-table_column.go rename to cloudformation/glue/aws-glue-table_column.go index c9cb25963f..e8bddc8cce 100644 --- a/cloudformation/resources/aws-glue-table_column.go +++ b/cloudformation/glue/aws-glue-table_column.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTable_Column AWS CloudFormation Resource (AWS::Glue::Table.Column) +// Table_Column AWS CloudFormation Resource (AWS::Glue::Table.Column) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html -type AWSGlueTable_Column struct { +type Table_Column struct { // Comment AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGlueTable_Column struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTable_Column) AWSCloudFormationType() string { +func (r *Table_Column) AWSCloudFormationType() string { return "AWS::Glue::Table.Column" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_Column) DependsOn() []string { +func (r *Table_Column) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_Column) SetDependsOn(dependencies []string) { +func (r *Table_Column) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_Column) Metadata() map[string]interface{} { +func (r *Table_Column) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_Column) SetMetadata(metadata map[string]interface{}) { +func (r *Table_Column) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_Column) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_Column) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_Column) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_Column) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-table_order.go b/cloudformation/glue/aws-glue-table_order.go similarity index 77% rename from cloudformation/resources/aws-glue-table_order.go rename to cloudformation/glue/aws-glue-table_order.go index c6e2ed29c2..ba15e00c86 100644 --- a/cloudformation/resources/aws-glue-table_order.go +++ b/cloudformation/glue/aws-glue-table_order.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTable_Order AWS CloudFormation Resource (AWS::Glue::Table.Order) +// Table_Order AWS CloudFormation Resource (AWS::Glue::Table.Order) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-order.html -type AWSGlueTable_Order struct { +type Table_Order struct { // Column AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGlueTable_Order struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTable_Order) AWSCloudFormationType() string { +func (r *Table_Order) AWSCloudFormationType() string { return "AWS::Glue::Table.Order" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_Order) DependsOn() []string { +func (r *Table_Order) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_Order) SetDependsOn(dependencies []string) { +func (r *Table_Order) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_Order) Metadata() map[string]interface{} { +func (r *Table_Order) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_Order) SetMetadata(metadata map[string]interface{}) { +func (r *Table_Order) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_Order) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_Order) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_Order) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_Order) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-table_serdeinfo.go b/cloudformation/glue/aws-glue-table_serdeinfo.go similarity index 78% rename from cloudformation/resources/aws-glue-table_serdeinfo.go rename to cloudformation/glue/aws-glue-table_serdeinfo.go index eda2b3eb78..587dce1b66 100644 --- a/cloudformation/resources/aws-glue-table_serdeinfo.go +++ b/cloudformation/glue/aws-glue-table_serdeinfo.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTable_SerdeInfo AWS CloudFormation Resource (AWS::Glue::Table.SerdeInfo) +// Table_SerdeInfo AWS CloudFormation Resource (AWS::Glue::Table.SerdeInfo) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html -type AWSGlueTable_SerdeInfo struct { +type Table_SerdeInfo struct { // Name AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGlueTable_SerdeInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTable_SerdeInfo) AWSCloudFormationType() string { +func (r *Table_SerdeInfo) AWSCloudFormationType() string { return "AWS::Glue::Table.SerdeInfo" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_SerdeInfo) DependsOn() []string { +func (r *Table_SerdeInfo) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_SerdeInfo) SetDependsOn(dependencies []string) { +func (r *Table_SerdeInfo) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_SerdeInfo) Metadata() map[string]interface{} { +func (r *Table_SerdeInfo) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_SerdeInfo) SetMetadata(metadata map[string]interface{}) { +func (r *Table_SerdeInfo) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_SerdeInfo) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_SerdeInfo) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_SerdeInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_SerdeInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-table_skewedinfo.go b/cloudformation/glue/aws-glue-table_skewedinfo.go similarity index 79% rename from cloudformation/resources/aws-glue-table_skewedinfo.go rename to cloudformation/glue/aws-glue-table_skewedinfo.go index ae0d9e6a44..2d3643bb65 100644 --- a/cloudformation/resources/aws-glue-table_skewedinfo.go +++ b/cloudformation/glue/aws-glue-table_skewedinfo.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTable_SkewedInfo AWS CloudFormation Resource (AWS::Glue::Table.SkewedInfo) +// Table_SkewedInfo AWS CloudFormation Resource (AWS::Glue::Table.SkewedInfo) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html -type AWSGlueTable_SkewedInfo struct { +type Table_SkewedInfo struct { // SkewedColumnNames AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGlueTable_SkewedInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTable_SkewedInfo) AWSCloudFormationType() string { +func (r *Table_SkewedInfo) AWSCloudFormationType() string { return "AWS::Glue::Table.SkewedInfo" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_SkewedInfo) DependsOn() []string { +func (r *Table_SkewedInfo) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_SkewedInfo) SetDependsOn(dependencies []string) { +func (r *Table_SkewedInfo) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_SkewedInfo) Metadata() map[string]interface{} { +func (r *Table_SkewedInfo) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_SkewedInfo) SetMetadata(metadata map[string]interface{}) { +func (r *Table_SkewedInfo) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_SkewedInfo) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_SkewedInfo) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_SkewedInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_SkewedInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-table_storagedescriptor.go b/cloudformation/glue/aws-glue-table_storagedescriptor.go similarity index 82% rename from cloudformation/resources/aws-glue-table_storagedescriptor.go rename to cloudformation/glue/aws-glue-table_storagedescriptor.go index d0649e36b3..21e2a34c64 100644 --- a/cloudformation/resources/aws-glue-table_storagedescriptor.go +++ b/cloudformation/glue/aws-glue-table_storagedescriptor.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTable_StorageDescriptor AWS CloudFormation Resource (AWS::Glue::Table.StorageDescriptor) +// Table_StorageDescriptor AWS CloudFormation Resource (AWS::Glue::Table.StorageDescriptor) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html -type AWSGlueTable_StorageDescriptor struct { +type Table_StorageDescriptor struct { // BucketColumns AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSGlueTable_StorageDescriptor struct { // Columns AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-columns - Columns []AWSGlueTable_Column `json:"Columns,omitempty"` + Columns []Table_Column `json:"Columns,omitempty"` // Compressed AWS CloudFormation Property // Required: false @@ -49,17 +51,17 @@ type AWSGlueTable_StorageDescriptor struct { // SerdeInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-serdeinfo - SerdeInfo *AWSGlueTable_SerdeInfo `json:"SerdeInfo,omitempty"` + SerdeInfo *Table_SerdeInfo `json:"SerdeInfo,omitempty"` // SkewedInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-skewedinfo - SkewedInfo *AWSGlueTable_SkewedInfo `json:"SkewedInfo,omitempty"` + SkewedInfo *Table_SkewedInfo `json:"SkewedInfo,omitempty"` // SortColumns AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-sortcolumns - SortColumns []AWSGlueTable_Order `json:"SortColumns,omitempty"` + SortColumns []Table_Order `json:"SortColumns,omitempty"` // StoredAsSubDirectories AWS CloudFormation Property // Required: false @@ -77,42 +79,42 @@ type AWSGlueTable_StorageDescriptor struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTable_StorageDescriptor) AWSCloudFormationType() string { +func (r *Table_StorageDescriptor) AWSCloudFormationType() string { return "AWS::Glue::Table.StorageDescriptor" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_StorageDescriptor) DependsOn() []string { +func (r *Table_StorageDescriptor) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_StorageDescriptor) SetDependsOn(dependencies []string) { +func (r *Table_StorageDescriptor) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_StorageDescriptor) Metadata() map[string]interface{} { +func (r *Table_StorageDescriptor) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_StorageDescriptor) SetMetadata(metadata map[string]interface{}) { +func (r *Table_StorageDescriptor) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_StorageDescriptor) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_StorageDescriptor) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_StorageDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_StorageDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-table_tableinput.go b/cloudformation/glue/aws-glue-table_tableinput.go similarity index 83% rename from cloudformation/resources/aws-glue-table_tableinput.go rename to cloudformation/glue/aws-glue-table_tableinput.go index 2360d18742..e3aae97151 100644 --- a/cloudformation/resources/aws-glue-table_tableinput.go +++ b/cloudformation/glue/aws-glue-table_tableinput.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTable_TableInput AWS CloudFormation Resource (AWS::Glue::Table.TableInput) +// Table_TableInput AWS CloudFormation Resource (AWS::Glue::Table.TableInput) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html -type AWSGlueTable_TableInput struct { +type Table_TableInput struct { // Description AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSGlueTable_TableInput struct { // PartitionKeys AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-partitionkeys - PartitionKeys []AWSGlueTable_Column `json:"PartitionKeys,omitempty"` + PartitionKeys []Table_Column `json:"PartitionKeys,omitempty"` // Retention AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSGlueTable_TableInput struct { // StorageDescriptor AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-storagedescriptor - StorageDescriptor *AWSGlueTable_StorageDescriptor `json:"StorageDescriptor,omitempty"` + StorageDescriptor *Table_StorageDescriptor `json:"StorageDescriptor,omitempty"` // TableType AWS CloudFormation Property // Required: false @@ -67,42 +69,42 @@ type AWSGlueTable_TableInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTable_TableInput) AWSCloudFormationType() string { +func (r *Table_TableInput) AWSCloudFormationType() string { return "AWS::Glue::Table.TableInput" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_TableInput) DependsOn() []string { +func (r *Table_TableInput) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTable_TableInput) SetDependsOn(dependencies []string) { +func (r *Table_TableInput) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_TableInput) Metadata() map[string]interface{} { +func (r *Table_TableInput) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTable_TableInput) SetMetadata(metadata map[string]interface{}) { +func (r *Table_TableInput) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_TableInput) DeletionPolicy() policies.DeletionPolicy { +func (r *Table_TableInput) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTable_TableInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_TableInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-trigger.go b/cloudformation/glue/aws-glue-trigger.go similarity index 84% rename from cloudformation/resources/aws-glue-trigger.go rename to cloudformation/glue/aws-glue-trigger.go index 4d4b15d009..f974ab44f6 100644 --- a/cloudformation/resources/aws-glue-trigger.go +++ b/cloudformation/glue/aws-glue-trigger.go @@ -1,20 +1,21 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueTrigger AWS CloudFormation Resource (AWS::Glue::Trigger) +// Trigger AWS CloudFormation Resource (AWS::Glue::Trigger) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html -type AWSGlueTrigger struct { +type Trigger struct { // Actions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-actions - Actions []AWSGlueTrigger_Action `json:"Actions,omitempty"` + Actions []Trigger_Action `json:"Actions,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSGlueTrigger struct { // Predicate AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-predicate - Predicate *AWSGlueTrigger_Predicate `json:"Predicate,omitempty"` + Predicate *Trigger_Predicate `json:"Predicate,omitempty"` // Schedule AWS CloudFormation Property // Required: false @@ -67,50 +68,50 @@ type AWSGlueTrigger struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTrigger) AWSCloudFormationType() string { +func (r *Trigger) AWSCloudFormationType() string { return "AWS::Glue::Trigger" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger) DependsOn() []string { +func (r *Trigger) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger) SetDependsOn(dependencies []string) { +func (r *Trigger) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger) Metadata() map[string]interface{} { +func (r *Trigger) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger) SetMetadata(metadata map[string]interface{}) { +func (r *Trigger) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger) DeletionPolicy() policies.DeletionPolicy { +func (r *Trigger) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Trigger) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueTrigger) MarshalJSON() ([]byte, error) { - type Properties AWSGlueTrigger +func (r Trigger) MarshalJSON() ([]byte, error) { + type Properties Trigger return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSGlueTrigger) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueTrigger) UnmarshalJSON(b []byte) error { - type Properties AWSGlueTrigger +func (r *Trigger) UnmarshalJSON(b []byte) error { + type Properties Trigger res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSGlueTrigger) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueTrigger(*res.Properties) + *r = Trigger(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-trigger_action.go b/cloudformation/glue/aws-glue-trigger_action.go similarity index 80% rename from cloudformation/resources/aws-glue-trigger_action.go rename to cloudformation/glue/aws-glue-trigger_action.go index 086c0c54f7..475c90dfa9 100644 --- a/cloudformation/resources/aws-glue-trigger_action.go +++ b/cloudformation/glue/aws-glue-trigger_action.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTrigger_Action AWS CloudFormation Resource (AWS::Glue::Trigger.Action) +// Trigger_Action AWS CloudFormation Resource (AWS::Glue::Trigger.Action) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html -type AWSGlueTrigger_Action struct { +type Trigger_Action struct { // Arguments AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSGlueTrigger_Action struct { // NotificationProperty AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-notificationproperty - NotificationProperty *AWSGlueTrigger_NotificationProperty `json:"NotificationProperty,omitempty"` + NotificationProperty *Trigger_NotificationProperty `json:"NotificationProperty,omitempty"` // SecurityConfiguration AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSGlueTrigger_Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTrigger_Action) AWSCloudFormationType() string { +func (r *Trigger_Action) AWSCloudFormationType() string { return "AWS::Glue::Trigger.Action" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger_Action) DependsOn() []string { +func (r *Trigger_Action) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger_Action) SetDependsOn(dependencies []string) { +func (r *Trigger_Action) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger_Action) Metadata() map[string]interface{} { +func (r *Trigger_Action) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger_Action) SetMetadata(metadata map[string]interface{}) { +func (r *Trigger_Action) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger_Action) DeletionPolicy() policies.DeletionPolicy { +func (r *Trigger_Action) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Trigger_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-trigger_condition.go b/cloudformation/glue/aws-glue-trigger_condition.go similarity index 80% rename from cloudformation/resources/aws-glue-trigger_condition.go rename to cloudformation/glue/aws-glue-trigger_condition.go index d0438a3e28..1cc1954ddc 100644 --- a/cloudformation/resources/aws-glue-trigger_condition.go +++ b/cloudformation/glue/aws-glue-trigger_condition.go @@ -1,10 +1,12 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTrigger_Condition AWS CloudFormation Resource (AWS::Glue::Trigger.Condition) +// Trigger_Condition AWS CloudFormation Resource (AWS::Glue::Trigger.Condition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html -type AWSGlueTrigger_Condition struct { +type Trigger_Condition struct { // CrawlState AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSGlueTrigger_Condition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTrigger_Condition) AWSCloudFormationType() string { +func (r *Trigger_Condition) AWSCloudFormationType() string { return "AWS::Glue::Trigger.Condition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger_Condition) DependsOn() []string { +func (r *Trigger_Condition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger_Condition) SetDependsOn(dependencies []string) { +func (r *Trigger_Condition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger_Condition) Metadata() map[string]interface{} { +func (r *Trigger_Condition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger_Condition) SetMetadata(metadata map[string]interface{}) { +func (r *Trigger_Condition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger_Condition) DeletionPolicy() policies.DeletionPolicy { +func (r *Trigger_Condition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger_Condition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Trigger_Condition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/glue/aws-glue-trigger_notificationproperty.go b/cloudformation/glue/aws-glue-trigger_notificationproperty.go new file mode 100644 index 0000000000..4efcdae5a6 --- /dev/null +++ b/cloudformation/glue/aws-glue-trigger_notificationproperty.go @@ -0,0 +1,65 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Trigger_NotificationProperty AWS CloudFormation Resource (AWS::Glue::Trigger.NotificationProperty) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-notificationproperty.html +type Trigger_NotificationProperty struct { + + // NotifyDelayAfter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-notificationproperty.html#cfn-glue-trigger-notificationproperty-notifydelayafter + NotifyDelayAfter int `json:"NotifyDelayAfter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Trigger_NotificationProperty) AWSCloudFormationType() string { + return "AWS::Glue::Trigger.NotificationProperty" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Trigger_NotificationProperty) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Trigger_NotificationProperty) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Trigger_NotificationProperty) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Trigger_NotificationProperty) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Trigger_NotificationProperty) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Trigger_NotificationProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/glue/aws-glue-trigger_predicate.go b/cloudformation/glue/aws-glue-trigger_predicate.go new file mode 100644 index 0000000000..9a95f8c637 --- /dev/null +++ b/cloudformation/glue/aws-glue-trigger_predicate.go @@ -0,0 +1,70 @@ +package glue + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Trigger_Predicate AWS CloudFormation Resource (AWS::Glue::Trigger.Predicate) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html +type Trigger_Predicate struct { + + // Conditions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html#cfn-glue-trigger-predicate-conditions + Conditions []Trigger_Condition `json:"Conditions,omitempty"` + + // Logical AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html#cfn-glue-trigger-predicate-logical + Logical string `json:"Logical,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Trigger_Predicate) AWSCloudFormationType() string { + return "AWS::Glue::Trigger.Predicate" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Trigger_Predicate) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Trigger_Predicate) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Trigger_Predicate) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Trigger_Predicate) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Trigger_Predicate) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Trigger_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-glue-workflow.go b/cloudformation/glue/aws-glue-workflow.go similarity index 83% rename from cloudformation/resources/aws-glue-workflow.go rename to cloudformation/glue/aws-glue-workflow.go index c3a33e5ae8..36885aef3f 100644 --- a/cloudformation/resources/aws-glue-workflow.go +++ b/cloudformation/glue/aws-glue-workflow.go @@ -1,15 +1,16 @@ -package resources +package glue import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGlueWorkflow AWS CloudFormation Resource (AWS::Glue::Workflow) +// Workflow AWS CloudFormation Resource (AWS::Glue::Workflow) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html -type AWSGlueWorkflow struct { +type Workflow struct { // DefaultRunProperties AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSGlueWorkflow struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueWorkflow) AWSCloudFormationType() string { +func (r *Workflow) AWSCloudFormationType() string { return "AWS::Glue::Workflow" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueWorkflow) DependsOn() []string { +func (r *Workflow) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueWorkflow) SetDependsOn(dependencies []string) { +func (r *Workflow) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueWorkflow) Metadata() map[string]interface{} { +func (r *Workflow) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueWorkflow) SetMetadata(metadata map[string]interface{}) { +func (r *Workflow) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueWorkflow) DeletionPolicy() policies.DeletionPolicy { +func (r *Workflow) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueWorkflow) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Workflow) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueWorkflow) MarshalJSON() ([]byte, error) { - type Properties AWSGlueWorkflow +func (r Workflow) MarshalJSON() ([]byte, error) { + type Properties Workflow return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSGlueWorkflow) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueWorkflow) UnmarshalJSON(b []byte) error { - type Properties AWSGlueWorkflow +func (r *Workflow) UnmarshalJSON(b []byte) error { + type Properties Workflow res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSGlueWorkflow) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueWorkflow(*res.Properties) + *r = Workflow(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-connectordefinition.go b/cloudformation/greengrass/aws-greengrass-connectordefinition.go similarity index 77% rename from cloudformation/resources/aws-greengrass-connectordefinition.go rename to cloudformation/greengrass/aws-greengrass-connectordefinition.go index c6c87bcfc5..73b1e7e95b 100644 --- a/cloudformation/resources/aws-greengrass-connectordefinition.go +++ b/cloudformation/greengrass/aws-greengrass-connectordefinition.go @@ -1,20 +1,21 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassConnectorDefinition AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinition) +// ConnectorDefinition AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html -type AWSGreengrassConnectorDefinition struct { +type ConnectorDefinition struct { // InitialVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-initialversion - InitialVersion *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion `json:"InitialVersion,omitempty"` + InitialVersion *ConnectorDefinition_ConnectorDefinitionVersion `json:"InitialVersion,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSGreengrassConnectorDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassConnectorDefinition) AWSCloudFormationType() string { +func (r *ConnectorDefinition) AWSCloudFormationType() string { return "AWS::Greengrass::ConnectorDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinition) DependsOn() []string { +func (r *ConnectorDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinition) SetDependsOn(dependencies []string) { +func (r *ConnectorDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinition) Metadata() map[string]interface{} { +func (r *ConnectorDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *ConnectorDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *ConnectorDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConnectorDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassConnectorDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassConnectorDefinition +func (r ConnectorDefinition) MarshalJSON() ([]byte, error) { + type Properties ConnectorDefinition return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGreengrassConnectorDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassConnectorDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassConnectorDefinition +func (r *ConnectorDefinition) UnmarshalJSON(b []byte) error { + type Properties ConnectorDefinition res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGreengrassConnectorDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassConnectorDefinition(*res.Properties) + *r = ConnectorDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/greengrass/aws-greengrass-connectordefinition_connector.go b/cloudformation/greengrass/aws-greengrass-connectordefinition_connector.go new file mode 100644 index 0000000000..101c4a6bd0 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-connectordefinition_connector.go @@ -0,0 +1,75 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConnectorDefinition_Connector AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinition.Connector) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html +type ConnectorDefinition_Connector struct { + + // ConnectorArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-connectorarn + ConnectorArn string `json:"ConnectorArn,omitempty"` + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-id + Id string `json:"Id,omitempty"` + + // Parameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-parameters + Parameters interface{} `json:"Parameters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConnectorDefinition_Connector) AWSCloudFormationType() string { + return "AWS::Greengrass::ConnectorDefinition.Connector" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConnectorDefinition_Connector) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConnectorDefinition_Connector) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConnectorDefinition_Connector) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConnectorDefinition_Connector) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConnectorDefinition_Connector) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConnectorDefinition_Connector) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-connectordefinition_connectordefinitionversion.go b/cloudformation/greengrass/aws-greengrass-connectordefinition_connectordefinitionversion.go new file mode 100644 index 0000000000..bcf5f61551 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-connectordefinition_connectordefinitionversion.go @@ -0,0 +1,65 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConnectorDefinition_ConnectorDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinition.ConnectorDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html +type ConnectorDefinition_ConnectorDefinitionVersion struct { + + // Connectors AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html#cfn-greengrass-connectordefinition-connectordefinitionversion-connectors + Connectors []ConnectorDefinition_Connector `json:"Connectors,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConnectorDefinition_ConnectorDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::ConnectorDefinition.ConnectorDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConnectorDefinition_ConnectorDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConnectorDefinition_ConnectorDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConnectorDefinition_ConnectorDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConnectorDefinition_ConnectorDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConnectorDefinition_ConnectorDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConnectorDefinition_ConnectorDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-connectordefinitionversion.go b/cloudformation/greengrass/aws-greengrass-connectordefinitionversion.go similarity index 75% rename from cloudformation/resources/aws-greengrass-connectordefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-connectordefinitionversion.go index 72a5d095a6..2d409692b1 100644 --- a/cloudformation/resources/aws-greengrass-connectordefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-connectordefinitionversion.go @@ -1,15 +1,16 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassConnectorDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinitionVersion) +// ConnectorDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinitionVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html -type AWSGreengrassConnectorDefinitionVersion struct { +type ConnectorDefinitionVersion struct { // ConnectorDefinitionId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGreengrassConnectorDefinitionVersion struct { // Connectors AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html#cfn-greengrass-connectordefinitionversion-connectors - Connectors []AWSGreengrassConnectorDefinitionVersion_Connector `json:"Connectors,omitempty"` + Connectors []ConnectorDefinitionVersion_Connector `json:"Connectors,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGreengrassConnectorDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassConnectorDefinitionVersion) AWSCloudFormationType() string { +func (r *ConnectorDefinitionVersion) AWSCloudFormationType() string { return "AWS::Greengrass::ConnectorDefinitionVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinitionVersion) DependsOn() []string { +func (r *ConnectorDefinitionVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinitionVersion) SetDependsOn(dependencies []string) { +func (r *ConnectorDefinitionVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinitionVersion) Metadata() map[string]interface{} { +func (r *ConnectorDefinitionVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +func (r *ConnectorDefinitionVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *ConnectorDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConnectorDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassConnectorDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassConnectorDefinitionVersion +func (r ConnectorDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties ConnectorDefinitionVersion return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGreengrassConnectorDefinitionVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassConnectorDefinitionVersion) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassConnectorDefinitionVersion +func (r *ConnectorDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties ConnectorDefinitionVersion res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGreengrassConnectorDefinitionVersion) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassConnectorDefinitionVersion(*res.Properties) + *r = ConnectorDefinitionVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/greengrass/aws-greengrass-connectordefinitionversion_connector.go b/cloudformation/greengrass/aws-greengrass-connectordefinitionversion_connector.go new file mode 100644 index 0000000000..63a0923e22 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-connectordefinitionversion_connector.go @@ -0,0 +1,75 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConnectorDefinitionVersion_Connector AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinitionVersion.Connector) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html +type ConnectorDefinitionVersion_Connector struct { + + // ConnectorArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-connectorarn + ConnectorArn string `json:"ConnectorArn,omitempty"` + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-id + Id string `json:"Id,omitempty"` + + // Parameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-parameters + Parameters interface{} `json:"Parameters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConnectorDefinitionVersion_Connector) AWSCloudFormationType() string { + return "AWS::Greengrass::ConnectorDefinitionVersion.Connector" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConnectorDefinitionVersion_Connector) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConnectorDefinitionVersion_Connector) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConnectorDefinitionVersion_Connector) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConnectorDefinitionVersion_Connector) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConnectorDefinitionVersion_Connector) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConnectorDefinitionVersion_Connector) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-coredefinition.go b/cloudformation/greengrass/aws-greengrass-coredefinition.go similarity index 78% rename from cloudformation/resources/aws-greengrass-coredefinition.go rename to cloudformation/greengrass/aws-greengrass-coredefinition.go index acc4a95e44..a2d48829ea 100644 --- a/cloudformation/resources/aws-greengrass-coredefinition.go +++ b/cloudformation/greengrass/aws-greengrass-coredefinition.go @@ -1,20 +1,21 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassCoreDefinition AWS CloudFormation Resource (AWS::Greengrass::CoreDefinition) +// CoreDefinition AWS CloudFormation Resource (AWS::Greengrass::CoreDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html -type AWSGreengrassCoreDefinition struct { +type CoreDefinition struct { // InitialVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-initialversion - InitialVersion *AWSGreengrassCoreDefinition_CoreDefinitionVersion `json:"InitialVersion,omitempty"` + InitialVersion *CoreDefinition_CoreDefinitionVersion `json:"InitialVersion,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSGreengrassCoreDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassCoreDefinition) AWSCloudFormationType() string { +func (r *CoreDefinition) AWSCloudFormationType() string { return "AWS::Greengrass::CoreDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinition) DependsOn() []string { +func (r *CoreDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinition) SetDependsOn(dependencies []string) { +func (r *CoreDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinition) Metadata() map[string]interface{} { +func (r *CoreDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *CoreDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *CoreDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CoreDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassCoreDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassCoreDefinition +func (r CoreDefinition) MarshalJSON() ([]byte, error) { + type Properties CoreDefinition return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGreengrassCoreDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassCoreDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassCoreDefinition +func (r *CoreDefinition) UnmarshalJSON(b []byte) error { + type Properties CoreDefinition res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGreengrassCoreDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassCoreDefinition(*res.Properties) + *r = CoreDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-coredefinition_core.go b/cloudformation/greengrass/aws-greengrass-coredefinition_core.go similarity index 78% rename from cloudformation/resources/aws-greengrass-coredefinition_core.go rename to cloudformation/greengrass/aws-greengrass-coredefinition_core.go index f0ad685f68..fc90c7e361 100644 --- a/cloudformation/resources/aws-greengrass-coredefinition_core.go +++ b/cloudformation/greengrass/aws-greengrass-coredefinition_core.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassCoreDefinition_Core AWS CloudFormation Resource (AWS::Greengrass::CoreDefinition.Core) +// CoreDefinition_Core AWS CloudFormation Resource (AWS::Greengrass::CoreDefinition.Core) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html -type AWSGreengrassCoreDefinition_Core struct { +type CoreDefinition_Core struct { // CertificateArn AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSGreengrassCoreDefinition_Core struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassCoreDefinition_Core) AWSCloudFormationType() string { +func (r *CoreDefinition_Core) AWSCloudFormationType() string { return "AWS::Greengrass::CoreDefinition.Core" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinition_Core) DependsOn() []string { +func (r *CoreDefinition_Core) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinition_Core) SetDependsOn(dependencies []string) { +func (r *CoreDefinition_Core) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinition_Core) Metadata() map[string]interface{} { +func (r *CoreDefinition_Core) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinition_Core) SetMetadata(metadata map[string]interface{}) { +func (r *CoreDefinition_Core) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinition_Core) DeletionPolicy() policies.DeletionPolicy { +func (r *CoreDefinition_Core) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinition_Core) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CoreDefinition_Core) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/greengrass/aws-greengrass-coredefinition_coredefinitionversion.go b/cloudformation/greengrass/aws-greengrass-coredefinition_coredefinitionversion.go new file mode 100644 index 0000000000..bf59a59095 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-coredefinition_coredefinitionversion.go @@ -0,0 +1,65 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// CoreDefinition_CoreDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::CoreDefinition.CoreDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html +type CoreDefinition_CoreDefinitionVersion struct { + + // Cores AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html#cfn-greengrass-coredefinition-coredefinitionversion-cores + Cores []CoreDefinition_Core `json:"Cores,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *CoreDefinition_CoreDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::CoreDefinition.CoreDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CoreDefinition_CoreDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CoreDefinition_CoreDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CoreDefinition_CoreDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CoreDefinition_CoreDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CoreDefinition_CoreDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CoreDefinition_CoreDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-coredefinitionversion.go b/cloudformation/greengrass/aws-greengrass-coredefinitionversion.go similarity index 76% rename from cloudformation/resources/aws-greengrass-coredefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-coredefinitionversion.go index 74b91331b0..15867fa9f6 100644 --- a/cloudformation/resources/aws-greengrass-coredefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-coredefinitionversion.go @@ -1,15 +1,16 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassCoreDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::CoreDefinitionVersion) +// CoreDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::CoreDefinitionVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html -type AWSGreengrassCoreDefinitionVersion struct { +type CoreDefinitionVersion struct { // CoreDefinitionId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGreengrassCoreDefinitionVersion struct { // Cores AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html#cfn-greengrass-coredefinitionversion-cores - Cores []AWSGreengrassCoreDefinitionVersion_Core `json:"Cores,omitempty"` + Cores []CoreDefinitionVersion_Core `json:"Cores,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGreengrassCoreDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassCoreDefinitionVersion) AWSCloudFormationType() string { +func (r *CoreDefinitionVersion) AWSCloudFormationType() string { return "AWS::Greengrass::CoreDefinitionVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinitionVersion) DependsOn() []string { +func (r *CoreDefinitionVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinitionVersion) SetDependsOn(dependencies []string) { +func (r *CoreDefinitionVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinitionVersion) Metadata() map[string]interface{} { +func (r *CoreDefinitionVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +func (r *CoreDefinitionVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *CoreDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CoreDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassCoreDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassCoreDefinitionVersion +func (r CoreDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties CoreDefinitionVersion return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGreengrassCoreDefinitionVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassCoreDefinitionVersion) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassCoreDefinitionVersion +func (r *CoreDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties CoreDefinitionVersion res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGreengrassCoreDefinitionVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassCoreDefinitionVersion(*res.Properties) + *r = CoreDefinitionVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-coredefinitionversion_core.go b/cloudformation/greengrass/aws-greengrass-coredefinitionversion_core.go similarity index 77% rename from cloudformation/resources/aws-greengrass-coredefinitionversion_core.go rename to cloudformation/greengrass/aws-greengrass-coredefinitionversion_core.go index 1dc13a0634..b95467d340 100644 --- a/cloudformation/resources/aws-greengrass-coredefinitionversion_core.go +++ b/cloudformation/greengrass/aws-greengrass-coredefinitionversion_core.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassCoreDefinitionVersion_Core AWS CloudFormation Resource (AWS::Greengrass::CoreDefinitionVersion.Core) +// CoreDefinitionVersion_Core AWS CloudFormation Resource (AWS::Greengrass::CoreDefinitionVersion.Core) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html -type AWSGreengrassCoreDefinitionVersion_Core struct { +type CoreDefinitionVersion_Core struct { // CertificateArn AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSGreengrassCoreDefinitionVersion_Core struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassCoreDefinitionVersion_Core) AWSCloudFormationType() string { +func (r *CoreDefinitionVersion_Core) AWSCloudFormationType() string { return "AWS::Greengrass::CoreDefinitionVersion.Core" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinitionVersion_Core) DependsOn() []string { +func (r *CoreDefinitionVersion_Core) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinitionVersion_Core) SetDependsOn(dependencies []string) { +func (r *CoreDefinitionVersion_Core) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinitionVersion_Core) Metadata() map[string]interface{} { +func (r *CoreDefinitionVersion_Core) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinitionVersion_Core) SetMetadata(metadata map[string]interface{}) { +func (r *CoreDefinitionVersion_Core) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinitionVersion_Core) DeletionPolicy() policies.DeletionPolicy { +func (r *CoreDefinitionVersion_Core) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinitionVersion_Core) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CoreDefinitionVersion_Core) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-devicedefinition.go b/cloudformation/greengrass/aws-greengrass-devicedefinition.go similarity index 77% rename from cloudformation/resources/aws-greengrass-devicedefinition.go rename to cloudformation/greengrass/aws-greengrass-devicedefinition.go index dfc44511a7..bf4e261e07 100644 --- a/cloudformation/resources/aws-greengrass-devicedefinition.go +++ b/cloudformation/greengrass/aws-greengrass-devicedefinition.go @@ -1,20 +1,21 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassDeviceDefinition AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinition) +// DeviceDefinition AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html -type AWSGreengrassDeviceDefinition struct { +type DeviceDefinition struct { // InitialVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-initialversion - InitialVersion *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion `json:"InitialVersion,omitempty"` + InitialVersion *DeviceDefinition_DeviceDefinitionVersion `json:"InitialVersion,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSGreengrassDeviceDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassDeviceDefinition) AWSCloudFormationType() string { +func (r *DeviceDefinition) AWSCloudFormationType() string { return "AWS::Greengrass::DeviceDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinition) DependsOn() []string { +func (r *DeviceDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinition) SetDependsOn(dependencies []string) { +func (r *DeviceDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinition) Metadata() map[string]interface{} { +func (r *DeviceDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *DeviceDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *DeviceDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeviceDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassDeviceDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassDeviceDefinition +func (r DeviceDefinition) MarshalJSON() ([]byte, error) { + type Properties DeviceDefinition return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGreengrassDeviceDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassDeviceDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassDeviceDefinition +func (r *DeviceDefinition) UnmarshalJSON(b []byte) error { + type Properties DeviceDefinition res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGreengrassDeviceDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassDeviceDefinition(*res.Properties) + *r = DeviceDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-devicedefinition_device.go b/cloudformation/greengrass/aws-greengrass-devicedefinition_device.go similarity index 77% rename from cloudformation/resources/aws-greengrass-devicedefinition_device.go rename to cloudformation/greengrass/aws-greengrass-devicedefinition_device.go index 13d96ec5f9..d468f7df2b 100644 --- a/cloudformation/resources/aws-greengrass-devicedefinition_device.go +++ b/cloudformation/greengrass/aws-greengrass-devicedefinition_device.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassDeviceDefinition_Device AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinition.Device) +// DeviceDefinition_Device AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinition.Device) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html -type AWSGreengrassDeviceDefinition_Device struct { +type DeviceDefinition_Device struct { // CertificateArn AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSGreengrassDeviceDefinition_Device struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassDeviceDefinition_Device) AWSCloudFormationType() string { +func (r *DeviceDefinition_Device) AWSCloudFormationType() string { return "AWS::Greengrass::DeviceDefinition.Device" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinition_Device) DependsOn() []string { +func (r *DeviceDefinition_Device) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinition_Device) SetDependsOn(dependencies []string) { +func (r *DeviceDefinition_Device) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinition_Device) Metadata() map[string]interface{} { +func (r *DeviceDefinition_Device) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinition_Device) SetMetadata(metadata map[string]interface{}) { +func (r *DeviceDefinition_Device) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinition_Device) DeletionPolicy() policies.DeletionPolicy { +func (r *DeviceDefinition_Device) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinition_Device) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeviceDefinition_Device) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/greengrass/aws-greengrass-devicedefinition_devicedefinitionversion.go b/cloudformation/greengrass/aws-greengrass-devicedefinition_devicedefinitionversion.go new file mode 100644 index 0000000000..1f28c05b93 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-devicedefinition_devicedefinitionversion.go @@ -0,0 +1,65 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeviceDefinition_DeviceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinition.DeviceDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html +type DeviceDefinition_DeviceDefinitionVersion struct { + + // Devices AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html#cfn-greengrass-devicedefinition-devicedefinitionversion-devices + Devices []DeviceDefinition_Device `json:"Devices,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeviceDefinition_DeviceDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::DeviceDefinition.DeviceDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeviceDefinition_DeviceDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeviceDefinition_DeviceDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeviceDefinition_DeviceDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeviceDefinition_DeviceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeviceDefinition_DeviceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeviceDefinition_DeviceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-devicedefinitionversion.go b/cloudformation/greengrass/aws-greengrass-devicedefinitionversion.go similarity index 75% rename from cloudformation/resources/aws-greengrass-devicedefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-devicedefinitionversion.go index 6d550e463f..602d1b8668 100644 --- a/cloudformation/resources/aws-greengrass-devicedefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-devicedefinitionversion.go @@ -1,15 +1,16 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassDeviceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinitionVersion) +// DeviceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinitionVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html -type AWSGreengrassDeviceDefinitionVersion struct { +type DeviceDefinitionVersion struct { // DeviceDefinitionId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGreengrassDeviceDefinitionVersion struct { // Devices AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html#cfn-greengrass-devicedefinitionversion-devices - Devices []AWSGreengrassDeviceDefinitionVersion_Device `json:"Devices,omitempty"` + Devices []DeviceDefinitionVersion_Device `json:"Devices,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGreengrassDeviceDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassDeviceDefinitionVersion) AWSCloudFormationType() string { +func (r *DeviceDefinitionVersion) AWSCloudFormationType() string { return "AWS::Greengrass::DeviceDefinitionVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinitionVersion) DependsOn() []string { +func (r *DeviceDefinitionVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinitionVersion) SetDependsOn(dependencies []string) { +func (r *DeviceDefinitionVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinitionVersion) Metadata() map[string]interface{} { +func (r *DeviceDefinitionVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +func (r *DeviceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *DeviceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeviceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassDeviceDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassDeviceDefinitionVersion +func (r DeviceDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties DeviceDefinitionVersion return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGreengrassDeviceDefinitionVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassDeviceDefinitionVersion) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassDeviceDefinitionVersion +func (r *DeviceDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties DeviceDefinitionVersion res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGreengrassDeviceDefinitionVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassDeviceDefinitionVersion(*res.Properties) + *r = DeviceDefinitionVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-devicedefinitionversion_device.go b/cloudformation/greengrass/aws-greengrass-devicedefinitionversion_device.go similarity index 76% rename from cloudformation/resources/aws-greengrass-devicedefinitionversion_device.go rename to cloudformation/greengrass/aws-greengrass-devicedefinitionversion_device.go index 0a85810d2e..1eb8e1c6ed 100644 --- a/cloudformation/resources/aws-greengrass-devicedefinitionversion_device.go +++ b/cloudformation/greengrass/aws-greengrass-devicedefinitionversion_device.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassDeviceDefinitionVersion_Device AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinitionVersion.Device) +// DeviceDefinitionVersion_Device AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinitionVersion.Device) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html -type AWSGreengrassDeviceDefinitionVersion_Device struct { +type DeviceDefinitionVersion_Device struct { // CertificateArn AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSGreengrassDeviceDefinitionVersion_Device struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassDeviceDefinitionVersion_Device) AWSCloudFormationType() string { +func (r *DeviceDefinitionVersion_Device) AWSCloudFormationType() string { return "AWS::Greengrass::DeviceDefinitionVersion.Device" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinitionVersion_Device) DependsOn() []string { +func (r *DeviceDefinitionVersion_Device) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinitionVersion_Device) SetDependsOn(dependencies []string) { +func (r *DeviceDefinitionVersion_Device) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinitionVersion_Device) Metadata() map[string]interface{} { +func (r *DeviceDefinitionVersion_Device) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinitionVersion_Device) SetMetadata(metadata map[string]interface{}) { +func (r *DeviceDefinitionVersion_Device) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinitionVersion_Device) DeletionPolicy() policies.DeletionPolicy { +func (r *DeviceDefinitionVersion_Device) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinitionVersion_Device) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeviceDefinitionVersion_Device) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinition.go b/cloudformation/greengrass/aws-greengrass-functiondefinition.go similarity index 77% rename from cloudformation/resources/aws-greengrass-functiondefinition.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition.go index 5be1f4022d..5c7f5e8eb3 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition.go @@ -1,20 +1,21 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassFunctionDefinition AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition) +// FunctionDefinition AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html -type AWSGreengrassFunctionDefinition struct { +type FunctionDefinition struct { // InitialVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-initialversion - InitialVersion *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion `json:"InitialVersion,omitempty"` + InitialVersion *FunctionDefinition_FunctionDefinitionVersion `json:"InitialVersion,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSGreengrassFunctionDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition) AWSCloudFormationType() string { +func (r *FunctionDefinition) AWSCloudFormationType() string { return "AWS::Greengrass::FunctionDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition) DependsOn() []string { +func (r *FunctionDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition) SetDependsOn(dependencies []string) { +func (r *FunctionDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition) Metadata() map[string]interface{} { +func (r *FunctionDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *FunctionDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *FunctionDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassFunctionDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassFunctionDefinition +func (r FunctionDefinition) MarshalJSON() ([]byte, error) { + type Properties FunctionDefinition return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGreengrassFunctionDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassFunctionDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassFunctionDefinition +func (r *FunctionDefinition) UnmarshalJSON(b []byte) error { + type Properties FunctionDefinition res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGreengrassFunctionDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassFunctionDefinition(*res.Properties) + *r = FunctionDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinition_defaultconfig.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_defaultconfig.go new file mode 100644 index 0000000000..700f686e87 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_defaultconfig.go @@ -0,0 +1,65 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinition_DefaultConfig AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.DefaultConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html +type FunctionDefinition_DefaultConfig struct { + + // Execution AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html#cfn-greengrass-functiondefinition-defaultconfig-execution + Execution *FunctionDefinition_Execution `json:"Execution,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinition_DefaultConfig) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinition.DefaultConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_DefaultConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_DefaultConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_DefaultConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_DefaultConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_DefaultConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_DefaultConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinition_environment.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_environment.go new file mode 100644 index 0000000000..d5cecc8a51 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_environment.go @@ -0,0 +1,80 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinition_Environment AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Environment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html +type FunctionDefinition_Environment struct { + + // AccessSysfs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-accesssysfs + AccessSysfs bool `json:"AccessSysfs,omitempty"` + + // Execution AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-execution + Execution *FunctionDefinition_Execution `json:"Execution,omitempty"` + + // ResourceAccessPolicies AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-resourceaccesspolicies + ResourceAccessPolicies []FunctionDefinition_ResourceAccessPolicy `json:"ResourceAccessPolicies,omitempty"` + + // Variables AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-variables + Variables interface{} `json:"Variables,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinition_Environment) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinition.Environment" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_Environment) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_Environment) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_Environment) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_Environment) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_Environment) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinition_execution.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_execution.go new file mode 100644 index 0000000000..710282a382 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_execution.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinition_Execution AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Execution) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html +type FunctionDefinition_Execution struct { + + // IsolationMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-isolationmode + IsolationMode string `json:"IsolationMode,omitempty"` + + // RunAs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-runas + RunAs *FunctionDefinition_RunAs `json:"RunAs,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinition_Execution) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinition.Execution" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_Execution) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_Execution) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_Execution) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_Execution) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_Execution) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_Execution) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinition_function.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_function.go new file mode 100644 index 0000000000..e04bb63780 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_function.go @@ -0,0 +1,75 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinition_Function AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Function) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html +type FunctionDefinition_Function struct { + + // FunctionArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionarn + FunctionArn string `json:"FunctionArn,omitempty"` + + // FunctionConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionconfiguration + FunctionConfiguration *FunctionDefinition_FunctionConfiguration `json:"FunctionConfiguration,omitempty"` + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-id + Id string `json:"Id,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinition_Function) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinition.Function" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_Function) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_Function) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_Function) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_Function) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_Function) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_Function) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_functionconfiguration.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_functionconfiguration.go similarity index 78% rename from cloudformation/resources/aws-greengrass-functiondefinition_functionconfiguration.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition_functionconfiguration.go index aac06f04a4..ea6c3121ee 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition_functionconfiguration.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_functionconfiguration.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassFunctionDefinition_FunctionConfiguration AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.FunctionConfiguration) +// FunctionDefinition_FunctionConfiguration AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.FunctionConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html -type AWSGreengrassFunctionDefinition_FunctionConfiguration struct { +type FunctionDefinition_FunctionConfiguration struct { // EncodingType AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSGreengrassFunctionDefinition_FunctionConfiguration struct { // Environment AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-environment - Environment *AWSGreengrassFunctionDefinition_Environment `json:"Environment,omitempty"` + Environment *FunctionDefinition_Environment `json:"Environment,omitempty"` // ExecArgs AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSGreengrassFunctionDefinition_FunctionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_FunctionConfiguration) AWSCloudFormationType() string { +func (r *FunctionDefinition_FunctionConfiguration) AWSCloudFormationType() string { return "AWS::Greengrass::FunctionDefinition.FunctionConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_FunctionConfiguration) DependsOn() []string { +func (r *FunctionDefinition_FunctionConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_FunctionConfiguration) SetDependsOn(dependencies []string) { +func (r *FunctionDefinition_FunctionConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_FunctionConfiguration) Metadata() map[string]interface{} { +func (r *FunctionDefinition_FunctionConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_FunctionConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *FunctionDefinition_FunctionConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_FunctionConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *FunctionDefinition_FunctionConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_FunctionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinition_FunctionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinition_functiondefinitionversion.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_functiondefinitionversion.go new file mode 100644 index 0000000000..6f9a594033 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_functiondefinitionversion.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinition_FunctionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.FunctionDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html +type FunctionDefinition_FunctionDefinitionVersion struct { + + // DefaultConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-defaultconfig + DefaultConfig *FunctionDefinition_DefaultConfig `json:"DefaultConfig,omitempty"` + + // Functions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-functions + Functions []FunctionDefinition_Function `json:"Functions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinition_FunctionDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinition.FunctionDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_FunctionDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_FunctionDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_FunctionDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_FunctionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_FunctionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_FunctionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinition_resourceaccesspolicy.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_resourceaccesspolicy.go new file mode 100644 index 0000000000..47738e5497 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_resourceaccesspolicy.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinition_ResourceAccessPolicy AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.ResourceAccessPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html +type FunctionDefinition_ResourceAccessPolicy struct { + + // Permission AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-permission + Permission string `json:"Permission,omitempty"` + + // ResourceId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-resourceid + ResourceId string `json:"ResourceId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinition_ResourceAccessPolicy) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinition.ResourceAccessPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_ResourceAccessPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_ResourceAccessPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_ResourceAccessPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_ResourceAccessPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_ResourceAccessPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_ResourceAccessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinition_runas.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_runas.go new file mode 100644 index 0000000000..3ff0b7b854 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_runas.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinition_RunAs AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.RunAs) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html +type FunctionDefinition_RunAs struct { + + // Gid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-gid + Gid int `json:"Gid,omitempty"` + + // Uid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-uid + Uid int `json:"Uid,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinition_RunAs) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinition.RunAs" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_RunAs) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinition_RunAs) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_RunAs) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinition_RunAs) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_RunAs) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinition_RunAs) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinitionversion.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion.go new file mode 100644 index 0000000000..7af7a61f5a --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion.go @@ -0,0 +1,134 @@ +package greengrass + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html +type FunctionDefinitionVersion struct { + + // DefaultConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-defaultconfig + DefaultConfig *FunctionDefinitionVersion_DefaultConfig `json:"DefaultConfig,omitempty"` + + // FunctionDefinitionId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functiondefinitionid + FunctionDefinitionId string `json:"FunctionDefinitionId,omitempty"` + + // Functions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functions + Functions []FunctionDefinitionVersion_Function `json:"Functions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r FunctionDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties FunctionDefinitionVersion + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *FunctionDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties FunctionDefinitionVersion + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = FunctionDefinitionVersion(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_defaultconfig.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_defaultconfig.go new file mode 100644 index 0000000000..fd0c1db590 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_defaultconfig.go @@ -0,0 +1,65 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinitionVersion_DefaultConfig AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.DefaultConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html +type FunctionDefinitionVersion_DefaultConfig struct { + + // Execution AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html#cfn-greengrass-functiondefinitionversion-defaultconfig-execution + Execution *FunctionDefinitionVersion_Execution `json:"Execution,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinitionVersion_DefaultConfig) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinitionVersion.DefaultConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_DefaultConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_DefaultConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_DefaultConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_DefaultConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_DefaultConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_DefaultConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_environment.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_environment.go new file mode 100644 index 0000000000..a6f20002b2 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_environment.go @@ -0,0 +1,80 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinitionVersion_Environment AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Environment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html +type FunctionDefinitionVersion_Environment struct { + + // AccessSysfs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-accesssysfs + AccessSysfs bool `json:"AccessSysfs,omitempty"` + + // Execution AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-execution + Execution *FunctionDefinitionVersion_Execution `json:"Execution,omitempty"` + + // ResourceAccessPolicies AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-resourceaccesspolicies + ResourceAccessPolicies []FunctionDefinitionVersion_ResourceAccessPolicy `json:"ResourceAccessPolicies,omitempty"` + + // Variables AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-variables + Variables interface{} `json:"Variables,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinitionVersion_Environment) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinitionVersion.Environment" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_Environment) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_Environment) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_Environment) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_Environment) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_Environment) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_execution.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_execution.go new file mode 100644 index 0000000000..9eb2094f43 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_execution.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinitionVersion_Execution AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Execution) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html +type FunctionDefinitionVersion_Execution struct { + + // IsolationMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-isolationmode + IsolationMode string `json:"IsolationMode,omitempty"` + + // RunAs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-runas + RunAs *FunctionDefinitionVersion_RunAs `json:"RunAs,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinitionVersion_Execution) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinitionVersion.Execution" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_Execution) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_Execution) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_Execution) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_Execution) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_Execution) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_Execution) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_function.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_function.go new file mode 100644 index 0000000000..4804fe1313 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_function.go @@ -0,0 +1,75 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinitionVersion_Function AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Function) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html +type FunctionDefinitionVersion_Function struct { + + // FunctionArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionarn + FunctionArn string `json:"FunctionArn,omitempty"` + + // FunctionConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionconfiguration + FunctionConfiguration *FunctionDefinitionVersion_FunctionConfiguration `json:"FunctionConfiguration,omitempty"` + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-id + Id string `json:"Id,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinitionVersion_Function) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinitionVersion.Function" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_Function) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_Function) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_Function) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_Function) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_Function) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_Function) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_functionconfiguration.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_functionconfiguration.go similarity index 77% rename from cloudformation/resources/aws-greengrass-functiondefinitionversion_functionconfiguration.go rename to cloudformation/greengrass/aws-greengrass-functiondefinitionversion_functionconfiguration.go index 385f49ccaa..49110dab13 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_functionconfiguration.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_functionconfiguration.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.FunctionConfiguration) +// FunctionDefinitionVersion_FunctionConfiguration AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.FunctionConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html -type AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration struct { +type FunctionDefinitionVersion_FunctionConfiguration struct { // EncodingType AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration struct { // Environment AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-environment - Environment *AWSGreengrassFunctionDefinitionVersion_Environment `json:"Environment,omitempty"` + Environment *FunctionDefinitionVersion_Environment `json:"Environment,omitempty"` // ExecArgs AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration) AWSCloudFormationType() string { +func (r *FunctionDefinitionVersion_FunctionConfiguration) AWSCloudFormationType() string { return "AWS::Greengrass::FunctionDefinitionVersion.FunctionConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration) DependsOn() []string { +func (r *FunctionDefinitionVersion_FunctionConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration) SetDependsOn(dependencies []string) { +func (r *FunctionDefinitionVersion_FunctionConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration) Metadata() map[string]interface{} { +func (r *FunctionDefinitionVersion_FunctionConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *FunctionDefinitionVersion_FunctionConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *FunctionDefinitionVersion_FunctionConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinitionVersion_FunctionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go new file mode 100644 index 0000000000..3a99e396db --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinitionVersion_ResourceAccessPolicy AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.ResourceAccessPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html +type FunctionDefinitionVersion_ResourceAccessPolicy struct { + + // Permission AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-permission + Permission string `json:"Permission,omitempty"` + + // ResourceId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-resourceid + ResourceId string `json:"ResourceId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinitionVersion_ResourceAccessPolicy) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinitionVersion.ResourceAccessPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_ResourceAccessPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_ResourceAccessPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_ResourceAccessPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_ResourceAccessPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_ResourceAccessPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_ResourceAccessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_runas.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_runas.go new file mode 100644 index 0000000000..504c9c6861 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_runas.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FunctionDefinitionVersion_RunAs AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.RunAs) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html +type FunctionDefinitionVersion_RunAs struct { + + // Gid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-gid + Gid int `json:"Gid,omitempty"` + + // Uid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-uid + Uid int `json:"Uid,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FunctionDefinitionVersion_RunAs) AWSCloudFormationType() string { + return "AWS::Greengrass::FunctionDefinitionVersion.RunAs" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_RunAs) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FunctionDefinitionVersion_RunAs) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_RunAs) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FunctionDefinitionVersion_RunAs) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_RunAs) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FunctionDefinitionVersion_RunAs) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-group.go b/cloudformation/greengrass/aws-greengrass-group.go similarity index 81% rename from cloudformation/resources/aws-greengrass-group.go rename to cloudformation/greengrass/aws-greengrass-group.go index da2a4509b7..0e54326fa8 100644 --- a/cloudformation/resources/aws-greengrass-group.go +++ b/cloudformation/greengrass/aws-greengrass-group.go @@ -1,20 +1,21 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassGroup AWS CloudFormation Resource (AWS::Greengrass::Group) +// Group AWS CloudFormation Resource (AWS::Greengrass::Group) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html -type AWSGreengrassGroup struct { +type Group struct { // InitialVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-initialversion - InitialVersion *AWSGreengrassGroup_GroupVersion `json:"InitialVersion,omitempty"` + InitialVersion *Group_GroupVersion `json:"InitialVersion,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSGreengrassGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassGroup) AWSCloudFormationType() string { +func (r *Group) AWSCloudFormationType() string { return "AWS::Greengrass::Group" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassGroup) DependsOn() []string { +func (r *Group) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassGroup) SetDependsOn(dependencies []string) { +func (r *Group) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassGroup) Metadata() map[string]interface{} { +func (r *Group) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassGroup) SetMetadata(metadata map[string]interface{}) { +func (r *Group) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *Group) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Group) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassGroup) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassGroup +func (r Group) MarshalJSON() ([]byte, error) { + type Properties Group return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSGreengrassGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassGroup) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassGroup +func (r *Group) UnmarshalJSON(b []byte) error { + type Properties Group res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSGreengrassGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassGroup(*res.Properties) + *r = Group(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-group_groupversion.go b/cloudformation/greengrass/aws-greengrass-group_groupversion.go similarity index 84% rename from cloudformation/resources/aws-greengrass-group_groupversion.go rename to cloudformation/greengrass/aws-greengrass-group_groupversion.go index 0373c69191..483c1e0294 100644 --- a/cloudformation/resources/aws-greengrass-group_groupversion.go +++ b/cloudformation/greengrass/aws-greengrass-group_groupversion.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassGroup_GroupVersion AWS CloudFormation Resource (AWS::Greengrass::Group.GroupVersion) +// Group_GroupVersion AWS CloudFormation Resource (AWS::Greengrass::Group.GroupVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html -type AWSGreengrassGroup_GroupVersion struct { +type Group_GroupVersion struct { // ConnectorDefinitionVersionArn AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSGreengrassGroup_GroupVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassGroup_GroupVersion) AWSCloudFormationType() string { +func (r *Group_GroupVersion) AWSCloudFormationType() string { return "AWS::Greengrass::Group.GroupVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassGroup_GroupVersion) DependsOn() []string { +func (r *Group_GroupVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassGroup_GroupVersion) SetDependsOn(dependencies []string) { +func (r *Group_GroupVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassGroup_GroupVersion) Metadata() map[string]interface{} { +func (r *Group_GroupVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassGroup_GroupVersion) SetMetadata(metadata map[string]interface{}) { +func (r *Group_GroupVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassGroup_GroupVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *Group_GroupVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassGroup_GroupVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Group_GroupVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-groupversion.go b/cloudformation/greengrass/aws-greengrass-groupversion.go similarity index 85% rename from cloudformation/resources/aws-greengrass-groupversion.go rename to cloudformation/greengrass/aws-greengrass-groupversion.go index 1b8b4622da..e79e22d198 100644 --- a/cloudformation/resources/aws-greengrass-groupversion.go +++ b/cloudformation/greengrass/aws-greengrass-groupversion.go @@ -1,15 +1,16 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassGroupVersion AWS CloudFormation Resource (AWS::Greengrass::GroupVersion) +// GroupVersion AWS CloudFormation Resource (AWS::Greengrass::GroupVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html -type AWSGreengrassGroupVersion struct { +type GroupVersion struct { // ConnectorDefinitionVersionArn AWS CloudFormation Property // Required: false @@ -62,50 +63,50 @@ type AWSGreengrassGroupVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassGroupVersion) AWSCloudFormationType() string { +func (r *GroupVersion) AWSCloudFormationType() string { return "AWS::Greengrass::GroupVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassGroupVersion) DependsOn() []string { +func (r *GroupVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassGroupVersion) SetDependsOn(dependencies []string) { +func (r *GroupVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassGroupVersion) Metadata() map[string]interface{} { +func (r *GroupVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassGroupVersion) SetMetadata(metadata map[string]interface{}) { +func (r *GroupVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassGroupVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *GroupVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassGroupVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GroupVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassGroupVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassGroupVersion +func (r GroupVersion) MarshalJSON() ([]byte, error) { + type Properties GroupVersion return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSGreengrassGroupVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassGroupVersion) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassGroupVersion +func (r *GroupVersion) UnmarshalJSON(b []byte) error { + type Properties GroupVersion res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSGreengrassGroupVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassGroupVersion(*res.Properties) + *r = GroupVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-loggerdefinition.go b/cloudformation/greengrass/aws-greengrass-loggerdefinition.go similarity index 77% rename from cloudformation/resources/aws-greengrass-loggerdefinition.go rename to cloudformation/greengrass/aws-greengrass-loggerdefinition.go index 55d4c0474b..6d799b2812 100644 --- a/cloudformation/resources/aws-greengrass-loggerdefinition.go +++ b/cloudformation/greengrass/aws-greengrass-loggerdefinition.go @@ -1,20 +1,21 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassLoggerDefinition AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinition) +// LoggerDefinition AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html -type AWSGreengrassLoggerDefinition struct { +type LoggerDefinition struct { // InitialVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-initialversion - InitialVersion *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion `json:"InitialVersion,omitempty"` + InitialVersion *LoggerDefinition_LoggerDefinitionVersion `json:"InitialVersion,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSGreengrassLoggerDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassLoggerDefinition) AWSCloudFormationType() string { +func (r *LoggerDefinition) AWSCloudFormationType() string { return "AWS::Greengrass::LoggerDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinition) DependsOn() []string { +func (r *LoggerDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinition) SetDependsOn(dependencies []string) { +func (r *LoggerDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinition) Metadata() map[string]interface{} { +func (r *LoggerDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *LoggerDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *LoggerDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoggerDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassLoggerDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassLoggerDefinition +func (r LoggerDefinition) MarshalJSON() ([]byte, error) { + type Properties LoggerDefinition return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGreengrassLoggerDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassLoggerDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassLoggerDefinition +func (r *LoggerDefinition) UnmarshalJSON(b []byte) error { + type Properties LoggerDefinition res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGreengrassLoggerDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassLoggerDefinition(*res.Properties) + *r = LoggerDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-loggerdefinition_logger.go b/cloudformation/greengrass/aws-greengrass-loggerdefinition_logger.go similarity index 78% rename from cloudformation/resources/aws-greengrass-loggerdefinition_logger.go rename to cloudformation/greengrass/aws-greengrass-loggerdefinition_logger.go index 6f95214ec9..92c183fa58 100644 --- a/cloudformation/resources/aws-greengrass-loggerdefinition_logger.go +++ b/cloudformation/greengrass/aws-greengrass-loggerdefinition_logger.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassLoggerDefinition_Logger AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinition.Logger) +// LoggerDefinition_Logger AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinition.Logger) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html -type AWSGreengrassLoggerDefinition_Logger struct { +type LoggerDefinition_Logger struct { // Component AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSGreengrassLoggerDefinition_Logger struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassLoggerDefinition_Logger) AWSCloudFormationType() string { +func (r *LoggerDefinition_Logger) AWSCloudFormationType() string { return "AWS::Greengrass::LoggerDefinition.Logger" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinition_Logger) DependsOn() []string { +func (r *LoggerDefinition_Logger) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinition_Logger) SetDependsOn(dependencies []string) { +func (r *LoggerDefinition_Logger) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinition_Logger) Metadata() map[string]interface{} { +func (r *LoggerDefinition_Logger) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinition_Logger) SetMetadata(metadata map[string]interface{}) { +func (r *LoggerDefinition_Logger) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinition_Logger) DeletionPolicy() policies.DeletionPolicy { +func (r *LoggerDefinition_Logger) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinition_Logger) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoggerDefinition_Logger) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/greengrass/aws-greengrass-loggerdefinition_loggerdefinitionversion.go b/cloudformation/greengrass/aws-greengrass-loggerdefinition_loggerdefinitionversion.go new file mode 100644 index 0000000000..c7d54c1c8a --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-loggerdefinition_loggerdefinitionversion.go @@ -0,0 +1,65 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// LoggerDefinition_LoggerDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinition.LoggerDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html +type LoggerDefinition_LoggerDefinitionVersion struct { + + // Loggers AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html#cfn-greengrass-loggerdefinition-loggerdefinitionversion-loggers + Loggers []LoggerDefinition_Logger `json:"Loggers,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *LoggerDefinition_LoggerDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::LoggerDefinition.LoggerDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoggerDefinition_LoggerDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *LoggerDefinition_LoggerDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoggerDefinition_LoggerDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *LoggerDefinition_LoggerDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoggerDefinition_LoggerDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *LoggerDefinition_LoggerDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-loggerdefinitionversion.go b/cloudformation/greengrass/aws-greengrass-loggerdefinitionversion.go similarity index 75% rename from cloudformation/resources/aws-greengrass-loggerdefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-loggerdefinitionversion.go index 84eacdc026..1944053c4e 100644 --- a/cloudformation/resources/aws-greengrass-loggerdefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-loggerdefinitionversion.go @@ -1,15 +1,16 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassLoggerDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinitionVersion) +// LoggerDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinitionVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html -type AWSGreengrassLoggerDefinitionVersion struct { +type LoggerDefinitionVersion struct { // LoggerDefinitionId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGreengrassLoggerDefinitionVersion struct { // Loggers AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html#cfn-greengrass-loggerdefinitionversion-loggers - Loggers []AWSGreengrassLoggerDefinitionVersion_Logger `json:"Loggers,omitempty"` + Loggers []LoggerDefinitionVersion_Logger `json:"Loggers,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGreengrassLoggerDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassLoggerDefinitionVersion) AWSCloudFormationType() string { +func (r *LoggerDefinitionVersion) AWSCloudFormationType() string { return "AWS::Greengrass::LoggerDefinitionVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinitionVersion) DependsOn() []string { +func (r *LoggerDefinitionVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinitionVersion) SetDependsOn(dependencies []string) { +func (r *LoggerDefinitionVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinitionVersion) Metadata() map[string]interface{} { +func (r *LoggerDefinitionVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +func (r *LoggerDefinitionVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *LoggerDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoggerDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassLoggerDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassLoggerDefinitionVersion +func (r LoggerDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties LoggerDefinitionVersion return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGreengrassLoggerDefinitionVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassLoggerDefinitionVersion) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassLoggerDefinitionVersion +func (r *LoggerDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties LoggerDefinitionVersion res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGreengrassLoggerDefinitionVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassLoggerDefinitionVersion(*res.Properties) + *r = LoggerDefinitionVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-loggerdefinitionversion_logger.go b/cloudformation/greengrass/aws-greengrass-loggerdefinitionversion_logger.go similarity index 77% rename from cloudformation/resources/aws-greengrass-loggerdefinitionversion_logger.go rename to cloudformation/greengrass/aws-greengrass-loggerdefinitionversion_logger.go index 17a5217553..32fb53bd02 100644 --- a/cloudformation/resources/aws-greengrass-loggerdefinitionversion_logger.go +++ b/cloudformation/greengrass/aws-greengrass-loggerdefinitionversion_logger.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassLoggerDefinitionVersion_Logger AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinitionVersion.Logger) +// LoggerDefinitionVersion_Logger AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinitionVersion.Logger) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html -type AWSGreengrassLoggerDefinitionVersion_Logger struct { +type LoggerDefinitionVersion_Logger struct { // Component AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSGreengrassLoggerDefinitionVersion_Logger struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassLoggerDefinitionVersion_Logger) AWSCloudFormationType() string { +func (r *LoggerDefinitionVersion_Logger) AWSCloudFormationType() string { return "AWS::Greengrass::LoggerDefinitionVersion.Logger" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinitionVersion_Logger) DependsOn() []string { +func (r *LoggerDefinitionVersion_Logger) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinitionVersion_Logger) SetDependsOn(dependencies []string) { +func (r *LoggerDefinitionVersion_Logger) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinitionVersion_Logger) Metadata() map[string]interface{} { +func (r *LoggerDefinitionVersion_Logger) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinitionVersion_Logger) SetMetadata(metadata map[string]interface{}) { +func (r *LoggerDefinitionVersion_Logger) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinitionVersion_Logger) DeletionPolicy() policies.DeletionPolicy { +func (r *LoggerDefinitionVersion_Logger) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinitionVersion_Logger) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoggerDefinitionVersion_Logger) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition.go similarity index 77% rename from cloudformation/resources/aws-greengrass-resourcedefinition.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition.go index b6e009c0c5..af64dc3b7e 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition.go @@ -1,20 +1,21 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassResourceDefinition AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition) +// ResourceDefinition AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html -type AWSGreengrassResourceDefinition struct { +type ResourceDefinition struct { // InitialVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-initialversion - InitialVersion *AWSGreengrassResourceDefinition_ResourceDefinitionVersion `json:"InitialVersion,omitempty"` + InitialVersion *ResourceDefinition_ResourceDefinitionVersion `json:"InitialVersion,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSGreengrassResourceDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition) AWSCloudFormationType() string { +func (r *ResourceDefinition) AWSCloudFormationType() string { return "AWS::Greengrass::ResourceDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition) DependsOn() []string { +func (r *ResourceDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition) SetDependsOn(dependencies []string) { +func (r *ResourceDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition) Metadata() map[string]interface{} { +func (r *ResourceDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *ResourceDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *ResourceDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassResourceDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassResourceDefinition +func (r ResourceDefinition) MarshalJSON() ([]byte, error) { + type Properties ResourceDefinition return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGreengrassResourceDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassResourceDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassResourceDefinition +func (r *ResourceDefinition) UnmarshalJSON(b []byte) error { + type Properties ResourceDefinition res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGreengrassResourceDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassResourceDefinition(*res.Properties) + *r = ResourceDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_groupownersetting.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_groupownersetting.go new file mode 100644 index 0000000000..de94faad7d --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_groupownersetting.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_GroupOwnerSetting AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.GroupOwnerSetting) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html +type ResourceDefinition_GroupOwnerSetting struct { + + // AutoAddGroupOwner AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-autoaddgroupowner + AutoAddGroupOwner bool `json:"AutoAddGroupOwner"` + + // GroupOwner AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-groupowner + GroupOwner string `json:"GroupOwner,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_GroupOwnerSetting) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.GroupOwnerSetting" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_GroupOwnerSetting) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_GroupOwnerSetting) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_GroupOwnerSetting) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_GroupOwnerSetting) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_GroupOwnerSetting) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_GroupOwnerSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_localdeviceresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_localdeviceresourcedata.go new file mode 100644 index 0000000000..b76981e4fa --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_localdeviceresourcedata.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_LocalDeviceResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.LocalDeviceResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html +type ResourceDefinition_LocalDeviceResourceData struct { + + // GroupOwnerSetting AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-groupownersetting + GroupOwnerSetting *ResourceDefinition_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` + + // SourcePath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-sourcepath + SourcePath string `json:"SourcePath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_LocalDeviceResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.LocalDeviceResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_LocalDeviceResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_LocalDeviceResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_LocalDeviceResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_LocalDeviceResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_LocalDeviceResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_LocalDeviceResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_localvolumeresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_localvolumeresourcedata.go new file mode 100644 index 0000000000..b578b46f0e --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_localvolumeresourcedata.go @@ -0,0 +1,75 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_LocalVolumeResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.LocalVolumeResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html +type ResourceDefinition_LocalVolumeResourceData struct { + + // DestinationPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-destinationpath + DestinationPath string `json:"DestinationPath,omitempty"` + + // GroupOwnerSetting AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-groupownersetting + GroupOwnerSetting *ResourceDefinition_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` + + // SourcePath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-sourcepath + SourcePath string `json:"SourcePath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_LocalVolumeResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.LocalVolumeResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_LocalVolumeResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_LocalVolumeResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_LocalVolumeResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_LocalVolumeResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_LocalVolumeResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_LocalVolumeResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedatacontainer.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedatacontainer.go new file mode 100644 index 0000000000..5dc38ec3d1 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedatacontainer.go @@ -0,0 +1,85 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_ResourceDataContainer AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceDataContainer) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html +type ResourceDefinition_ResourceDataContainer struct { + + // LocalDeviceResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localdeviceresourcedata + LocalDeviceResourceData *ResourceDefinition_LocalDeviceResourceData `json:"LocalDeviceResourceData,omitempty"` + + // LocalVolumeResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localvolumeresourcedata + LocalVolumeResourceData *ResourceDefinition_LocalVolumeResourceData `json:"LocalVolumeResourceData,omitempty"` + + // S3MachineLearningModelResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-s3machinelearningmodelresourcedata + S3MachineLearningModelResourceData *ResourceDefinition_S3MachineLearningModelResourceData `json:"S3MachineLearningModelResourceData,omitempty"` + + // SageMakerMachineLearningModelResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-sagemakermachinelearningmodelresourcedata + SageMakerMachineLearningModelResourceData *ResourceDefinition_SageMakerMachineLearningModelResourceData `json:"SageMakerMachineLearningModelResourceData,omitempty"` + + // SecretsManagerSecretResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-secretsmanagersecretresourcedata + SecretsManagerSecretResourceData *ResourceDefinition_SecretsManagerSecretResourceData `json:"SecretsManagerSecretResourceData,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_ResourceDataContainer) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.ResourceDataContainer" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_ResourceDataContainer) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_ResourceDataContainer) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_ResourceDataContainer) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_ResourceDataContainer) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_ResourceDataContainer) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_ResourceDataContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedefinitionversion.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedefinitionversion.go new file mode 100644 index 0000000000..675ff28692 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedefinitionversion.go @@ -0,0 +1,65 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_ResourceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html +type ResourceDefinition_ResourceDefinitionVersion struct { + + // Resources AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html#cfn-greengrass-resourcedefinition-resourcedefinitionversion-resources + Resources []ResourceDefinition_ResourceInstance `json:"Resources,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_ResourceDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.ResourceDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_ResourceDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_ResourceDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_ResourceDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_ResourceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_ResourceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_ResourceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourceinstance.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourceinstance.go new file mode 100644 index 0000000000..f1bd6575c9 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourceinstance.go @@ -0,0 +1,75 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_ResourceInstance AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceInstance) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html +type ResourceDefinition_ResourceInstance struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-id + Id string `json:"Id,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-name + Name string `json:"Name,omitempty"` + + // ResourceDataContainer AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-resourcedatacontainer + ResourceDataContainer *ResourceDefinition_ResourceDataContainer `json:"ResourceDataContainer,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_ResourceInstance) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.ResourceInstance" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_ResourceInstance) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_ResourceInstance) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_ResourceInstance) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_ResourceInstance) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_ResourceInstance) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_ResourceInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go new file mode 100644 index 0000000000..6d3785e0d4 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_S3MachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.S3MachineLearningModelResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html +type ResourceDefinition_S3MachineLearningModelResourceData struct { + + // DestinationPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-destinationpath + DestinationPath string `json:"DestinationPath,omitempty"` + + // S3Uri AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-s3uri + S3Uri string `json:"S3Uri,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_S3MachineLearningModelResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.S3MachineLearningModelResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_S3MachineLearningModelResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_S3MachineLearningModelResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_S3MachineLearningModelResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_S3MachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_S3MachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_S3MachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go new file mode 100644 index 0000000000..d73b605fc1 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_SageMakerMachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.SageMakerMachineLearningModelResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html +type ResourceDefinition_SageMakerMachineLearningModelResourceData struct { + + // DestinationPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-destinationpath + DestinationPath string `json:"DestinationPath,omitempty"` + + // SageMakerJobArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-sagemakerjobarn + SageMakerJobArn string `json:"SageMakerJobArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_SageMakerMachineLearningModelResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.SageMakerMachineLearningModelResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_SageMakerMachineLearningModelResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_SageMakerMachineLearningModelResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_SageMakerMachineLearningModelResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_SageMakerMachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_SageMakerMachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_SageMakerMachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go new file mode 100644 index 0000000000..b5a060ff09 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinition_SecretsManagerSecretResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.SecretsManagerSecretResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html +type ResourceDefinition_SecretsManagerSecretResourceData struct { + + // ARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-arn + ARN string `json:"ARN,omitempty"` + + // AdditionalStagingLabelsToDownload AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-additionalstaginglabelstodownload + AdditionalStagingLabelsToDownload []string `json:"AdditionalStagingLabelsToDownload,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinition_SecretsManagerSecretResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinition.SecretsManagerSecretResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_SecretsManagerSecretResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinition_SecretsManagerSecretResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_SecretsManagerSecretResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinition_SecretsManagerSecretResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_SecretsManagerSecretResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinition_SecretsManagerSecretResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion.go similarity index 75% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion.go index 1333978163..0bf29b79b5 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion.go @@ -1,15 +1,16 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassResourceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion) +// ResourceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html -type AWSGreengrassResourceDefinitionVersion struct { +type ResourceDefinitionVersion struct { // ResourceDefinitionId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGreengrassResourceDefinitionVersion struct { // Resources AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html#cfn-greengrass-resourcedefinitionversion-resources - Resources []AWSGreengrassResourceDefinitionVersion_ResourceInstance `json:"Resources,omitempty"` + Resources []ResourceDefinitionVersion_ResourceInstance `json:"Resources,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGreengrassResourceDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion) AWSCloudFormationType() string { +func (r *ResourceDefinitionVersion) AWSCloudFormationType() string { return "AWS::Greengrass::ResourceDefinitionVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion) DependsOn() []string { +func (r *ResourceDefinitionVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion) SetDependsOn(dependencies []string) { +func (r *ResourceDefinitionVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion) Metadata() map[string]interface{} { +func (r *ResourceDefinitionVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +func (r *ResourceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *ResourceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassResourceDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassResourceDefinitionVersion +func (r ResourceDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties ResourceDefinitionVersion return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGreengrassResourceDefinitionVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassResourceDefinitionVersion) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassResourceDefinitionVersion +func (r *ResourceDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties ResourceDefinitionVersion res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGreengrassResourceDefinitionVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassResourceDefinitionVersion(*res.Properties) + *r = ResourceDefinitionVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_groupownersetting.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_groupownersetting.go new file mode 100644 index 0000000000..4ccede43c2 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_groupownersetting.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinitionVersion_GroupOwnerSetting AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.GroupOwnerSetting) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html +type ResourceDefinitionVersion_GroupOwnerSetting struct { + + // AutoAddGroupOwner AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-autoaddgroupowner + AutoAddGroupOwner bool `json:"AutoAddGroupOwner"` + + // GroupOwner AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-groupowner + GroupOwner string `json:"GroupOwner,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinitionVersion_GroupOwnerSetting) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinitionVersion.GroupOwnerSetting" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_GroupOwnerSetting) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_GroupOwnerSetting) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_GroupOwnerSetting) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_GroupOwnerSetting) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_GroupOwnerSetting) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_GroupOwnerSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go new file mode 100644 index 0000000000..cec30720fd --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinitionVersion_LocalDeviceResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.LocalDeviceResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html +type ResourceDefinitionVersion_LocalDeviceResourceData struct { + + // GroupOwnerSetting AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-groupownersetting + GroupOwnerSetting *ResourceDefinitionVersion_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` + + // SourcePath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-sourcepath + SourcePath string `json:"SourcePath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinitionVersion_LocalDeviceResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinitionVersion.LocalDeviceResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_LocalDeviceResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_LocalDeviceResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_LocalDeviceResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_LocalDeviceResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_LocalDeviceResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_LocalDeviceResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go new file mode 100644 index 0000000000..80b77196cb --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go @@ -0,0 +1,75 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinitionVersion_LocalVolumeResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.LocalVolumeResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html +type ResourceDefinitionVersion_LocalVolumeResourceData struct { + + // DestinationPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-destinationpath + DestinationPath string `json:"DestinationPath,omitempty"` + + // GroupOwnerSetting AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-groupownersetting + GroupOwnerSetting *ResourceDefinitionVersion_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` + + // SourcePath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-sourcepath + SourcePath string `json:"SourcePath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinitionVersion_LocalVolumeResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinitionVersion.LocalVolumeResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_LocalVolumeResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_LocalVolumeResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_LocalVolumeResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_LocalVolumeResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_LocalVolumeResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_LocalVolumeResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go new file mode 100644 index 0000000000..92657a949d --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go @@ -0,0 +1,85 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinitionVersion_ResourceDataContainer AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.ResourceDataContainer) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html +type ResourceDefinitionVersion_ResourceDataContainer struct { + + // LocalDeviceResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localdeviceresourcedata + LocalDeviceResourceData *ResourceDefinitionVersion_LocalDeviceResourceData `json:"LocalDeviceResourceData,omitempty"` + + // LocalVolumeResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localvolumeresourcedata + LocalVolumeResourceData *ResourceDefinitionVersion_LocalVolumeResourceData `json:"LocalVolumeResourceData,omitempty"` + + // S3MachineLearningModelResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-s3machinelearningmodelresourcedata + S3MachineLearningModelResourceData *ResourceDefinitionVersion_S3MachineLearningModelResourceData `json:"S3MachineLearningModelResourceData,omitempty"` + + // SageMakerMachineLearningModelResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-sagemakermachinelearningmodelresourcedata + SageMakerMachineLearningModelResourceData *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData `json:"SageMakerMachineLearningModelResourceData,omitempty"` + + // SecretsManagerSecretResourceData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-secretsmanagersecretresourcedata + SecretsManagerSecretResourceData *ResourceDefinitionVersion_SecretsManagerSecretResourceData `json:"SecretsManagerSecretResourceData,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinitionVersion_ResourceDataContainer) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinitionVersion.ResourceDataContainer" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_ResourceDataContainer) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_ResourceDataContainer) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_ResourceDataContainer) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_ResourceDataContainer) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_ResourceDataContainer) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_ResourceDataContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourceinstance.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourceinstance.go new file mode 100644 index 0000000000..668a26be94 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourceinstance.go @@ -0,0 +1,75 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinitionVersion_ResourceInstance AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.ResourceInstance) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html +type ResourceDefinitionVersion_ResourceInstance struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-id + Id string `json:"Id,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-name + Name string `json:"Name,omitempty"` + + // ResourceDataContainer AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-resourcedatacontainer + ResourceDataContainer *ResourceDefinitionVersion_ResourceDataContainer `json:"ResourceDataContainer,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinitionVersion_ResourceInstance) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinitionVersion.ResourceInstance" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_ResourceInstance) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_ResourceInstance) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_ResourceInstance) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_ResourceInstance) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_ResourceInstance) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_ResourceInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go new file mode 100644 index 0000000000..f2825aed13 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinitionVersion_S3MachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.S3MachineLearningModelResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html +type ResourceDefinitionVersion_S3MachineLearningModelResourceData struct { + + // DestinationPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-destinationpath + DestinationPath string `json:"DestinationPath,omitempty"` + + // S3Uri AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-s3uri + S3Uri string `json:"S3Uri,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinitionVersion_S3MachineLearningModelResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinitionVersion.S3MachineLearningModelResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_S3MachineLearningModelResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_S3MachineLearningModelResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_S3MachineLearningModelResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_S3MachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_S3MachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_S3MachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go new file mode 100644 index 0000000000..0dfc281daa --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.SageMakerMachineLearningModelResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html +type ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData struct { + + // DestinationPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-destinationpath + DestinationPath string `json:"DestinationPath,omitempty"` + + // SageMakerJobArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-sagemakerjobarn + SageMakerJobArn string `json:"SageMakerJobArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinitionVersion.SageMakerMachineLearningModelResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go new file mode 100644 index 0000000000..f1ff0c41af --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go @@ -0,0 +1,70 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResourceDefinitionVersion_SecretsManagerSecretResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.SecretsManagerSecretResourceData) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html +type ResourceDefinitionVersion_SecretsManagerSecretResourceData struct { + + // ARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-arn + ARN string `json:"ARN,omitempty"` + + // AdditionalStagingLabelsToDownload AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-additionalstaginglabelstodownload + AdditionalStagingLabelsToDownload []string `json:"AdditionalStagingLabelsToDownload,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResourceDefinitionVersion_SecretsManagerSecretResourceData) AWSCloudFormationType() string { + return "AWS::Greengrass::ResourceDefinitionVersion.SecretsManagerSecretResourceData" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_SecretsManagerSecretResourceData) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResourceDefinitionVersion_SecretsManagerSecretResourceData) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_SecretsManagerSecretResourceData) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResourceDefinitionVersion_SecretsManagerSecretResourceData) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_SecretsManagerSecretResourceData) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResourceDefinitionVersion_SecretsManagerSecretResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-greengrass-subscriptiondefinition.go b/cloudformation/greengrass/aws-greengrass-subscriptiondefinition.go similarity index 76% rename from cloudformation/resources/aws-greengrass-subscriptiondefinition.go rename to cloudformation/greengrass/aws-greengrass-subscriptiondefinition.go index 0147e1929f..3b7b2330f3 100644 --- a/cloudformation/resources/aws-greengrass-subscriptiondefinition.go +++ b/cloudformation/greengrass/aws-greengrass-subscriptiondefinition.go @@ -1,20 +1,21 @@ -package resources +package greengrass import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGreengrassSubscriptionDefinition AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinition) +// SubscriptionDefinition AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html -type AWSGreengrassSubscriptionDefinition struct { +type SubscriptionDefinition struct { // InitialVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-initialversion - InitialVersion *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion `json:"InitialVersion,omitempty"` + InitialVersion *SubscriptionDefinition_SubscriptionDefinitionVersion `json:"InitialVersion,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSGreengrassSubscriptionDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassSubscriptionDefinition) AWSCloudFormationType() string { +func (r *SubscriptionDefinition) AWSCloudFormationType() string { return "AWS::Greengrass::SubscriptionDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinition) DependsOn() []string { +func (r *SubscriptionDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinition) SetDependsOn(dependencies []string) { +func (r *SubscriptionDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinition) Metadata() map[string]interface{} { +func (r *SubscriptionDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *SubscriptionDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *SubscriptionDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubscriptionDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassSubscriptionDefinition) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassSubscriptionDefinition +func (r SubscriptionDefinition) MarshalJSON() ([]byte, error) { + type Properties SubscriptionDefinition return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGreengrassSubscriptionDefinition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassSubscriptionDefinition) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassSubscriptionDefinition +func (r *SubscriptionDefinition) UnmarshalJSON(b []byte) error { + type Properties SubscriptionDefinition res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGreengrassSubscriptionDefinition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassSubscriptionDefinition(*res.Properties) + *r = SubscriptionDefinition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-subscriptiondefinition_subscription.go b/cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscription.go similarity index 75% rename from cloudformation/resources/aws-greengrass-subscriptiondefinition_subscription.go rename to cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscription.go index b1b538af72..a3a3f4d581 100644 --- a/cloudformation/resources/aws-greengrass-subscriptiondefinition_subscription.go +++ b/cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscription.go @@ -1,10 +1,12 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassSubscriptionDefinition_Subscription AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinition.Subscription) +// SubscriptionDefinition_Subscription AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinition.Subscription) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html -type AWSGreengrassSubscriptionDefinition_Subscription struct { +type SubscriptionDefinition_Subscription struct { // Id AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSGreengrassSubscriptionDefinition_Subscription struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassSubscriptionDefinition_Subscription) AWSCloudFormationType() string { +func (r *SubscriptionDefinition_Subscription) AWSCloudFormationType() string { return "AWS::Greengrass::SubscriptionDefinition.Subscription" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinition_Subscription) DependsOn() []string { +func (r *SubscriptionDefinition_Subscription) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinition_Subscription) SetDependsOn(dependencies []string) { +func (r *SubscriptionDefinition_Subscription) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinition_Subscription) Metadata() map[string]interface{} { +func (r *SubscriptionDefinition_Subscription) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinition_Subscription) SetMetadata(metadata map[string]interface{}) { +func (r *SubscriptionDefinition_Subscription) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinition_Subscription) DeletionPolicy() policies.DeletionPolicy { +func (r *SubscriptionDefinition_Subscription) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinition_Subscription) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubscriptionDefinition_Subscription) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go b/cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go new file mode 100644 index 0000000000..6341e43890 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go @@ -0,0 +1,65 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SubscriptionDefinition_SubscriptionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinition.SubscriptionDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html +type SubscriptionDefinition_SubscriptionDefinitionVersion struct { + + // Subscriptions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinition-subscriptiondefinitionversion-subscriptions + Subscriptions []SubscriptionDefinition_Subscription `json:"Subscriptions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SubscriptionDefinition_SubscriptionDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::SubscriptionDefinition.SubscriptionDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SubscriptionDefinition_SubscriptionDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SubscriptionDefinition_SubscriptionDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SubscriptionDefinition_SubscriptionDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SubscriptionDefinition_SubscriptionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SubscriptionDefinition_SubscriptionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SubscriptionDefinition_SubscriptionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion.go b/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion.go new file mode 100644 index 0000000000..ecde9d04a2 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion.go @@ -0,0 +1,129 @@ +package greengrass + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SubscriptionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinitionVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html +type SubscriptionDefinitionVersion struct { + + // SubscriptionDefinitionId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptiondefinitionid + SubscriptionDefinitionId string `json:"SubscriptionDefinitionId,omitempty"` + + // Subscriptions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptions + Subscriptions []SubscriptionDefinitionVersion_Subscription `json:"Subscriptions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SubscriptionDefinitionVersion) AWSCloudFormationType() string { + return "AWS::Greengrass::SubscriptionDefinitionVersion" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SubscriptionDefinitionVersion) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SubscriptionDefinitionVersion) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SubscriptionDefinitionVersion) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SubscriptionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SubscriptionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SubscriptionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r SubscriptionDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties SubscriptionDefinitionVersion + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *SubscriptionDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties SubscriptionDefinitionVersion + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = SubscriptionDefinitionVersion(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion_subscription.go b/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion_subscription.go new file mode 100644 index 0000000000..8c33757e72 --- /dev/null +++ b/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion_subscription.go @@ -0,0 +1,80 @@ +package greengrass + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SubscriptionDefinitionVersion_Subscription AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinitionVersion.Subscription) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html +type SubscriptionDefinitionVersion_Subscription struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-id + Id string `json:"Id,omitempty"` + + // Source AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-source + Source string `json:"Source,omitempty"` + + // Subject AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-subject + Subject string `json:"Subject,omitempty"` + + // Target AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-target + Target string `json:"Target,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SubscriptionDefinitionVersion_Subscription) AWSCloudFormationType() string { + return "AWS::Greengrass::SubscriptionDefinitionVersion.Subscription" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SubscriptionDefinitionVersion_Subscription) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SubscriptionDefinitionVersion_Subscription) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SubscriptionDefinitionVersion_Subscription) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SubscriptionDefinitionVersion_Subscription) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SubscriptionDefinitionVersion_Subscription) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SubscriptionDefinitionVersion_Subscription) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-guardduty-detector.go b/cloudformation/guardduty/aws-guardduty-detector.go similarity index 80% rename from cloudformation/resources/aws-guardduty-detector.go rename to cloudformation/guardduty/aws-guardduty-detector.go index 690e1aebf1..4a0eaa54bf 100644 --- a/cloudformation/resources/aws-guardduty-detector.go +++ b/cloudformation/guardduty/aws-guardduty-detector.go @@ -1,15 +1,16 @@ -package resources +package guardduty import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGuardDutyDetector AWS CloudFormation Resource (AWS::GuardDuty::Detector) +// Detector AWS CloudFormation Resource (AWS::GuardDuty::Detector) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html -type AWSGuardDutyDetector struct { +type Detector struct { // Enable AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSGuardDutyDetector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyDetector) AWSCloudFormationType() string { +func (r *Detector) AWSCloudFormationType() string { return "AWS::GuardDuty::Detector" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyDetector) DependsOn() []string { +func (r *Detector) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyDetector) SetDependsOn(dependencies []string) { +func (r *Detector) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyDetector) Metadata() map[string]interface{} { +func (r *Detector) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyDetector) SetMetadata(metadata map[string]interface{}) { +func (r *Detector) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyDetector) DeletionPolicy() policies.DeletionPolicy { +func (r *Detector) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyDetector) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Detector) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGuardDutyDetector) MarshalJSON() ([]byte, error) { - type Properties AWSGuardDutyDetector +func (r Detector) MarshalJSON() ([]byte, error) { + type Properties Detector return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGuardDutyDetector) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGuardDutyDetector) UnmarshalJSON(b []byte) error { - type Properties AWSGuardDutyDetector +func (r *Detector) UnmarshalJSON(b []byte) error { + type Properties Detector res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGuardDutyDetector) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGuardDutyDetector(*res.Properties) + *r = Detector(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-guardduty-filter.go b/cloudformation/guardduty/aws-guardduty-filter.go similarity index 82% rename from cloudformation/resources/aws-guardduty-filter.go rename to cloudformation/guardduty/aws-guardduty-filter.go index 69de4c8372..c8c56b7d69 100644 --- a/cloudformation/resources/aws-guardduty-filter.go +++ b/cloudformation/guardduty/aws-guardduty-filter.go @@ -1,15 +1,16 @@ -package resources +package guardduty import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGuardDutyFilter AWS CloudFormation Resource (AWS::GuardDuty::Filter) +// Filter AWS CloudFormation Resource (AWS::GuardDuty::Filter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html -type AWSGuardDutyFilter struct { +type Filter struct { // Action AWS CloudFormation Property // Required: true @@ -29,7 +30,7 @@ type AWSGuardDutyFilter struct { // FindingCriteria AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-findingcriteria - FindingCriteria *AWSGuardDutyFilter_FindingCriteria `json:"FindingCriteria,omitempty"` + FindingCriteria *Filter_FindingCriteria `json:"FindingCriteria,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -52,50 +53,50 @@ type AWSGuardDutyFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyFilter) AWSCloudFormationType() string { +func (r *Filter) AWSCloudFormationType() string { return "AWS::GuardDuty::Filter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyFilter) DependsOn() []string { +func (r *Filter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyFilter) SetDependsOn(dependencies []string) { +func (r *Filter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyFilter) Metadata() map[string]interface{} { +func (r *Filter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyFilter) SetMetadata(metadata map[string]interface{}) { +func (r *Filter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyFilter) DeletionPolicy() policies.DeletionPolicy { +func (r *Filter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGuardDutyFilter) MarshalJSON() ([]byte, error) { - type Properties AWSGuardDutyFilter +func (r Filter) MarshalJSON() ([]byte, error) { + type Properties Filter return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSGuardDutyFilter) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGuardDutyFilter) UnmarshalJSON(b []byte) error { - type Properties AWSGuardDutyFilter +func (r *Filter) UnmarshalJSON(b []byte) error { + type Properties Filter res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSGuardDutyFilter) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGuardDutyFilter(*res.Properties) + *r = Filter(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-guardduty-filter_condition.go b/cloudformation/guardduty/aws-guardduty-filter_condition.go similarity index 79% rename from cloudformation/resources/aws-guardduty-filter_condition.go rename to cloudformation/guardduty/aws-guardduty-filter_condition.go index a5139337d2..7c4a3a6e2e 100644 --- a/cloudformation/resources/aws-guardduty-filter_condition.go +++ b/cloudformation/guardduty/aws-guardduty-filter_condition.go @@ -1,10 +1,12 @@ -package resources +package guardduty -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGuardDutyFilter_Condition AWS CloudFormation Resource (AWS::GuardDuty::Filter.Condition) +// Filter_Condition AWS CloudFormation Resource (AWS::GuardDuty::Filter.Condition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html -type AWSGuardDutyFilter_Condition struct { +type Filter_Condition struct { // Eq AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSGuardDutyFilter_Condition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyFilter_Condition) AWSCloudFormationType() string { +func (r *Filter_Condition) AWSCloudFormationType() string { return "AWS::GuardDuty::Filter.Condition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyFilter_Condition) DependsOn() []string { +func (r *Filter_Condition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyFilter_Condition) SetDependsOn(dependencies []string) { +func (r *Filter_Condition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyFilter_Condition) Metadata() map[string]interface{} { +func (r *Filter_Condition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyFilter_Condition) SetMetadata(metadata map[string]interface{}) { +func (r *Filter_Condition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyFilter_Condition) DeletionPolicy() policies.DeletionPolicy { +func (r *Filter_Condition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyFilter_Condition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Filter_Condition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/guardduty/aws-guardduty-filter_findingcriteria.go b/cloudformation/guardduty/aws-guardduty-filter_findingcriteria.go new file mode 100644 index 0000000000..c844c58b0d --- /dev/null +++ b/cloudformation/guardduty/aws-guardduty-filter_findingcriteria.go @@ -0,0 +1,70 @@ +package guardduty + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Filter_FindingCriteria AWS CloudFormation Resource (AWS::GuardDuty::Filter.FindingCriteria) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html +type Filter_FindingCriteria struct { + + // Criterion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html#cfn-guardduty-filter-findingcriteria-criterion + Criterion interface{} `json:"Criterion,omitempty"` + + // ItemType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html#cfn-guardduty-filter-findingcriteria-itemtype + ItemType *Filter_Condition `json:"ItemType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Filter_FindingCriteria) AWSCloudFormationType() string { + return "AWS::GuardDuty::Filter.FindingCriteria" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Filter_FindingCriteria) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Filter_FindingCriteria) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Filter_FindingCriteria) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Filter_FindingCriteria) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Filter_FindingCriteria) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Filter_FindingCriteria) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-guardduty-ipset.go b/cloudformation/guardduty/aws-guardduty-ipset.go similarity index 83% rename from cloudformation/resources/aws-guardduty-ipset.go rename to cloudformation/guardduty/aws-guardduty-ipset.go index 717504ec34..a7af63e3bb 100644 --- a/cloudformation/resources/aws-guardduty-ipset.go +++ b/cloudformation/guardduty/aws-guardduty-ipset.go @@ -1,15 +1,16 @@ -package resources +package guardduty import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGuardDutyIPSet AWS CloudFormation Resource (AWS::GuardDuty::IPSet) +// IPSet AWS CloudFormation Resource (AWS::GuardDuty::IPSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html -type AWSGuardDutyIPSet struct { +type IPSet struct { // Activate AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSGuardDutyIPSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyIPSet) AWSCloudFormationType() string { +func (r *IPSet) AWSCloudFormationType() string { return "AWS::GuardDuty::IPSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyIPSet) DependsOn() []string { +func (r *IPSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyIPSet) SetDependsOn(dependencies []string) { +func (r *IPSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyIPSet) Metadata() map[string]interface{} { +func (r *IPSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyIPSet) SetMetadata(metadata map[string]interface{}) { +func (r *IPSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyIPSet) DeletionPolicy() policies.DeletionPolicy { +func (r *IPSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyIPSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IPSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGuardDutyIPSet) MarshalJSON() ([]byte, error) { - type Properties AWSGuardDutyIPSet +func (r IPSet) MarshalJSON() ([]byte, error) { + type Properties IPSet return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSGuardDutyIPSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGuardDutyIPSet) UnmarshalJSON(b []byte) error { - type Properties AWSGuardDutyIPSet +func (r *IPSet) UnmarshalJSON(b []byte) error { + type Properties IPSet res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSGuardDutyIPSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGuardDutyIPSet(*res.Properties) + *r = IPSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-guardduty-master.go b/cloudformation/guardduty/aws-guardduty-master.go similarity index 81% rename from cloudformation/resources/aws-guardduty-master.go rename to cloudformation/guardduty/aws-guardduty-master.go index 43016db30c..28e5111c80 100644 --- a/cloudformation/resources/aws-guardduty-master.go +++ b/cloudformation/guardduty/aws-guardduty-master.go @@ -1,15 +1,16 @@ -package resources +package guardduty import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGuardDutyMaster AWS CloudFormation Resource (AWS::GuardDuty::Master) +// Master AWS CloudFormation Resource (AWS::GuardDuty::Master) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html -type AWSGuardDutyMaster struct { +type Master struct { // DetectorId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSGuardDutyMaster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyMaster) AWSCloudFormationType() string { +func (r *Master) AWSCloudFormationType() string { return "AWS::GuardDuty::Master" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyMaster) DependsOn() []string { +func (r *Master) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyMaster) SetDependsOn(dependencies []string) { +func (r *Master) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyMaster) Metadata() map[string]interface{} { +func (r *Master) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyMaster) SetMetadata(metadata map[string]interface{}) { +func (r *Master) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyMaster) DeletionPolicy() policies.DeletionPolicy { +func (r *Master) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyMaster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Master) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGuardDutyMaster) MarshalJSON() ([]byte, error) { - type Properties AWSGuardDutyMaster +func (r Master) MarshalJSON() ([]byte, error) { + type Properties Master return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGuardDutyMaster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGuardDutyMaster) UnmarshalJSON(b []byte) error { - type Properties AWSGuardDutyMaster +func (r *Master) UnmarshalJSON(b []byte) error { + type Properties Master res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGuardDutyMaster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGuardDutyMaster(*res.Properties) + *r = Master(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-guardduty-member.go b/cloudformation/guardduty/aws-guardduty-member.go similarity index 84% rename from cloudformation/resources/aws-guardduty-member.go rename to cloudformation/guardduty/aws-guardduty-member.go index 38fb809b26..d6f7e7a1f4 100644 --- a/cloudformation/resources/aws-guardduty-member.go +++ b/cloudformation/guardduty/aws-guardduty-member.go @@ -1,15 +1,16 @@ -package resources +package guardduty import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGuardDutyMember AWS CloudFormation Resource (AWS::GuardDuty::Member) +// Member AWS CloudFormation Resource (AWS::GuardDuty::Member) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html -type AWSGuardDutyMember struct { +type Member struct { // DetectorId AWS CloudFormation Property // Required: true @@ -52,50 +53,50 @@ type AWSGuardDutyMember struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyMember) AWSCloudFormationType() string { +func (r *Member) AWSCloudFormationType() string { return "AWS::GuardDuty::Member" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyMember) DependsOn() []string { +func (r *Member) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyMember) SetDependsOn(dependencies []string) { +func (r *Member) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyMember) Metadata() map[string]interface{} { +func (r *Member) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyMember) SetMetadata(metadata map[string]interface{}) { +func (r *Member) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyMember) DeletionPolicy() policies.DeletionPolicy { +func (r *Member) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyMember) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Member) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGuardDutyMember) MarshalJSON() ([]byte, error) { - type Properties AWSGuardDutyMember +func (r Member) MarshalJSON() ([]byte, error) { + type Properties Member return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSGuardDutyMember) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGuardDutyMember) UnmarshalJSON(b []byte) error { - type Properties AWSGuardDutyMember +func (r *Member) UnmarshalJSON(b []byte) error { + type Properties Member res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSGuardDutyMember) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGuardDutyMember(*res.Properties) + *r = Member(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-guardduty-threatintelset.go b/cloudformation/guardduty/aws-guardduty-threatintelset.go similarity index 81% rename from cloudformation/resources/aws-guardduty-threatintelset.go rename to cloudformation/guardduty/aws-guardduty-threatintelset.go index cd01f4dc8d..2660ba839d 100644 --- a/cloudformation/resources/aws-guardduty-threatintelset.go +++ b/cloudformation/guardduty/aws-guardduty-threatintelset.go @@ -1,15 +1,16 @@ -package resources +package guardduty import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSGuardDutyThreatIntelSet AWS CloudFormation Resource (AWS::GuardDuty::ThreatIntelSet) +// ThreatIntelSet AWS CloudFormation Resource (AWS::GuardDuty::ThreatIntelSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html -type AWSGuardDutyThreatIntelSet struct { +type ThreatIntelSet struct { // Activate AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSGuardDutyThreatIntelSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyThreatIntelSet) AWSCloudFormationType() string { +func (r *ThreatIntelSet) AWSCloudFormationType() string { return "AWS::GuardDuty::ThreatIntelSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyThreatIntelSet) DependsOn() []string { +func (r *ThreatIntelSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyThreatIntelSet) SetDependsOn(dependencies []string) { +func (r *ThreatIntelSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyThreatIntelSet) Metadata() map[string]interface{} { +func (r *ThreatIntelSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyThreatIntelSet) SetMetadata(metadata map[string]interface{}) { +func (r *ThreatIntelSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyThreatIntelSet) DeletionPolicy() policies.DeletionPolicy { +func (r *ThreatIntelSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyThreatIntelSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ThreatIntelSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGuardDutyThreatIntelSet) MarshalJSON() ([]byte, error) { - type Properties AWSGuardDutyThreatIntelSet +func (r ThreatIntelSet) MarshalJSON() ([]byte, error) { + type Properties ThreatIntelSet return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSGuardDutyThreatIntelSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGuardDutyThreatIntelSet) UnmarshalJSON(b []byte) error { - type Properties AWSGuardDutyThreatIntelSet +func (r *ThreatIntelSet) UnmarshalJSON(b []byte) error { + type Properties ThreatIntelSet res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSGuardDutyThreatIntelSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGuardDutyThreatIntelSet(*res.Properties) + *r = ThreatIntelSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-accesskey.go b/cloudformation/iam/aws-iam-accesskey.go similarity index 82% rename from cloudformation/resources/aws-iam-accesskey.go rename to cloudformation/iam/aws-iam-accesskey.go index 8cb7668eaf..ddc06ba90c 100644 --- a/cloudformation/resources/aws-iam-accesskey.go +++ b/cloudformation/iam/aws-iam-accesskey.go @@ -1,15 +1,16 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIAMAccessKey AWS CloudFormation Resource (AWS::IAM::AccessKey) +// AccessKey AWS CloudFormation Resource (AWS::IAM::AccessKey) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html -type AWSIAMAccessKey struct { +type AccessKey struct { // Serial AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSIAMAccessKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMAccessKey) AWSCloudFormationType() string { +func (r *AccessKey) AWSCloudFormationType() string { return "AWS::IAM::AccessKey" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMAccessKey) DependsOn() []string { +func (r *AccessKey) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMAccessKey) SetDependsOn(dependencies []string) { +func (r *AccessKey) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMAccessKey) Metadata() map[string]interface{} { +func (r *AccessKey) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMAccessKey) SetMetadata(metadata map[string]interface{}) { +func (r *AccessKey) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMAccessKey) DeletionPolicy() policies.DeletionPolicy { +func (r *AccessKey) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMAccessKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AccessKey) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMAccessKey) MarshalJSON() ([]byte, error) { - type Properties AWSIAMAccessKey +func (r AccessKey) MarshalJSON() ([]byte, error) { + type Properties AccessKey return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSIAMAccessKey) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMAccessKey) UnmarshalJSON(b []byte) error { - type Properties AWSIAMAccessKey +func (r *AccessKey) UnmarshalJSON(b []byte) error { + type Properties AccessKey res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSIAMAccessKey) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMAccessKey(*res.Properties) + *r = AccessKey(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-group.go b/cloudformation/iam/aws-iam-group.go similarity index 83% rename from cloudformation/resources/aws-iam-group.go rename to cloudformation/iam/aws-iam-group.go index 30eadec921..ebe2298705 100644 --- a/cloudformation/resources/aws-iam-group.go +++ b/cloudformation/iam/aws-iam-group.go @@ -1,15 +1,16 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIAMGroup AWS CloudFormation Resource (AWS::IAM::Group) +// Group AWS CloudFormation Resource (AWS::IAM::Group) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html -type AWSIAMGroup struct { +type Group struct { // GroupName AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSIAMGroup struct { // Policies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-policies - Policies []AWSIAMGroup_Policy `json:"Policies,omitempty"` + Policies []Group_Policy `json:"Policies,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSIAMGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMGroup) AWSCloudFormationType() string { +func (r *Group) AWSCloudFormationType() string { return "AWS::IAM::Group" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMGroup) DependsOn() []string { +func (r *Group) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMGroup) SetDependsOn(dependencies []string) { +func (r *Group) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMGroup) Metadata() map[string]interface{} { +func (r *Group) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMGroup) SetMetadata(metadata map[string]interface{}) { +func (r *Group) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *Group) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Group) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMGroup) MarshalJSON() ([]byte, error) { - type Properties AWSIAMGroup +func (r Group) MarshalJSON() ([]byte, error) { + type Properties Group return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSIAMGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMGroup) UnmarshalJSON(b []byte) error { - type Properties AWSIAMGroup +func (r *Group) UnmarshalJSON(b []byte) error { + type Properties Group res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSIAMGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMGroup(*res.Properties) + *r = Group(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-group_policy.go b/cloudformation/iam/aws-iam-group_policy.go similarity index 77% rename from cloudformation/resources/aws-iam-group_policy.go rename to cloudformation/iam/aws-iam-group_policy.go index 66efbc30fa..4056f010ab 100644 --- a/cloudformation/resources/aws-iam-group_policy.go +++ b/cloudformation/iam/aws-iam-group_policy.go @@ -1,10 +1,12 @@ -package resources +package iam -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIAMGroup_Policy AWS CloudFormation Resource (AWS::IAM::Group.Policy) +// Group_Policy AWS CloudFormation Resource (AWS::IAM::Group.Policy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html -type AWSIAMGroup_Policy struct { +type Group_Policy struct { // PolicyDocument AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIAMGroup_Policy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMGroup_Policy) AWSCloudFormationType() string { +func (r *Group_Policy) AWSCloudFormationType() string { return "AWS::IAM::Group.Policy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMGroup_Policy) DependsOn() []string { +func (r *Group_Policy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMGroup_Policy) SetDependsOn(dependencies []string) { +func (r *Group_Policy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMGroup_Policy) Metadata() map[string]interface{} { +func (r *Group_Policy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMGroup_Policy) SetMetadata(metadata map[string]interface{}) { +func (r *Group_Policy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMGroup_Policy) DeletionPolicy() policies.DeletionPolicy { +func (r *Group_Policy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMGroup_Policy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Group_Policy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iam-instanceprofile.go b/cloudformation/iam/aws-iam-instanceprofile.go similarity index 81% rename from cloudformation/resources/aws-iam-instanceprofile.go rename to cloudformation/iam/aws-iam-instanceprofile.go index 8a8c963765..b1c6810f86 100644 --- a/cloudformation/resources/aws-iam-instanceprofile.go +++ b/cloudformation/iam/aws-iam-instanceprofile.go @@ -1,15 +1,16 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIAMInstanceProfile AWS CloudFormation Resource (AWS::IAM::InstanceProfile) +// InstanceProfile AWS CloudFormation Resource (AWS::IAM::InstanceProfile) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html -type AWSIAMInstanceProfile struct { +type InstanceProfile struct { // InstanceProfileName AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSIAMInstanceProfile struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMInstanceProfile) AWSCloudFormationType() string { +func (r *InstanceProfile) AWSCloudFormationType() string { return "AWS::IAM::InstanceProfile" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMInstanceProfile) DependsOn() []string { +func (r *InstanceProfile) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMInstanceProfile) SetDependsOn(dependencies []string) { +func (r *InstanceProfile) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMInstanceProfile) Metadata() map[string]interface{} { +func (r *InstanceProfile) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMInstanceProfile) SetMetadata(metadata map[string]interface{}) { +func (r *InstanceProfile) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMInstanceProfile) DeletionPolicy() policies.DeletionPolicy { +func (r *InstanceProfile) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMInstanceProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMInstanceProfile) MarshalJSON() ([]byte, error) { - type Properties AWSIAMInstanceProfile +func (r InstanceProfile) MarshalJSON() ([]byte, error) { + type Properties InstanceProfile return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSIAMInstanceProfile) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMInstanceProfile) UnmarshalJSON(b []byte) error { - type Properties AWSIAMInstanceProfile +func (r *InstanceProfile) UnmarshalJSON(b []byte) error { + type Properties InstanceProfile res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSIAMInstanceProfile) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMInstanceProfile(*res.Properties) + *r = InstanceProfile(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-managedpolicy.go b/cloudformation/iam/aws-iam-managedpolicy.go similarity index 84% rename from cloudformation/resources/aws-iam-managedpolicy.go rename to cloudformation/iam/aws-iam-managedpolicy.go index 16226c1691..c3cfbded9a 100644 --- a/cloudformation/resources/aws-iam-managedpolicy.go +++ b/cloudformation/iam/aws-iam-managedpolicy.go @@ -1,15 +1,16 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIAMManagedPolicy AWS CloudFormation Resource (AWS::IAM::ManagedPolicy) +// ManagedPolicy AWS CloudFormation Resource (AWS::IAM::ManagedPolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html -type AWSIAMManagedPolicy struct { +type ManagedPolicy struct { // Description AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSIAMManagedPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMManagedPolicy) AWSCloudFormationType() string { +func (r *ManagedPolicy) AWSCloudFormationType() string { return "AWS::IAM::ManagedPolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMManagedPolicy) DependsOn() []string { +func (r *ManagedPolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMManagedPolicy) SetDependsOn(dependencies []string) { +func (r *ManagedPolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMManagedPolicy) Metadata() map[string]interface{} { +func (r *ManagedPolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMManagedPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *ManagedPolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMManagedPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *ManagedPolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMManagedPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ManagedPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMManagedPolicy) MarshalJSON() ([]byte, error) { - type Properties AWSIAMManagedPolicy +func (r ManagedPolicy) MarshalJSON() ([]byte, error) { + type Properties ManagedPolicy return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSIAMManagedPolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMManagedPolicy) UnmarshalJSON(b []byte) error { - type Properties AWSIAMManagedPolicy +func (r *ManagedPolicy) UnmarshalJSON(b []byte) error { + type Properties ManagedPolicy res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSIAMManagedPolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMManagedPolicy(*res.Properties) + *r = ManagedPolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-policy.go b/cloudformation/iam/aws-iam-policy.go similarity index 84% rename from cloudformation/resources/aws-iam-policy.go rename to cloudformation/iam/aws-iam-policy.go index fc6b667147..6c2be14f27 100644 --- a/cloudformation/resources/aws-iam-policy.go +++ b/cloudformation/iam/aws-iam-policy.go @@ -1,15 +1,16 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIAMPolicy AWS CloudFormation Resource (AWS::IAM::Policy) +// Policy AWS CloudFormation Resource (AWS::IAM::Policy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html -type AWSIAMPolicy struct { +type Policy struct { // Groups AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSIAMPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMPolicy) AWSCloudFormationType() string { +func (r *Policy) AWSCloudFormationType() string { return "AWS::IAM::Policy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMPolicy) DependsOn() []string { +func (r *Policy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMPolicy) SetDependsOn(dependencies []string) { +func (r *Policy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMPolicy) Metadata() map[string]interface{} { +func (r *Policy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *Policy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *Policy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Policy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMPolicy) MarshalJSON() ([]byte, error) { - type Properties AWSIAMPolicy +func (r Policy) MarshalJSON() ([]byte, error) { + type Properties Policy return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSIAMPolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMPolicy) UnmarshalJSON(b []byte) error { - type Properties AWSIAMPolicy +func (r *Policy) UnmarshalJSON(b []byte) error { + type Properties Policy res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSIAMPolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMPolicy(*res.Properties) + *r = Policy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-role.go b/cloudformation/iam/aws-iam-role.go similarity index 86% rename from cloudformation/resources/aws-iam-role.go rename to cloudformation/iam/aws-iam-role.go index 066733c0f0..0c944d1657 100644 --- a/cloudformation/resources/aws-iam-role.go +++ b/cloudformation/iam/aws-iam-role.go @@ -1,15 +1,17 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSIAMRole AWS CloudFormation Resource (AWS::IAM::Role) +// Role AWS CloudFormation Resource (AWS::IAM::Role) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html -type AWSIAMRole struct { +type Role struct { // AssumeRolePolicyDocument AWS CloudFormation Property // Required: true @@ -44,7 +46,7 @@ type AWSIAMRole struct { // Policies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies - Policies []AWSIAMRole_Policy `json:"Policies,omitempty"` + Policies []Role_Policy `json:"Policies,omitempty"` // RoleName AWS CloudFormation Property // Required: false @@ -54,7 +56,7 @@ type AWSIAMRole struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -67,50 +69,50 @@ type AWSIAMRole struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMRole) AWSCloudFormationType() string { +func (r *Role) AWSCloudFormationType() string { return "AWS::IAM::Role" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMRole) DependsOn() []string { +func (r *Role) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMRole) SetDependsOn(dependencies []string) { +func (r *Role) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMRole) Metadata() map[string]interface{} { +func (r *Role) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMRole) SetMetadata(metadata map[string]interface{}) { +func (r *Role) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMRole) DeletionPolicy() policies.DeletionPolicy { +func (r *Role) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMRole) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Role) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMRole) MarshalJSON() ([]byte, error) { - type Properties AWSIAMRole +func (r Role) MarshalJSON() ([]byte, error) { + type Properties Role return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +130,8 @@ func (r AWSIAMRole) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMRole) UnmarshalJSON(b []byte) error { - type Properties AWSIAMRole +func (r *Role) UnmarshalJSON(b []byte) error { + type Properties Role res := &struct { Type string Properties *Properties @@ -148,7 +150,7 @@ func (r *AWSIAMRole) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMRole(*res.Properties) + *r = Role(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-role_policy.go b/cloudformation/iam/aws-iam-role_policy.go similarity index 77% rename from cloudformation/resources/aws-iam-role_policy.go rename to cloudformation/iam/aws-iam-role_policy.go index 57a575fd73..bb689fb6d0 100644 --- a/cloudformation/resources/aws-iam-role_policy.go +++ b/cloudformation/iam/aws-iam-role_policy.go @@ -1,10 +1,12 @@ -package resources +package iam -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIAMRole_Policy AWS CloudFormation Resource (AWS::IAM::Role.Policy) +// Role_Policy AWS CloudFormation Resource (AWS::IAM::Role.Policy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html -type AWSIAMRole_Policy struct { +type Role_Policy struct { // PolicyDocument AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIAMRole_Policy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMRole_Policy) AWSCloudFormationType() string { +func (r *Role_Policy) AWSCloudFormationType() string { return "AWS::IAM::Role.Policy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMRole_Policy) DependsOn() []string { +func (r *Role_Policy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMRole_Policy) SetDependsOn(dependencies []string) { +func (r *Role_Policy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMRole_Policy) Metadata() map[string]interface{} { +func (r *Role_Policy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMRole_Policy) SetMetadata(metadata map[string]interface{}) { +func (r *Role_Policy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMRole_Policy) DeletionPolicy() policies.DeletionPolicy { +func (r *Role_Policy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMRole_Policy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Role_Policy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iam-servicelinkedrole.go b/cloudformation/iam/aws-iam-servicelinkedrole.go similarity index 80% rename from cloudformation/resources/aws-iam-servicelinkedrole.go rename to cloudformation/iam/aws-iam-servicelinkedrole.go index 2bc1d79e44..2be817d3c8 100644 --- a/cloudformation/resources/aws-iam-servicelinkedrole.go +++ b/cloudformation/iam/aws-iam-servicelinkedrole.go @@ -1,15 +1,16 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIAMServiceLinkedRole AWS CloudFormation Resource (AWS::IAM::ServiceLinkedRole) +// ServiceLinkedRole AWS CloudFormation Resource (AWS::IAM::ServiceLinkedRole) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html -type AWSIAMServiceLinkedRole struct { +type ServiceLinkedRole struct { // AWSServiceName AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSIAMServiceLinkedRole struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMServiceLinkedRole) AWSCloudFormationType() string { +func (r *ServiceLinkedRole) AWSCloudFormationType() string { return "AWS::IAM::ServiceLinkedRole" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMServiceLinkedRole) DependsOn() []string { +func (r *ServiceLinkedRole) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMServiceLinkedRole) SetDependsOn(dependencies []string) { +func (r *ServiceLinkedRole) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMServiceLinkedRole) Metadata() map[string]interface{} { +func (r *ServiceLinkedRole) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMServiceLinkedRole) SetMetadata(metadata map[string]interface{}) { +func (r *ServiceLinkedRole) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMServiceLinkedRole) DeletionPolicy() policies.DeletionPolicy { +func (r *ServiceLinkedRole) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMServiceLinkedRole) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ServiceLinkedRole) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMServiceLinkedRole) MarshalJSON() ([]byte, error) { - type Properties AWSIAMServiceLinkedRole +func (r ServiceLinkedRole) MarshalJSON() ([]byte, error) { + type Properties ServiceLinkedRole return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSIAMServiceLinkedRole) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMServiceLinkedRole) UnmarshalJSON(b []byte) error { - type Properties AWSIAMServiceLinkedRole +func (r *ServiceLinkedRole) UnmarshalJSON(b []byte) error { + type Properties ServiceLinkedRole res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSIAMServiceLinkedRole) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMServiceLinkedRole(*res.Properties) + *r = ServiceLinkedRole(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-user.go b/cloudformation/iam/aws-iam-user.go similarity index 84% rename from cloudformation/resources/aws-iam-user.go rename to cloudformation/iam/aws-iam-user.go index 045eb40875..307b46e666 100644 --- a/cloudformation/resources/aws-iam-user.go +++ b/cloudformation/iam/aws-iam-user.go @@ -1,15 +1,16 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIAMUser AWS CloudFormation Resource (AWS::IAM::User) +// User AWS CloudFormation Resource (AWS::IAM::User) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html -type AWSIAMUser struct { +type User struct { // Groups AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSIAMUser struct { // LoginProfile AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-loginprofile - LoginProfile *AWSIAMUser_LoginProfile `json:"LoginProfile,omitempty"` + LoginProfile *User_LoginProfile `json:"LoginProfile,omitempty"` // ManagedPolicyArns AWS CloudFormation Property // Required: false @@ -39,7 +40,7 @@ type AWSIAMUser struct { // Policies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-policies - Policies []AWSIAMUser_Policy `json:"Policies,omitempty"` + Policies []User_Policy `json:"Policies,omitempty"` // UserName AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSIAMUser struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMUser) AWSCloudFormationType() string { +func (r *User) AWSCloudFormationType() string { return "AWS::IAM::User" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMUser) DependsOn() []string { +func (r *User) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMUser) SetDependsOn(dependencies []string) { +func (r *User) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMUser) Metadata() map[string]interface{} { +func (r *User) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMUser) SetMetadata(metadata map[string]interface{}) { +func (r *User) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMUser) DeletionPolicy() policies.DeletionPolicy { +func (r *User) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMUser) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *User) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMUser) MarshalJSON() ([]byte, error) { - type Properties AWSIAMUser +func (r User) MarshalJSON() ([]byte, error) { + type Properties User return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSIAMUser) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMUser) UnmarshalJSON(b []byte) error { - type Properties AWSIAMUser +func (r *User) UnmarshalJSON(b []byte) error { + type Properties User res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSIAMUser) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMUser(*res.Properties) + *r = User(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iam-user_loginprofile.go b/cloudformation/iam/aws-iam-user_loginprofile.go similarity index 76% rename from cloudformation/resources/aws-iam-user_loginprofile.go rename to cloudformation/iam/aws-iam-user_loginprofile.go index 056387e600..799ae7820b 100644 --- a/cloudformation/resources/aws-iam-user_loginprofile.go +++ b/cloudformation/iam/aws-iam-user_loginprofile.go @@ -1,10 +1,12 @@ -package resources +package iam -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIAMUser_LoginProfile AWS CloudFormation Resource (AWS::IAM::User.LoginProfile) +// User_LoginProfile AWS CloudFormation Resource (AWS::IAM::User.LoginProfile) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html -type AWSIAMUser_LoginProfile struct { +type User_LoginProfile struct { // Password AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIAMUser_LoginProfile struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMUser_LoginProfile) AWSCloudFormationType() string { +func (r *User_LoginProfile) AWSCloudFormationType() string { return "AWS::IAM::User.LoginProfile" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMUser_LoginProfile) DependsOn() []string { +func (r *User_LoginProfile) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMUser_LoginProfile) SetDependsOn(dependencies []string) { +func (r *User_LoginProfile) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMUser_LoginProfile) Metadata() map[string]interface{} { +func (r *User_LoginProfile) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMUser_LoginProfile) SetMetadata(metadata map[string]interface{}) { +func (r *User_LoginProfile) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMUser_LoginProfile) DeletionPolicy() policies.DeletionPolicy { +func (r *User_LoginProfile) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMUser_LoginProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *User_LoginProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iam-user_policy.go b/cloudformation/iam/aws-iam-user_policy.go similarity index 77% rename from cloudformation/resources/aws-iam-user_policy.go rename to cloudformation/iam/aws-iam-user_policy.go index 8215a500d3..90307e58e0 100644 --- a/cloudformation/resources/aws-iam-user_policy.go +++ b/cloudformation/iam/aws-iam-user_policy.go @@ -1,10 +1,12 @@ -package resources +package iam -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIAMUser_Policy AWS CloudFormation Resource (AWS::IAM::User.Policy) +// User_Policy AWS CloudFormation Resource (AWS::IAM::User.Policy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html -type AWSIAMUser_Policy struct { +type User_Policy struct { // PolicyDocument AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIAMUser_Policy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMUser_Policy) AWSCloudFormationType() string { +func (r *User_Policy) AWSCloudFormationType() string { return "AWS::IAM::User.Policy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMUser_Policy) DependsOn() []string { +func (r *User_Policy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMUser_Policy) SetDependsOn(dependencies []string) { +func (r *User_Policy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMUser_Policy) Metadata() map[string]interface{} { +func (r *User_Policy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMUser_Policy) SetMetadata(metadata map[string]interface{}) { +func (r *User_Policy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMUser_Policy) DeletionPolicy() policies.DeletionPolicy { +func (r *User_Policy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMUser_Policy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *User_Policy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iam-usertogroupaddition.go b/cloudformation/iam/aws-iam-usertogroupaddition.go similarity index 79% rename from cloudformation/resources/aws-iam-usertogroupaddition.go rename to cloudformation/iam/aws-iam-usertogroupaddition.go index 5d0b3e2dec..c2c50fb4dc 100644 --- a/cloudformation/resources/aws-iam-usertogroupaddition.go +++ b/cloudformation/iam/aws-iam-usertogroupaddition.go @@ -1,15 +1,16 @@ -package resources +package iam import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIAMUserToGroupAddition AWS CloudFormation Resource (AWS::IAM::UserToGroupAddition) +// UserToGroupAddition AWS CloudFormation Resource (AWS::IAM::UserToGroupAddition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html -type AWSIAMUserToGroupAddition struct { +type UserToGroupAddition struct { // GroupName AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSIAMUserToGroupAddition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIAMUserToGroupAddition) AWSCloudFormationType() string { +func (r *UserToGroupAddition) AWSCloudFormationType() string { return "AWS::IAM::UserToGroupAddition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMUserToGroupAddition) DependsOn() []string { +func (r *UserToGroupAddition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIAMUserToGroupAddition) SetDependsOn(dependencies []string) { +func (r *UserToGroupAddition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMUserToGroupAddition) Metadata() map[string]interface{} { +func (r *UserToGroupAddition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIAMUserToGroupAddition) SetMetadata(metadata map[string]interface{}) { +func (r *UserToGroupAddition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMUserToGroupAddition) DeletionPolicy() policies.DeletionPolicy { +func (r *UserToGroupAddition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIAMUserToGroupAddition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserToGroupAddition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIAMUserToGroupAddition) MarshalJSON() ([]byte, error) { - type Properties AWSIAMUserToGroupAddition +func (r UserToGroupAddition) MarshalJSON() ([]byte, error) { + type Properties UserToGroupAddition return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIAMUserToGroupAddition) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIAMUserToGroupAddition) UnmarshalJSON(b []byte) error { - type Properties AWSIAMUserToGroupAddition +func (r *UserToGroupAddition) UnmarshalJSON(b []byte) error { + type Properties UserToGroupAddition res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIAMUserToGroupAddition) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIAMUserToGroupAddition(*res.Properties) + *r = UserToGroupAddition(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-inspector-assessmenttarget.go b/cloudformation/inspector/aws-inspector-assessmenttarget.go similarity index 78% rename from cloudformation/resources/aws-inspector-assessmenttarget.go rename to cloudformation/inspector/aws-inspector-assessmenttarget.go index 7507eae1d5..d03323f131 100644 --- a/cloudformation/resources/aws-inspector-assessmenttarget.go +++ b/cloudformation/inspector/aws-inspector-assessmenttarget.go @@ -1,15 +1,16 @@ -package resources +package inspector import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSInspectorAssessmentTarget AWS CloudFormation Resource (AWS::Inspector::AssessmentTarget) +// AssessmentTarget AWS CloudFormation Resource (AWS::Inspector::AssessmentTarget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html -type AWSInspectorAssessmentTarget struct { +type AssessmentTarget struct { // AssessmentTargetName AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSInspectorAssessmentTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSInspectorAssessmentTarget) AWSCloudFormationType() string { +func (r *AssessmentTarget) AWSCloudFormationType() string { return "AWS::Inspector::AssessmentTarget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSInspectorAssessmentTarget) DependsOn() []string { +func (r *AssessmentTarget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSInspectorAssessmentTarget) SetDependsOn(dependencies []string) { +func (r *AssessmentTarget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSInspectorAssessmentTarget) Metadata() map[string]interface{} { +func (r *AssessmentTarget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSInspectorAssessmentTarget) SetMetadata(metadata map[string]interface{}) { +func (r *AssessmentTarget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSInspectorAssessmentTarget) DeletionPolicy() policies.DeletionPolicy { +func (r *AssessmentTarget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSInspectorAssessmentTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AssessmentTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSInspectorAssessmentTarget) MarshalJSON() ([]byte, error) { - type Properties AWSInspectorAssessmentTarget +func (r AssessmentTarget) MarshalJSON() ([]byte, error) { + type Properties AssessmentTarget return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSInspectorAssessmentTarget) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSInspectorAssessmentTarget) UnmarshalJSON(b []byte) error { - type Properties AWSInspectorAssessmentTarget +func (r *AssessmentTarget) UnmarshalJSON(b []byte) error { + type Properties AssessmentTarget res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSInspectorAssessmentTarget) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSInspectorAssessmentTarget(*res.Properties) + *r = AssessmentTarget(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-inspector-assessmenttemplate.go b/cloudformation/inspector/aws-inspector-assessmenttemplate.go similarity index 80% rename from cloudformation/resources/aws-inspector-assessmenttemplate.go rename to cloudformation/inspector/aws-inspector-assessmenttemplate.go index fb63008065..783181b0ad 100644 --- a/cloudformation/resources/aws-inspector-assessmenttemplate.go +++ b/cloudformation/inspector/aws-inspector-assessmenttemplate.go @@ -1,15 +1,17 @@ -package resources +package inspector import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSInspectorAssessmentTemplate AWS CloudFormation Resource (AWS::Inspector::AssessmentTemplate) +// AssessmentTemplate AWS CloudFormation Resource (AWS::Inspector::AssessmentTemplate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html -type AWSInspectorAssessmentTemplate struct { +type AssessmentTemplate struct { // AssessmentTargetArn AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSInspectorAssessmentTemplate struct { // UserAttributesForFindings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-userattributesforfindings - UserAttributesForFindings []Tag `json:"UserAttributesForFindings,omitempty"` + UserAttributesForFindings []tags.Tag `json:"UserAttributesForFindings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSInspectorAssessmentTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSInspectorAssessmentTemplate) AWSCloudFormationType() string { +func (r *AssessmentTemplate) AWSCloudFormationType() string { return "AWS::Inspector::AssessmentTemplate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSInspectorAssessmentTemplate) DependsOn() []string { +func (r *AssessmentTemplate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSInspectorAssessmentTemplate) SetDependsOn(dependencies []string) { +func (r *AssessmentTemplate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSInspectorAssessmentTemplate) Metadata() map[string]interface{} { +func (r *AssessmentTemplate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSInspectorAssessmentTemplate) SetMetadata(metadata map[string]interface{}) { +func (r *AssessmentTemplate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSInspectorAssessmentTemplate) DeletionPolicy() policies.DeletionPolicy { +func (r *AssessmentTemplate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSInspectorAssessmentTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AssessmentTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSInspectorAssessmentTemplate) MarshalJSON() ([]byte, error) { - type Properties AWSInspectorAssessmentTemplate +func (r AssessmentTemplate) MarshalJSON() ([]byte, error) { + type Properties AssessmentTemplate return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSInspectorAssessmentTemplate) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSInspectorAssessmentTemplate) UnmarshalJSON(b []byte) error { - type Properties AWSInspectorAssessmentTemplate +func (r *AssessmentTemplate) UnmarshalJSON(b []byte) error { + type Properties AssessmentTemplate res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSInspectorAssessmentTemplate) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSInspectorAssessmentTemplate(*res.Properties) + *r = AssessmentTemplate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-inspector-resourcegroup.go b/cloudformation/inspector/aws-inspector-resourcegroup.go similarity index 76% rename from cloudformation/resources/aws-inspector-resourcegroup.go rename to cloudformation/inspector/aws-inspector-resourcegroup.go index 0a58d4cb47..4fbf4f591b 100644 --- a/cloudformation/resources/aws-inspector-resourcegroup.go +++ b/cloudformation/inspector/aws-inspector-resourcegroup.go @@ -1,20 +1,22 @@ -package resources +package inspector import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSInspectorResourceGroup AWS CloudFormation Resource (AWS::Inspector::ResourceGroup) +// ResourceGroup AWS CloudFormation Resource (AWS::Inspector::ResourceGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html -type AWSInspectorResourceGroup struct { +type ResourceGroup struct { // ResourceGroupTags AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html#cfn-inspector-resourcegroup-resourcegrouptags - ResourceGroupTags []Tag `json:"ResourceGroupTags,omitempty"` + ResourceGroupTags []tags.Tag `json:"ResourceGroupTags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,50 +29,50 @@ type AWSInspectorResourceGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSInspectorResourceGroup) AWSCloudFormationType() string { +func (r *ResourceGroup) AWSCloudFormationType() string { return "AWS::Inspector::ResourceGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSInspectorResourceGroup) DependsOn() []string { +func (r *ResourceGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSInspectorResourceGroup) SetDependsOn(dependencies []string) { +func (r *ResourceGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSInspectorResourceGroup) Metadata() map[string]interface{} { +func (r *ResourceGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSInspectorResourceGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ResourceGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSInspectorResourceGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ResourceGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSInspectorResourceGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSInspectorResourceGroup) MarshalJSON() ([]byte, error) { - type Properties AWSInspectorResourceGroup +func (r ResourceGroup) MarshalJSON() ([]byte, error) { + type Properties ResourceGroup return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +90,8 @@ func (r AWSInspectorResourceGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSInspectorResourceGroup) UnmarshalJSON(b []byte) error { - type Properties AWSInspectorResourceGroup +func (r *ResourceGroup) UnmarshalJSON(b []byte) error { + type Properties ResourceGroup res := &struct { Type string Properties *Properties @@ -108,7 +110,7 @@ func (r *AWSInspectorResourceGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSInspectorResourceGroup(*res.Properties) + *r = ResourceGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/intrinsics.go b/cloudformation/intrinsics.go index b6ba6eb57a..3f82dcc6b2 100644 --- a/cloudformation/intrinsics.go +++ b/cloudformation/intrinsics.go @@ -5,7 +5,7 @@ import ( "fmt" "strings" - "github.com/awslabs/goformation/v2/intrinsics" + "github.com/awslabs/goformation/v3/intrinsics" ) func strWrap(fn func(interface{}) string) intrinsics.IntrinsicHandler { diff --git a/cloudformation/intrinsics_test.go b/cloudformation/intrinsics_test.go index 5fe9d48460..503c345dcb 100644 --- a/cloudformation/intrinsics_test.go +++ b/cloudformation/intrinsics_test.go @@ -3,9 +3,9 @@ package cloudformation_test import ( "strings" - "github.com/awslabs/goformation/v2" - "github.com/awslabs/goformation/v2/cloudformation" - "github.com/awslabs/goformation/v2/intrinsics" + "github.com/awslabs/goformation/v3" + "github.com/awslabs/goformation/v3/cloudformation" + "github.com/awslabs/goformation/v3/intrinsics" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" diff --git a/cloudformation/resources/aws-iot-certificate.go b/cloudformation/iot/aws-iot-certificate.go similarity index 81% rename from cloudformation/resources/aws-iot-certificate.go rename to cloudformation/iot/aws-iot-certificate.go index 0ae60595bc..1d9be4ec36 100644 --- a/cloudformation/resources/aws-iot-certificate.go +++ b/cloudformation/iot/aws-iot-certificate.go @@ -1,15 +1,16 @@ -package resources +package iot import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoTCertificate AWS CloudFormation Resource (AWS::IoT::Certificate) +// Certificate AWS CloudFormation Resource (AWS::IoT::Certificate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html -type AWSIoTCertificate struct { +type Certificate struct { // CertificateSigningRequest AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSIoTCertificate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTCertificate) AWSCloudFormationType() string { +func (r *Certificate) AWSCloudFormationType() string { return "AWS::IoT::Certificate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTCertificate) DependsOn() []string { +func (r *Certificate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTCertificate) SetDependsOn(dependencies []string) { +func (r *Certificate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTCertificate) Metadata() map[string]interface{} { +func (r *Certificate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTCertificate) SetMetadata(metadata map[string]interface{}) { +func (r *Certificate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTCertificate) DeletionPolicy() policies.DeletionPolicy { +func (r *Certificate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTCertificate) MarshalJSON() ([]byte, error) { - type Properties AWSIoTCertificate +func (r Certificate) MarshalJSON() ([]byte, error) { + type Properties Certificate return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIoTCertificate) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTCertificate) UnmarshalJSON(b []byte) error { - type Properties AWSIoTCertificate +func (r *Certificate) UnmarshalJSON(b []byte) error { + type Properties Certificate res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIoTCertificate) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTCertificate(*res.Properties) + *r = Certificate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iot-policy.go b/cloudformation/iot/aws-iot-policy.go similarity index 82% rename from cloudformation/resources/aws-iot-policy.go rename to cloudformation/iot/aws-iot-policy.go index 3de2f14485..5c80b1265b 100644 --- a/cloudformation/resources/aws-iot-policy.go +++ b/cloudformation/iot/aws-iot-policy.go @@ -1,15 +1,16 @@ -package resources +package iot import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoTPolicy AWS CloudFormation Resource (AWS::IoT::Policy) +// Policy AWS CloudFormation Resource (AWS::IoT::Policy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html -type AWSIoTPolicy struct { +type Policy struct { // PolicyDocument AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSIoTPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTPolicy) AWSCloudFormationType() string { +func (r *Policy) AWSCloudFormationType() string { return "AWS::IoT::Policy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTPolicy) DependsOn() []string { +func (r *Policy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTPolicy) SetDependsOn(dependencies []string) { +func (r *Policy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTPolicy) Metadata() map[string]interface{} { +func (r *Policy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *Policy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *Policy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Policy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTPolicy) MarshalJSON() ([]byte, error) { - type Properties AWSIoTPolicy +func (r Policy) MarshalJSON() ([]byte, error) { + type Properties Policy return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIoTPolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTPolicy) UnmarshalJSON(b []byte) error { - type Properties AWSIoTPolicy +func (r *Policy) UnmarshalJSON(b []byte) error { + type Properties Policy res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIoTPolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTPolicy(*res.Properties) + *r = Policy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iot-policyprincipalattachment.go b/cloudformation/iot/aws-iot-policyprincipalattachment.go similarity index 78% rename from cloudformation/resources/aws-iot-policyprincipalattachment.go rename to cloudformation/iot/aws-iot-policyprincipalattachment.go index b16e44d816..a705271ab1 100644 --- a/cloudformation/resources/aws-iot-policyprincipalattachment.go +++ b/cloudformation/iot/aws-iot-policyprincipalattachment.go @@ -1,15 +1,16 @@ -package resources +package iot import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoTPolicyPrincipalAttachment AWS CloudFormation Resource (AWS::IoT::PolicyPrincipalAttachment) +// PolicyPrincipalAttachment AWS CloudFormation Resource (AWS::IoT::PolicyPrincipalAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html -type AWSIoTPolicyPrincipalAttachment struct { +type PolicyPrincipalAttachment struct { // PolicyName AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSIoTPolicyPrincipalAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTPolicyPrincipalAttachment) AWSCloudFormationType() string { +func (r *PolicyPrincipalAttachment) AWSCloudFormationType() string { return "AWS::IoT::PolicyPrincipalAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTPolicyPrincipalAttachment) DependsOn() []string { +func (r *PolicyPrincipalAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTPolicyPrincipalAttachment) SetDependsOn(dependencies []string) { +func (r *PolicyPrincipalAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTPolicyPrincipalAttachment) Metadata() map[string]interface{} { +func (r *PolicyPrincipalAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTPolicyPrincipalAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *PolicyPrincipalAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTPolicyPrincipalAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *PolicyPrincipalAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTPolicyPrincipalAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PolicyPrincipalAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTPolicyPrincipalAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSIoTPolicyPrincipalAttachment +func (r PolicyPrincipalAttachment) MarshalJSON() ([]byte, error) { + type Properties PolicyPrincipalAttachment return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIoTPolicyPrincipalAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTPolicyPrincipalAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSIoTPolicyPrincipalAttachment +func (r *PolicyPrincipalAttachment) UnmarshalJSON(b []byte) error { + type Properties PolicyPrincipalAttachment res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIoTPolicyPrincipalAttachment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTPolicyPrincipalAttachment(*res.Properties) + *r = PolicyPrincipalAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iot-thing.go b/cloudformation/iot/aws-iot-thing.go similarity index 80% rename from cloudformation/resources/aws-iot-thing.go rename to cloudformation/iot/aws-iot-thing.go index 130a4b1610..e3399cf57a 100644 --- a/cloudformation/resources/aws-iot-thing.go +++ b/cloudformation/iot/aws-iot-thing.go @@ -1,20 +1,21 @@ -package resources +package iot import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoTThing AWS CloudFormation Resource (AWS::IoT::Thing) +// Thing AWS CloudFormation Resource (AWS::IoT::Thing) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html -type AWSIoTThing struct { +type Thing struct { // AttributePayload AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-attributepayload - AttributePayload *AWSIoTThing_AttributePayload `json:"AttributePayload,omitempty"` + AttributePayload *Thing_AttributePayload `json:"AttributePayload,omitempty"` // ThingName AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSIoTThing struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTThing) AWSCloudFormationType() string { +func (r *Thing) AWSCloudFormationType() string { return "AWS::IoT::Thing" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThing) DependsOn() []string { +func (r *Thing) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThing) SetDependsOn(dependencies []string) { +func (r *Thing) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThing) Metadata() map[string]interface{} { +func (r *Thing) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThing) SetMetadata(metadata map[string]interface{}) { +func (r *Thing) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThing) DeletionPolicy() policies.DeletionPolicy { +func (r *Thing) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThing) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Thing) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTThing) MarshalJSON() ([]byte, error) { - type Properties AWSIoTThing +func (r Thing) MarshalJSON() ([]byte, error) { + type Properties Thing return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIoTThing) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTThing) UnmarshalJSON(b []byte) error { - type Properties AWSIoTThing +func (r *Thing) UnmarshalJSON(b []byte) error { + type Properties Thing res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIoTThing) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTThing(*res.Properties) + *r = Thing(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iot/aws-iot-thing_attributepayload.go b/cloudformation/iot/aws-iot-thing_attributepayload.go new file mode 100644 index 0000000000..cbb29ea06d --- /dev/null +++ b/cloudformation/iot/aws-iot-thing_attributepayload.go @@ -0,0 +1,65 @@ +package iot + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Thing_AttributePayload AWS CloudFormation Resource (AWS::IoT::Thing.AttributePayload) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html +type Thing_AttributePayload struct { + + // Attributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html#cfn-iot-thing-attributepayload-attributes + Attributes map[string]string `json:"Attributes,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Thing_AttributePayload) AWSCloudFormationType() string { + return "AWS::IoT::Thing.AttributePayload" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Thing_AttributePayload) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Thing_AttributePayload) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Thing_AttributePayload) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Thing_AttributePayload) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Thing_AttributePayload) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Thing_AttributePayload) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iot-thingprincipalattachment.go b/cloudformation/iot/aws-iot-thingprincipalattachment.go similarity index 78% rename from cloudformation/resources/aws-iot-thingprincipalattachment.go rename to cloudformation/iot/aws-iot-thingprincipalattachment.go index bf81788559..ed6620f7e4 100644 --- a/cloudformation/resources/aws-iot-thingprincipalattachment.go +++ b/cloudformation/iot/aws-iot-thingprincipalattachment.go @@ -1,15 +1,16 @@ -package resources +package iot import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoTThingPrincipalAttachment AWS CloudFormation Resource (AWS::IoT::ThingPrincipalAttachment) +// ThingPrincipalAttachment AWS CloudFormation Resource (AWS::IoT::ThingPrincipalAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html -type AWSIoTThingPrincipalAttachment struct { +type ThingPrincipalAttachment struct { // Principal AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSIoTThingPrincipalAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTThingPrincipalAttachment) AWSCloudFormationType() string { +func (r *ThingPrincipalAttachment) AWSCloudFormationType() string { return "AWS::IoT::ThingPrincipalAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThingPrincipalAttachment) DependsOn() []string { +func (r *ThingPrincipalAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThingPrincipalAttachment) SetDependsOn(dependencies []string) { +func (r *ThingPrincipalAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThingPrincipalAttachment) Metadata() map[string]interface{} { +func (r *ThingPrincipalAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThingPrincipalAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *ThingPrincipalAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThingPrincipalAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *ThingPrincipalAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThingPrincipalAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ThingPrincipalAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTThingPrincipalAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSIoTThingPrincipalAttachment +func (r ThingPrincipalAttachment) MarshalJSON() ([]byte, error) { + type Properties ThingPrincipalAttachment return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIoTThingPrincipalAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTThingPrincipalAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSIoTThingPrincipalAttachment +func (r *ThingPrincipalAttachment) UnmarshalJSON(b []byte) error { + type Properties ThingPrincipalAttachment res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIoTThingPrincipalAttachment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTThingPrincipalAttachment(*res.Properties) + *r = ThingPrincipalAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iot-topicrule.go b/cloudformation/iot/aws-iot-topicrule.go similarity index 79% rename from cloudformation/resources/aws-iot-topicrule.go rename to cloudformation/iot/aws-iot-topicrule.go index 89eebe6734..ccf9edfcc1 100644 --- a/cloudformation/resources/aws-iot-topicrule.go +++ b/cloudformation/iot/aws-iot-topicrule.go @@ -1,15 +1,16 @@ -package resources +package iot import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoTTopicRule AWS CloudFormation Resource (AWS::IoT::TopicRule) +// TopicRule AWS CloudFormation Resource (AWS::IoT::TopicRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html -type AWSIoTTopicRule struct { +type TopicRule struct { // RuleName AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSIoTTopicRule struct { // TopicRulePayload AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-topicrulepayload - TopicRulePayload *AWSIoTTopicRule_TopicRulePayload `json:"TopicRulePayload,omitempty"` + TopicRulePayload *TopicRule_TopicRulePayload `json:"TopicRulePayload,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSIoTTopicRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule) AWSCloudFormationType() string { +func (r *TopicRule) AWSCloudFormationType() string { return "AWS::IoT::TopicRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule) DependsOn() []string { +func (r *TopicRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule) SetDependsOn(dependencies []string) { +func (r *TopicRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule) Metadata() map[string]interface{} { +func (r *TopicRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTTopicRule) MarshalJSON() ([]byte, error) { - type Properties AWSIoTTopicRule +func (r TopicRule) MarshalJSON() ([]byte, error) { + type Properties TopicRule return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIoTTopicRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTTopicRule) UnmarshalJSON(b []byte) error { - type Properties AWSIoTTopicRule +func (r *TopicRule) UnmarshalJSON(b []byte) error { + type Properties TopicRule res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIoTTopicRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTTopicRule(*res.Properties) + *r = TopicRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iot/aws-iot-topicrule_action.go b/cloudformation/iot/aws-iot-topicrule_action.go new file mode 100644 index 0000000000..6aad171de6 --- /dev/null +++ b/cloudformation/iot/aws-iot-topicrule_action.go @@ -0,0 +1,130 @@ +package iot + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TopicRule_Action AWS CloudFormation Resource (AWS::IoT::TopicRule.Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html +type TopicRule_Action struct { + + // CloudwatchAlarm AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchalarm + CloudwatchAlarm *TopicRule_CloudwatchAlarmAction `json:"CloudwatchAlarm,omitempty"` + + // CloudwatchMetric AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchmetric + CloudwatchMetric *TopicRule_CloudwatchMetricAction `json:"CloudwatchMetric,omitempty"` + + // DynamoDB AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodb + DynamoDB *TopicRule_DynamoDBAction `json:"DynamoDB,omitempty"` + + // DynamoDBv2 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodbv2 + DynamoDBv2 *TopicRule_DynamoDBv2Action `json:"DynamoDBv2,omitempty"` + + // Elasticsearch AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-elasticsearch + Elasticsearch *TopicRule_ElasticsearchAction `json:"Elasticsearch,omitempty"` + + // Firehose AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-firehose + Firehose *TopicRule_FirehoseAction `json:"Firehose,omitempty"` + + // IotAnalytics AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotanalytics + IotAnalytics *TopicRule_IotAnalyticsAction `json:"IotAnalytics,omitempty"` + + // Kinesis AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-kinesis + Kinesis *TopicRule_KinesisAction `json:"Kinesis,omitempty"` + + // Lambda AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-lambda + Lambda *TopicRule_LambdaAction `json:"Lambda,omitempty"` + + // Republish AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-republish + Republish *TopicRule_RepublishAction `json:"Republish,omitempty"` + + // S3 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-s3 + S3 *TopicRule_S3Action `json:"S3,omitempty"` + + // Sns AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sns + Sns *TopicRule_SnsAction `json:"Sns,omitempty"` + + // Sqs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sqs + Sqs *TopicRule_SqsAction `json:"Sqs,omitempty"` + + // StepFunctions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-stepfunctions + StepFunctions *TopicRule_StepFunctionsAction `json:"StepFunctions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TopicRule_Action) AWSCloudFormationType() string { + return "AWS::IoT::TopicRule.Action" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_Action) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_Action) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_Action) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_Action) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_Action) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iot-topicrule_cloudwatchalarmaction.go b/cloudformation/iot/aws-iot-topicrule_cloudwatchalarmaction.go similarity index 77% rename from cloudformation/resources/aws-iot-topicrule_cloudwatchalarmaction.go rename to cloudformation/iot/aws-iot-topicrule_cloudwatchalarmaction.go index 7017cb1a20..a43e2bd877 100644 --- a/cloudformation/resources/aws-iot-topicrule_cloudwatchalarmaction.go +++ b/cloudformation/iot/aws-iot-topicrule_cloudwatchalarmaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_CloudwatchAlarmAction AWS CloudFormation Resource (AWS::IoT::TopicRule.CloudwatchAlarmAction) +// TopicRule_CloudwatchAlarmAction AWS CloudFormation Resource (AWS::IoT::TopicRule.CloudwatchAlarmAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html -type AWSIoTTopicRule_CloudwatchAlarmAction struct { +type TopicRule_CloudwatchAlarmAction struct { // AlarmName AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSIoTTopicRule_CloudwatchAlarmAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_CloudwatchAlarmAction) AWSCloudFormationType() string { +func (r *TopicRule_CloudwatchAlarmAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.CloudwatchAlarmAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_CloudwatchAlarmAction) DependsOn() []string { +func (r *TopicRule_CloudwatchAlarmAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_CloudwatchAlarmAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_CloudwatchAlarmAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_CloudwatchAlarmAction) Metadata() map[string]interface{} { +func (r *TopicRule_CloudwatchAlarmAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_CloudwatchAlarmAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_CloudwatchAlarmAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_CloudwatchAlarmAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_CloudwatchAlarmAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_CloudwatchAlarmAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_CloudwatchAlarmAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_cloudwatchmetricaction.go b/cloudformation/iot/aws-iot-topicrule_cloudwatchmetricaction.go similarity index 80% rename from cloudformation/resources/aws-iot-topicrule_cloudwatchmetricaction.go rename to cloudformation/iot/aws-iot-topicrule_cloudwatchmetricaction.go index 1f00dc9895..33b6a93539 100644 --- a/cloudformation/resources/aws-iot-topicrule_cloudwatchmetricaction.go +++ b/cloudformation/iot/aws-iot-topicrule_cloudwatchmetricaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_CloudwatchMetricAction AWS CloudFormation Resource (AWS::IoT::TopicRule.CloudwatchMetricAction) +// TopicRule_CloudwatchMetricAction AWS CloudFormation Resource (AWS::IoT::TopicRule.CloudwatchMetricAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html -type AWSIoTTopicRule_CloudwatchMetricAction struct { +type TopicRule_CloudwatchMetricAction struct { // MetricName AWS CloudFormation Property // Required: true @@ -47,42 +49,42 @@ type AWSIoTTopicRule_CloudwatchMetricAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_CloudwatchMetricAction) AWSCloudFormationType() string { +func (r *TopicRule_CloudwatchMetricAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.CloudwatchMetricAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_CloudwatchMetricAction) DependsOn() []string { +func (r *TopicRule_CloudwatchMetricAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_CloudwatchMetricAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_CloudwatchMetricAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_CloudwatchMetricAction) Metadata() map[string]interface{} { +func (r *TopicRule_CloudwatchMetricAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_CloudwatchMetricAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_CloudwatchMetricAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_CloudwatchMetricAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_CloudwatchMetricAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_CloudwatchMetricAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_CloudwatchMetricAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_dynamodbaction.go b/cloudformation/iot/aws-iot-topicrule_dynamodbaction.go similarity index 84% rename from cloudformation/resources/aws-iot-topicrule_dynamodbaction.go rename to cloudformation/iot/aws-iot-topicrule_dynamodbaction.go index d65b3d87bd..e83dd7d4ef 100644 --- a/cloudformation/resources/aws-iot-topicrule_dynamodbaction.go +++ b/cloudformation/iot/aws-iot-topicrule_dynamodbaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_DynamoDBAction AWS CloudFormation Resource (AWS::IoT::TopicRule.DynamoDBAction) +// TopicRule_DynamoDBAction AWS CloudFormation Resource (AWS::IoT::TopicRule.DynamoDBAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html -type AWSIoTTopicRule_DynamoDBAction struct { +type TopicRule_DynamoDBAction struct { // HashKeyField AWS CloudFormation Property // Required: true @@ -62,42 +64,42 @@ type AWSIoTTopicRule_DynamoDBAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_DynamoDBAction) AWSCloudFormationType() string { +func (r *TopicRule_DynamoDBAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.DynamoDBAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_DynamoDBAction) DependsOn() []string { +func (r *TopicRule_DynamoDBAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_DynamoDBAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_DynamoDBAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_DynamoDBAction) Metadata() map[string]interface{} { +func (r *TopicRule_DynamoDBAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_DynamoDBAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_DynamoDBAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_DynamoDBAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_DynamoDBAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_DynamoDBAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_DynamoDBAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/iot/aws-iot-topicrule_dynamodbv2action.go b/cloudformation/iot/aws-iot-topicrule_dynamodbv2action.go new file mode 100644 index 0000000000..9008d4a096 --- /dev/null +++ b/cloudformation/iot/aws-iot-topicrule_dynamodbv2action.go @@ -0,0 +1,70 @@ +package iot + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TopicRule_DynamoDBv2Action AWS CloudFormation Resource (AWS::IoT::TopicRule.DynamoDBv2Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html +type TopicRule_DynamoDBv2Action struct { + + // PutItem AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-putitem + PutItem *TopicRule_PutItemInput `json:"PutItem,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-rolearn + RoleArn string `json:"RoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TopicRule_DynamoDBv2Action) AWSCloudFormationType() string { + return "AWS::IoT::TopicRule.DynamoDBv2Action" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_DynamoDBv2Action) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_DynamoDBv2Action) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_DynamoDBv2Action) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_DynamoDBv2Action) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_DynamoDBv2Action) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_DynamoDBv2Action) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iot-topicrule_elasticsearchaction.go b/cloudformation/iot/aws-iot-topicrule_elasticsearchaction.go similarity index 78% rename from cloudformation/resources/aws-iot-topicrule_elasticsearchaction.go rename to cloudformation/iot/aws-iot-topicrule_elasticsearchaction.go index 4b829ac700..b7499d3ff7 100644 --- a/cloudformation/resources/aws-iot-topicrule_elasticsearchaction.go +++ b/cloudformation/iot/aws-iot-topicrule_elasticsearchaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_ElasticsearchAction AWS CloudFormation Resource (AWS::IoT::TopicRule.ElasticsearchAction) +// TopicRule_ElasticsearchAction AWS CloudFormation Resource (AWS::IoT::TopicRule.ElasticsearchAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html -type AWSIoTTopicRule_ElasticsearchAction struct { +type TopicRule_ElasticsearchAction struct { // Endpoint AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSIoTTopicRule_ElasticsearchAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_ElasticsearchAction) AWSCloudFormationType() string { +func (r *TopicRule_ElasticsearchAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.ElasticsearchAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_ElasticsearchAction) DependsOn() []string { +func (r *TopicRule_ElasticsearchAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_ElasticsearchAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_ElasticsearchAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_ElasticsearchAction) Metadata() map[string]interface{} { +func (r *TopicRule_ElasticsearchAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_ElasticsearchAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_ElasticsearchAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_ElasticsearchAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_ElasticsearchAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_ElasticsearchAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_ElasticsearchAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_firehoseaction.go b/cloudformation/iot/aws-iot-topicrule_firehoseaction.go similarity index 76% rename from cloudformation/resources/aws-iot-topicrule_firehoseaction.go rename to cloudformation/iot/aws-iot-topicrule_firehoseaction.go index 397ccc8640..d62e1618ee 100644 --- a/cloudformation/resources/aws-iot-topicrule_firehoseaction.go +++ b/cloudformation/iot/aws-iot-topicrule_firehoseaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_FirehoseAction AWS CloudFormation Resource (AWS::IoT::TopicRule.FirehoseAction) +// TopicRule_FirehoseAction AWS CloudFormation Resource (AWS::IoT::TopicRule.FirehoseAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html -type AWSIoTTopicRule_FirehoseAction struct { +type TopicRule_FirehoseAction struct { // DeliveryStreamName AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSIoTTopicRule_FirehoseAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_FirehoseAction) AWSCloudFormationType() string { +func (r *TopicRule_FirehoseAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.FirehoseAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_FirehoseAction) DependsOn() []string { +func (r *TopicRule_FirehoseAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_FirehoseAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_FirehoseAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_FirehoseAction) Metadata() map[string]interface{} { +func (r *TopicRule_FirehoseAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_FirehoseAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_FirehoseAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_FirehoseAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_FirehoseAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_FirehoseAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_FirehoseAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/iot/aws-iot-topicrule_iotanalyticsaction.go b/cloudformation/iot/aws-iot-topicrule_iotanalyticsaction.go new file mode 100644 index 0000000000..9c4224dada --- /dev/null +++ b/cloudformation/iot/aws-iot-topicrule_iotanalyticsaction.go @@ -0,0 +1,70 @@ +package iot + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TopicRule_IotAnalyticsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.IotAnalyticsAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html +type TopicRule_IotAnalyticsAction struct { + + // ChannelName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-channelname + ChannelName string `json:"ChannelName,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-rolearn + RoleArn string `json:"RoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TopicRule_IotAnalyticsAction) AWSCloudFormationType() string { + return "AWS::IoT::TopicRule.IotAnalyticsAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_IotAnalyticsAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_IotAnalyticsAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_IotAnalyticsAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_IotAnalyticsAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_IotAnalyticsAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_IotAnalyticsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iot-topicrule_kinesisaction.go b/cloudformation/iot/aws-iot-topicrule_kinesisaction.go similarity index 77% rename from cloudformation/resources/aws-iot-topicrule_kinesisaction.go rename to cloudformation/iot/aws-iot-topicrule_kinesisaction.go index d8f109f924..826396cb33 100644 --- a/cloudformation/resources/aws-iot-topicrule_kinesisaction.go +++ b/cloudformation/iot/aws-iot-topicrule_kinesisaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_KinesisAction AWS CloudFormation Resource (AWS::IoT::TopicRule.KinesisAction) +// TopicRule_KinesisAction AWS CloudFormation Resource (AWS::IoT::TopicRule.KinesisAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html -type AWSIoTTopicRule_KinesisAction struct { +type TopicRule_KinesisAction struct { // PartitionKey AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTTopicRule_KinesisAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_KinesisAction) AWSCloudFormationType() string { +func (r *TopicRule_KinesisAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.KinesisAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_KinesisAction) DependsOn() []string { +func (r *TopicRule_KinesisAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_KinesisAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_KinesisAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_KinesisAction) Metadata() map[string]interface{} { +func (r *TopicRule_KinesisAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_KinesisAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_KinesisAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_KinesisAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_KinesisAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_KinesisAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_KinesisAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/iot/aws-iot-topicrule_lambdaaction.go b/cloudformation/iot/aws-iot-topicrule_lambdaaction.go new file mode 100644 index 0000000000..b4adde4624 --- /dev/null +++ b/cloudformation/iot/aws-iot-topicrule_lambdaaction.go @@ -0,0 +1,65 @@ +package iot + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TopicRule_LambdaAction AWS CloudFormation Resource (AWS::IoT::TopicRule.LambdaAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html +type TopicRule_LambdaAction struct { + + // FunctionArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html#cfn-iot-topicrule-lambdaaction-functionarn + FunctionArn string `json:"FunctionArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TopicRule_LambdaAction) AWSCloudFormationType() string { + return "AWS::IoT::TopicRule.LambdaAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_LambdaAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_LambdaAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_LambdaAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_LambdaAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_LambdaAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_LambdaAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iot/aws-iot-topicrule_putiteminput.go b/cloudformation/iot/aws-iot-topicrule_putiteminput.go new file mode 100644 index 0000000000..becd736dd0 --- /dev/null +++ b/cloudformation/iot/aws-iot-topicrule_putiteminput.go @@ -0,0 +1,65 @@ +package iot + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TopicRule_PutItemInput AWS CloudFormation Resource (AWS::IoT::TopicRule.PutItemInput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html +type TopicRule_PutItemInput struct { + + // TableName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html#cfn-iot-topicrule-putiteminput-tablename + TableName string `json:"TableName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TopicRule_PutItemInput) AWSCloudFormationType() string { + return "AWS::IoT::TopicRule.PutItemInput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_PutItemInput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_PutItemInput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_PutItemInput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_PutItemInput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_PutItemInput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_PutItemInput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iot/aws-iot-topicrule_republishaction.go b/cloudformation/iot/aws-iot-topicrule_republishaction.go new file mode 100644 index 0000000000..b7edd4b548 --- /dev/null +++ b/cloudformation/iot/aws-iot-topicrule_republishaction.go @@ -0,0 +1,70 @@ +package iot + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// TopicRule_RepublishAction AWS CloudFormation Resource (AWS::IoT::TopicRule.RepublishAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html +type TopicRule_RepublishAction struct { + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-rolearn + RoleArn string `json:"RoleArn,omitempty"` + + // Topic AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-topic + Topic string `json:"Topic,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TopicRule_RepublishAction) AWSCloudFormationType() string { + return "AWS::IoT::TopicRule.RepublishAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_RepublishAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *TopicRule_RepublishAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_RepublishAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *TopicRule_RepublishAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_RepublishAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *TopicRule_RepublishAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iot-topicrule_s3action.go b/cloudformation/iot/aws-iot-topicrule_s3action.go similarity index 77% rename from cloudformation/resources/aws-iot-topicrule_s3action.go rename to cloudformation/iot/aws-iot-topicrule_s3action.go index faddc9ff7b..39f300d4ee 100644 --- a/cloudformation/resources/aws-iot-topicrule_s3action.go +++ b/cloudformation/iot/aws-iot-topicrule_s3action.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_S3Action AWS CloudFormation Resource (AWS::IoT::TopicRule.S3Action) +// TopicRule_S3Action AWS CloudFormation Resource (AWS::IoT::TopicRule.S3Action) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html -type AWSIoTTopicRule_S3Action struct { +type TopicRule_S3Action struct { // BucketName AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSIoTTopicRule_S3Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_S3Action) AWSCloudFormationType() string { +func (r *TopicRule_S3Action) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.S3Action" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_S3Action) DependsOn() []string { +func (r *TopicRule_S3Action) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_S3Action) SetDependsOn(dependencies []string) { +func (r *TopicRule_S3Action) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_S3Action) Metadata() map[string]interface{} { +func (r *TopicRule_S3Action) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_S3Action) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_S3Action) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_S3Action) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_S3Action) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_S3Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_S3Action) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_snsaction.go b/cloudformation/iot/aws-iot-topicrule_snsaction.go similarity index 77% rename from cloudformation/resources/aws-iot-topicrule_snsaction.go rename to cloudformation/iot/aws-iot-topicrule_snsaction.go index 597a30f3c5..ddd8b68c50 100644 --- a/cloudformation/resources/aws-iot-topicrule_snsaction.go +++ b/cloudformation/iot/aws-iot-topicrule_snsaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_SnsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.SnsAction) +// TopicRule_SnsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.SnsAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html -type AWSIoTTopicRule_SnsAction struct { +type TopicRule_SnsAction struct { // MessageFormat AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTTopicRule_SnsAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_SnsAction) AWSCloudFormationType() string { +func (r *TopicRule_SnsAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.SnsAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_SnsAction) DependsOn() []string { +func (r *TopicRule_SnsAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_SnsAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_SnsAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_SnsAction) Metadata() map[string]interface{} { +func (r *TopicRule_SnsAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_SnsAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_SnsAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_SnsAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_SnsAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_SnsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_SnsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_sqsaction.go b/cloudformation/iot/aws-iot-topicrule_sqsaction.go similarity index 77% rename from cloudformation/resources/aws-iot-topicrule_sqsaction.go rename to cloudformation/iot/aws-iot-topicrule_sqsaction.go index 1f6a2c4a6e..3b61b2e502 100644 --- a/cloudformation/resources/aws-iot-topicrule_sqsaction.go +++ b/cloudformation/iot/aws-iot-topicrule_sqsaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_SqsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.SqsAction) +// TopicRule_SqsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.SqsAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html -type AWSIoTTopicRule_SqsAction struct { +type TopicRule_SqsAction struct { // QueueUrl AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSIoTTopicRule_SqsAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_SqsAction) AWSCloudFormationType() string { +func (r *TopicRule_SqsAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.SqsAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_SqsAction) DependsOn() []string { +func (r *TopicRule_SqsAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_SqsAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_SqsAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_SqsAction) Metadata() map[string]interface{} { +func (r *TopicRule_SqsAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_SqsAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_SqsAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_SqsAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_SqsAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_SqsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_SqsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_stepfunctionsaction.go b/cloudformation/iot/aws-iot-topicrule_stepfunctionsaction.go similarity index 76% rename from cloudformation/resources/aws-iot-topicrule_stepfunctionsaction.go rename to cloudformation/iot/aws-iot-topicrule_stepfunctionsaction.go index 8dd40b4926..c4e6263acc 100644 --- a/cloudformation/resources/aws-iot-topicrule_stepfunctionsaction.go +++ b/cloudformation/iot/aws-iot-topicrule_stepfunctionsaction.go @@ -1,10 +1,12 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_StepFunctionsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.StepFunctionsAction) +// TopicRule_StepFunctionsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.StepFunctionsAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html -type AWSIoTTopicRule_StepFunctionsAction struct { +type TopicRule_StepFunctionsAction struct { // ExecutionNamePrefix AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTTopicRule_StepFunctionsAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_StepFunctionsAction) AWSCloudFormationType() string { +func (r *TopicRule_StepFunctionsAction) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.StepFunctionsAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_StepFunctionsAction) DependsOn() []string { +func (r *TopicRule_StepFunctionsAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_StepFunctionsAction) SetDependsOn(dependencies []string) { +func (r *TopicRule_StepFunctionsAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_StepFunctionsAction) Metadata() map[string]interface{} { +func (r *TopicRule_StepFunctionsAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_StepFunctionsAction) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_StepFunctionsAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_StepFunctionsAction) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_StepFunctionsAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_StepFunctionsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_StepFunctionsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_topicrulepayload.go b/cloudformation/iot/aws-iot-topicrule_topicrulepayload.go similarity index 78% rename from cloudformation/resources/aws-iot-topicrule_topicrulepayload.go rename to cloudformation/iot/aws-iot-topicrule_topicrulepayload.go index 6be7814c63..7b89d8f755 100644 --- a/cloudformation/resources/aws-iot-topicrule_topicrulepayload.go +++ b/cloudformation/iot/aws-iot-topicrule_topicrulepayload.go @@ -1,15 +1,17 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_TopicRulePayload AWS CloudFormation Resource (AWS::IoT::TopicRule.TopicRulePayload) +// TopicRule_TopicRulePayload AWS CloudFormation Resource (AWS::IoT::TopicRule.TopicRulePayload) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html -type AWSIoTTopicRule_TopicRulePayload struct { +type TopicRule_TopicRulePayload struct { // Actions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-actions - Actions []AWSIoTTopicRule_Action `json:"Actions,omitempty"` + Actions []TopicRule_Action `json:"Actions,omitempty"` // AwsIotSqlVersion AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSIoTTopicRule_TopicRulePayload struct { // ErrorAction AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-erroraction - ErrorAction *AWSIoTTopicRule_Action `json:"ErrorAction,omitempty"` + ErrorAction *TopicRule_Action `json:"ErrorAction,omitempty"` // RuleDisabled AWS CloudFormation Property // Required: true @@ -47,42 +49,42 @@ type AWSIoTTopicRule_TopicRulePayload struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_TopicRulePayload) AWSCloudFormationType() string { +func (r *TopicRule_TopicRulePayload) AWSCloudFormationType() string { return "AWS::IoT::TopicRule.TopicRulePayload" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_TopicRulePayload) DependsOn() []string { +func (r *TopicRule_TopicRulePayload) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_TopicRulePayload) SetDependsOn(dependencies []string) { +func (r *TopicRule_TopicRulePayload) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_TopicRulePayload) Metadata() map[string]interface{} { +func (r *TopicRule_TopicRulePayload) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_TopicRulePayload) SetMetadata(metadata map[string]interface{}) { +func (r *TopicRule_TopicRulePayload) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_TopicRulePayload) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicRule_TopicRulePayload) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_TopicRulePayload) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_TopicRulePayload) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot1click-device.go b/cloudformation/iot1click/aws-iot1click-device.go similarity index 80% rename from cloudformation/resources/aws-iot1click-device.go rename to cloudformation/iot1click/aws-iot1click-device.go index 2a64bf6f5f..8689e51b52 100644 --- a/cloudformation/resources/aws-iot1click-device.go +++ b/cloudformation/iot1click/aws-iot1click-device.go @@ -1,15 +1,16 @@ -package resources +package iot1click import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoT1ClickDevice AWS CloudFormation Resource (AWS::IoT1Click::Device) +// Device AWS CloudFormation Resource (AWS::IoT1Click::Device) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html -type AWSIoT1ClickDevice struct { +type Device struct { // DeviceId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSIoT1ClickDevice struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoT1ClickDevice) AWSCloudFormationType() string { +func (r *Device) AWSCloudFormationType() string { return "AWS::IoT1Click::Device" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickDevice) DependsOn() []string { +func (r *Device) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickDevice) SetDependsOn(dependencies []string) { +func (r *Device) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickDevice) Metadata() map[string]interface{} { +func (r *Device) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickDevice) SetMetadata(metadata map[string]interface{}) { +func (r *Device) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickDevice) DeletionPolicy() policies.DeletionPolicy { +func (r *Device) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Device) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoT1ClickDevice) MarshalJSON() ([]byte, error) { - type Properties AWSIoT1ClickDevice +func (r Device) MarshalJSON() ([]byte, error) { + type Properties Device return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIoT1ClickDevice) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoT1ClickDevice) UnmarshalJSON(b []byte) error { - type Properties AWSIoT1ClickDevice +func (r *Device) UnmarshalJSON(b []byte) error { + type Properties Device res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIoT1ClickDevice) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoT1ClickDevice(*res.Properties) + *r = Device(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iot1click-placement.go b/cloudformation/iot1click/aws-iot1click-placement.go similarity index 82% rename from cloudformation/resources/aws-iot1click-placement.go rename to cloudformation/iot1click/aws-iot1click-placement.go index 1d33b99b2e..c962ad9e3a 100644 --- a/cloudformation/resources/aws-iot1click-placement.go +++ b/cloudformation/iot1click/aws-iot1click-placement.go @@ -1,15 +1,16 @@ -package resources +package iot1click import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoT1ClickPlacement AWS CloudFormation Resource (AWS::IoT1Click::Placement) +// Placement AWS CloudFormation Resource (AWS::IoT1Click::Placement) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html -type AWSIoT1ClickPlacement struct { +type Placement struct { // AssociatedDevices AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSIoT1ClickPlacement struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoT1ClickPlacement) AWSCloudFormationType() string { +func (r *Placement) AWSCloudFormationType() string { return "AWS::IoT1Click::Placement" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickPlacement) DependsOn() []string { +func (r *Placement) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickPlacement) SetDependsOn(dependencies []string) { +func (r *Placement) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickPlacement) Metadata() map[string]interface{} { +func (r *Placement) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickPlacement) SetMetadata(metadata map[string]interface{}) { +func (r *Placement) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickPlacement) DeletionPolicy() policies.DeletionPolicy { +func (r *Placement) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickPlacement) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Placement) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoT1ClickPlacement) MarshalJSON() ([]byte, error) { - type Properties AWSIoT1ClickPlacement +func (r Placement) MarshalJSON() ([]byte, error) { + type Properties Placement return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSIoT1ClickPlacement) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoT1ClickPlacement) UnmarshalJSON(b []byte) error { - type Properties AWSIoT1ClickPlacement +func (r *Placement) UnmarshalJSON(b []byte) error { + type Properties Placement res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSIoT1ClickPlacement) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoT1ClickPlacement(*res.Properties) + *r = Placement(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-iot1click-project.go b/cloudformation/iot1click/aws-iot1click-project.go similarity index 80% rename from cloudformation/resources/aws-iot1click-project.go rename to cloudformation/iot1click/aws-iot1click-project.go index 9ac49d39d3..8932e400e1 100644 --- a/cloudformation/resources/aws-iot1click-project.go +++ b/cloudformation/iot1click/aws-iot1click-project.go @@ -1,15 +1,16 @@ -package resources +package iot1click import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoT1ClickProject AWS CloudFormation Resource (AWS::IoT1Click::Project) +// Project AWS CloudFormation Resource (AWS::IoT1Click::Project) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html -type AWSIoT1ClickProject struct { +type Project struct { // Description AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSIoT1ClickProject struct { // PlacementTemplate AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html#cfn-iot1click-project-placementtemplate - PlacementTemplate *AWSIoT1ClickProject_PlacementTemplate `json:"PlacementTemplate,omitempty"` + PlacementTemplate *Project_PlacementTemplate `json:"PlacementTemplate,omitempty"` // ProjectName AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSIoT1ClickProject struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoT1ClickProject) AWSCloudFormationType() string { +func (r *Project) AWSCloudFormationType() string { return "AWS::IoT1Click::Project" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickProject) DependsOn() []string { +func (r *Project) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickProject) SetDependsOn(dependencies []string) { +func (r *Project) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickProject) Metadata() map[string]interface{} { +func (r *Project) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickProject) SetMetadata(metadata map[string]interface{}) { +func (r *Project) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickProject) DeletionPolicy() policies.DeletionPolicy { +func (r *Project) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickProject) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoT1ClickProject) MarshalJSON() ([]byte, error) { - type Properties AWSIoT1ClickProject +func (r Project) MarshalJSON() ([]byte, error) { + type Properties Project return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSIoT1ClickProject) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoT1ClickProject) UnmarshalJSON(b []byte) error { - type Properties AWSIoT1ClickProject +func (r *Project) UnmarshalJSON(b []byte) error { + type Properties Project res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSIoT1ClickProject) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoT1ClickProject(*res.Properties) + *r = Project(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iot1click/aws-iot1click-project_devicetemplate.go b/cloudformation/iot1click/aws-iot1click-project_devicetemplate.go new file mode 100644 index 0000000000..c8d894e2a2 --- /dev/null +++ b/cloudformation/iot1click/aws-iot1click-project_devicetemplate.go @@ -0,0 +1,70 @@ +package iot1click + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_DeviceTemplate AWS CloudFormation Resource (AWS::IoT1Click::Project.DeviceTemplate) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html +type Project_DeviceTemplate struct { + + // CallbackOverrides AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html#cfn-iot1click-project-devicetemplate-callbackoverrides + CallbackOverrides interface{} `json:"CallbackOverrides,omitempty"` + + // DeviceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html#cfn-iot1click-project-devicetemplate-devicetype + DeviceType string `json:"DeviceType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_DeviceTemplate) AWSCloudFormationType() string { + return "AWS::IoT1Click::Project.DeviceTemplate" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_DeviceTemplate) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_DeviceTemplate) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_DeviceTemplate) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_DeviceTemplate) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_DeviceTemplate) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_DeviceTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iot1click/aws-iot1click-project_placementtemplate.go b/cloudformation/iot1click/aws-iot1click-project_placementtemplate.go new file mode 100644 index 0000000000..21be59cf21 --- /dev/null +++ b/cloudformation/iot1click/aws-iot1click-project_placementtemplate.go @@ -0,0 +1,70 @@ +package iot1click + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Project_PlacementTemplate AWS CloudFormation Resource (AWS::IoT1Click::Project.PlacementTemplate) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html +type Project_PlacementTemplate struct { + + // DefaultAttributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html#cfn-iot1click-project-placementtemplate-defaultattributes + DefaultAttributes interface{} `json:"DefaultAttributes,omitempty"` + + // DeviceTemplates AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html#cfn-iot1click-project-placementtemplate-devicetemplates + DeviceTemplates interface{} `json:"DeviceTemplates,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Project_PlacementTemplate) AWSCloudFormationType() string { + return "AWS::IoT1Click::Project.PlacementTemplate" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_PlacementTemplate) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Project_PlacementTemplate) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_PlacementTemplate) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Project_PlacementTemplate) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_PlacementTemplate) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Project_PlacementTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotanalytics-channel.go b/cloudformation/iotanalytics/aws-iotanalytics-channel.go similarity index 78% rename from cloudformation/resources/aws-iotanalytics-channel.go rename to cloudformation/iotanalytics/aws-iotanalytics-channel.go index 634adf5f4a..e1dde75d8d 100644 --- a/cloudformation/resources/aws-iotanalytics-channel.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-channel.go @@ -1,15 +1,17 @@ -package resources +package iotanalytics import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSIoTAnalyticsChannel AWS CloudFormation Resource (AWS::IoTAnalytics::Channel) +// Channel AWS CloudFormation Resource (AWS::IoTAnalytics::Channel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html -type AWSIoTAnalyticsChannel struct { +type Channel struct { // ChannelName AWS CloudFormation Property // Required: false @@ -19,17 +21,17 @@ type AWSIoTAnalyticsChannel struct { // ChannelStorage AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-channelstorage - ChannelStorage *AWSIoTAnalyticsChannel_ChannelStorage `json:"ChannelStorage,omitempty"` + ChannelStorage *Channel_ChannelStorage `json:"ChannelStorage,omitempty"` // RetentionPeriod AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-retentionperiod - RetentionPeriod *AWSIoTAnalyticsChannel_RetentionPeriod `json:"RetentionPeriod,omitempty"` + RetentionPeriod *Channel_RetentionPeriod `json:"RetentionPeriod,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSIoTAnalyticsChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsChannel) AWSCloudFormationType() string { +func (r *Channel) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Channel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel) DependsOn() []string { +func (r *Channel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel) SetDependsOn(dependencies []string) { +func (r *Channel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel) Metadata() map[string]interface{} { +func (r *Channel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel) SetMetadata(metadata map[string]interface{}) { +func (r *Channel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *Channel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTAnalyticsChannel) MarshalJSON() ([]byte, error) { - type Properties AWSIoTAnalyticsChannel +func (r Channel) MarshalJSON() ([]byte, error) { + type Properties Channel return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSIoTAnalyticsChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTAnalyticsChannel) UnmarshalJSON(b []byte) error { - type Properties AWSIoTAnalyticsChannel +func (r *Channel) UnmarshalJSON(b []byte) error { + type Properties Channel res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSIoTAnalyticsChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTAnalyticsChannel(*res.Properties) + *r = Channel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iotanalytics/aws-iotanalytics-channel_channelstorage.go b/cloudformation/iotanalytics/aws-iotanalytics-channel_channelstorage.go new file mode 100644 index 0000000000..3c7863797e --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-channel_channelstorage.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_ChannelStorage AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.ChannelStorage) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html +type Channel_ChannelStorage struct { + + // CustomerManagedS3 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html#cfn-iotanalytics-channel-channelstorage-customermanageds3 + CustomerManagedS3 *Channel_CustomerManagedS3 `json:"CustomerManagedS3,omitempty"` + + // ServiceManagedS3 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html#cfn-iotanalytics-channel-channelstorage-servicemanageds3 + ServiceManagedS3 *Channel_ServiceManagedS3 `json:"ServiceManagedS3,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_ChannelStorage) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Channel.ChannelStorage" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_ChannelStorage) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_ChannelStorage) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_ChannelStorage) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_ChannelStorage) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_ChannelStorage) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_ChannelStorage) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotanalytics-channel_customermanageds3.go b/cloudformation/iotanalytics/aws-iotanalytics-channel_customermanageds3.go similarity index 75% rename from cloudformation/resources/aws-iotanalytics-channel_customermanageds3.go rename to cloudformation/iotanalytics/aws-iotanalytics-channel_customermanageds3.go index fde7797e35..dc477a7304 100644 --- a/cloudformation/resources/aws-iotanalytics-channel_customermanageds3.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-channel_customermanageds3.go @@ -1,10 +1,12 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsChannel_CustomerManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.CustomerManagedS3) +// Channel_CustomerManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.CustomerManagedS3) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html -type AWSIoTAnalyticsChannel_CustomerManagedS3 struct { +type Channel_CustomerManagedS3 struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSIoTAnalyticsChannel_CustomerManagedS3 struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsChannel_CustomerManagedS3) AWSCloudFormationType() string { +func (r *Channel_CustomerManagedS3) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Channel.CustomerManagedS3" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel_CustomerManagedS3) DependsOn() []string { +func (r *Channel_CustomerManagedS3) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel_CustomerManagedS3) SetDependsOn(dependencies []string) { +func (r *Channel_CustomerManagedS3) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel_CustomerManagedS3) Metadata() map[string]interface{} { +func (r *Channel_CustomerManagedS3) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel_CustomerManagedS3) SetMetadata(metadata map[string]interface{}) { +func (r *Channel_CustomerManagedS3) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel_CustomerManagedS3) DeletionPolicy() policies.DeletionPolicy { +func (r *Channel_CustomerManagedS3) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel_CustomerManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_CustomerManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/iotanalytics/aws-iotanalytics-channel_retentionperiod.go b/cloudformation/iotanalytics/aws-iotanalytics-channel_retentionperiod.go new file mode 100644 index 0000000000..b9aac4f6ea --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-channel_retentionperiod.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.RetentionPeriod) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html +type Channel_RetentionPeriod struct { + + // NumberOfDays AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html#cfn-iotanalytics-channel-retentionperiod-numberofdays + NumberOfDays int `json:"NumberOfDays,omitempty"` + + // Unlimited AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html#cfn-iotanalytics-channel-retentionperiod-unlimited + Unlimited bool `json:"Unlimited,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_RetentionPeriod) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Channel.RetentionPeriod" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_RetentionPeriod) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_RetentionPeriod) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_RetentionPeriod) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-channel_servicemanageds3.go b/cloudformation/iotanalytics/aws-iotanalytics-channel_servicemanageds3.go new file mode 100644 index 0000000000..130d167970 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-channel_servicemanageds3.go @@ -0,0 +1,60 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_ServiceManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.ServiceManagedS3) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-servicemanageds3.html +type Channel_ServiceManagedS3 struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_ServiceManagedS3) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Channel.ServiceManagedS3" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_ServiceManagedS3) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_ServiceManagedS3) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_ServiceManagedS3) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_ServiceManagedS3) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_ServiceManagedS3) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_ServiceManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotanalytics-dataset.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset.go similarity index 76% rename from cloudformation/resources/aws-iotanalytics-dataset.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset.go index 77696734af..d758fd1f70 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset.go @@ -1,25 +1,27 @@ -package resources +package iotanalytics import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSIoTAnalyticsDataset AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset) +// Dataset AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html -type AWSIoTAnalyticsDataset struct { +type Dataset struct { // Actions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-actions - Actions []AWSIoTAnalyticsDataset_Action `json:"Actions,omitempty"` + Actions []Dataset_Action `json:"Actions,omitempty"` // ContentDeliveryRules AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-contentdeliveryrules - ContentDeliveryRules []AWSIoTAnalyticsDataset_DatasetContentDeliveryRule `json:"ContentDeliveryRules,omitempty"` + ContentDeliveryRules []Dataset_DatasetContentDeliveryRule `json:"ContentDeliveryRules,omitempty"` // DatasetName AWS CloudFormation Property // Required: false @@ -29,22 +31,22 @@ type AWSIoTAnalyticsDataset struct { // RetentionPeriod AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-retentionperiod - RetentionPeriod *AWSIoTAnalyticsDataset_RetentionPeriod `json:"RetentionPeriod,omitempty"` + RetentionPeriod *Dataset_RetentionPeriod `json:"RetentionPeriod,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Triggers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-triggers - Triggers []AWSIoTAnalyticsDataset_Trigger `json:"Triggers,omitempty"` + Triggers []Dataset_Trigger `json:"Triggers,omitempty"` // VersioningConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-versioningconfiguration - VersioningConfiguration *AWSIoTAnalyticsDataset_VersioningConfiguration `json:"VersioningConfiguration,omitempty"` + VersioningConfiguration *Dataset_VersioningConfiguration `json:"VersioningConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +59,50 @@ type AWSIoTAnalyticsDataset struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset) AWSCloudFormationType() string { +func (r *Dataset) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Dataset" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset) DependsOn() []string { +func (r *Dataset) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset) SetDependsOn(dependencies []string) { +func (r *Dataset) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset) Metadata() map[string]interface{} { +func (r *Dataset) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset) SetMetadata(metadata map[string]interface{}) { +func (r *Dataset) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset) DeletionPolicy() policies.DeletionPolicy { +func (r *Dataset) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTAnalyticsDataset) MarshalJSON() ([]byte, error) { - type Properties AWSIoTAnalyticsDataset +func (r Dataset) MarshalJSON() ([]byte, error) { + type Properties Dataset return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +120,8 @@ func (r AWSIoTAnalyticsDataset) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTAnalyticsDataset) UnmarshalJSON(b []byte) error { - type Properties AWSIoTAnalyticsDataset +func (r *Dataset) UnmarshalJSON(b []byte) error { + type Properties Dataset res := &struct { Type string Properties *Properties @@ -138,7 +140,7 @@ func (r *AWSIoTAnalyticsDataset) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTAnalyticsDataset(*res.Properties) + *r = Dataset(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_action.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_action.go new file mode 100644 index 0000000000..d5676af46a --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_action.go @@ -0,0 +1,75 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_Action AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html +type Dataset_Action struct { + + // ActionName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-actionname + ActionName string `json:"ActionName,omitempty"` + + // ContainerAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-containeraction + ContainerAction *Dataset_ContainerAction `json:"ContainerAction,omitempty"` + + // QueryAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-queryaction + QueryAction *Dataset_QueryAction `json:"QueryAction,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_Action) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.Action" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_Action) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_Action) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_Action) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_Action) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_Action) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_containeraction.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_containeraction.go new file mode 100644 index 0000000000..16cf564ffd --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_containeraction.go @@ -0,0 +1,80 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_ContainerAction AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.ContainerAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html +type Dataset_ContainerAction struct { + + // ExecutionRoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-executionrolearn + ExecutionRoleArn string `json:"ExecutionRoleArn,omitempty"` + + // Image AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-image + Image string `json:"Image,omitempty"` + + // ResourceConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-resourceconfiguration + ResourceConfiguration *Dataset_ResourceConfiguration `json:"ResourceConfiguration,omitempty"` + + // Variables AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-variables + Variables []Dataset_Variable `json:"Variables,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_ContainerAction) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.ContainerAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_ContainerAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_ContainerAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_ContainerAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_ContainerAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_ContainerAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_ContainerAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go new file mode 100644 index 0000000000..2eaa4eee51 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_DatasetContentDeliveryRule AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html +type Dataset_DatasetContentDeliveryRule struct { + + // Destination AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html#cfn-iotanalytics-dataset-datasetcontentdeliveryrule-destination + Destination *Dataset_DatasetContentDeliveryRuleDestination `json:"Destination,omitempty"` + + // EntryName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html#cfn-iotanalytics-dataset-datasetcontentdeliveryrule-entryname + EntryName string `json:"EntryName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_DatasetContentDeliveryRule) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_DatasetContentDeliveryRule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_DatasetContentDeliveryRule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_DatasetContentDeliveryRule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_DatasetContentDeliveryRule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_DatasetContentDeliveryRule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_DatasetContentDeliveryRule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go new file mode 100644 index 0000000000..10d70c9826 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_DatasetContentDeliveryRuleDestination AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRuleDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html +type Dataset_DatasetContentDeliveryRuleDestination struct { + + // IotEventsDestinationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html#cfn-iotanalytics-dataset-datasetcontentdeliveryruledestination-ioteventsdestinationconfiguration + IotEventsDestinationConfiguration *Dataset_IotEventsDestinationConfiguration `json:"IotEventsDestinationConfiguration,omitempty"` + + // S3DestinationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html#cfn-iotanalytics-dataset-datasetcontentdeliveryruledestination-s3destinationconfiguration + S3DestinationConfiguration *Dataset_S3DestinationConfiguration `json:"S3DestinationConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_DatasetContentDeliveryRuleDestination) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRuleDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_DatasetContentDeliveryRuleDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_DatasetContentDeliveryRuleDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_DatasetContentDeliveryRuleDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_DatasetContentDeliveryRuleDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_DatasetContentDeliveryRuleDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_DatasetContentDeliveryRuleDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentversionvalue.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentversionvalue.go new file mode 100644 index 0000000000..426e0b7a17 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentversionvalue.go @@ -0,0 +1,65 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_DatasetContentVersionValue AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentVersionValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-datasetcontentversionvalue.html +type Dataset_DatasetContentVersionValue struct { + + // DatasetName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-datasetcontentversionvalue.html#cfn-iotanalytics-dataset-variable-datasetcontentversionvalue-datasetname + DatasetName string `json:"DatasetName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_DatasetContentVersionValue) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.DatasetContentVersionValue" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_DatasetContentVersionValue) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_DatasetContentVersionValue) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_DatasetContentVersionValue) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_DatasetContentVersionValue) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_DatasetContentVersionValue) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_DatasetContentVersionValue) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_deltatime.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_deltatime.go new file mode 100644 index 0000000000..647acca1c9 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_deltatime.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_DeltaTime AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DeltaTime) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html +type Dataset_DeltaTime struct { + + // OffsetSeconds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html#cfn-iotanalytics-dataset-deltatime-offsetseconds + OffsetSeconds int `json:"OffsetSeconds"` + + // TimeExpression AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html#cfn-iotanalytics-dataset-deltatime-timeexpression + TimeExpression string `json:"TimeExpression,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_DeltaTime) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.DeltaTime" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_DeltaTime) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_DeltaTime) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_DeltaTime) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_DeltaTime) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_DeltaTime) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_DeltaTime) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_filter.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_filter.go new file mode 100644 index 0000000000..520bde72b5 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_filter.go @@ -0,0 +1,65 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_Filter AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Filter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-filter.html +type Dataset_Filter struct { + + // DeltaTime AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-filter.html#cfn-iotanalytics-dataset-filter-deltatime + DeltaTime *Dataset_DeltaTime `json:"DeltaTime,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_Filter) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.Filter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_Filter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_Filter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_Filter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_Filter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_Filter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_glueconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_glueconfiguration.go new file mode 100644 index 0000000000..d36449047e --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_glueconfiguration.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_GlueConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.GlueConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html +type Dataset_GlueConfiguration struct { + + // DatabaseName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html#cfn-iotanalytics-dataset-glueconfiguration-databasename + DatabaseName string `json:"DatabaseName,omitempty"` + + // TableName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html#cfn-iotanalytics-dataset-glueconfiguration-tablename + TableName string `json:"TableName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_GlueConfiguration) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.GlueConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_GlueConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_GlueConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_GlueConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_GlueConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_GlueConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_GlueConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go new file mode 100644 index 0000000000..ba5bd7a60d --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_IotEventsDestinationConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.IotEventsDestinationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html +type Dataset_IotEventsDestinationConfiguration struct { + + // InputName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html#cfn-iotanalytics-dataset-ioteventsdestinationconfiguration-inputname + InputName string `json:"InputName,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html#cfn-iotanalytics-dataset-ioteventsdestinationconfiguration-rolearn + RoleArn string `json:"RoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_IotEventsDestinationConfiguration) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.IotEventsDestinationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_IotEventsDestinationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_IotEventsDestinationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_IotEventsDestinationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_IotEventsDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_IotEventsDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_IotEventsDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_outputfileurivalue.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_outputfileurivalue.go new file mode 100644 index 0000000000..edd56353d0 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_outputfileurivalue.go @@ -0,0 +1,65 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_OutputFileUriValue AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.OutputFileUriValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-outputfileurivalue.html +type Dataset_OutputFileUriValue struct { + + // FileName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-outputfileurivalue.html#cfn-iotanalytics-dataset-variable-outputfileurivalue-filename + FileName string `json:"FileName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_OutputFileUriValue) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.OutputFileUriValue" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_OutputFileUriValue) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_OutputFileUriValue) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_OutputFileUriValue) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_OutputFileUriValue) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_OutputFileUriValue) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_OutputFileUriValue) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_queryaction.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_queryaction.go new file mode 100644 index 0000000000..bf361b8b6a --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_queryaction.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_QueryAction AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.QueryAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html +type Dataset_QueryAction struct { + + // Filters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html#cfn-iotanalytics-dataset-queryaction-filters + Filters []Dataset_Filter `json:"Filters,omitempty"` + + // SqlQuery AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html#cfn-iotanalytics-dataset-queryaction-sqlquery + SqlQuery string `json:"SqlQuery,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_QueryAction) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.QueryAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_QueryAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_QueryAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_QueryAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_QueryAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_QueryAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_QueryAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_resourceconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_resourceconfiguration.go new file mode 100644 index 0000000000..710bb3680e --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_resourceconfiguration.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_ResourceConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.ResourceConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html +type Dataset_ResourceConfiguration struct { + + // ComputeType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html#cfn-iotanalytics-dataset-resourceconfiguration-computetype + ComputeType string `json:"ComputeType,omitempty"` + + // VolumeSizeInGB AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html#cfn-iotanalytics-dataset-resourceconfiguration-volumesizeingb + VolumeSizeInGB int `json:"VolumeSizeInGB"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_ResourceConfiguration) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.ResourceConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_ResourceConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_ResourceConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_ResourceConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_ResourceConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_ResourceConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_ResourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_retentionperiod.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_retentionperiod.go new file mode 100644 index 0000000000..f9c8620e9b --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_retentionperiod.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.RetentionPeriod) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html +type Dataset_RetentionPeriod struct { + + // NumberOfDays AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html#cfn-iotanalytics-dataset-retentionperiod-numberofdays + NumberOfDays int `json:"NumberOfDays"` + + // Unlimited AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html#cfn-iotanalytics-dataset-retentionperiod-unlimited + Unlimited bool `json:"Unlimited"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_RetentionPeriod) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.RetentionPeriod" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_RetentionPeriod) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_RetentionPeriod) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_RetentionPeriod) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_s3destinationconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_s3destinationconfiguration.go new file mode 100644 index 0000000000..5c2887cf69 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_s3destinationconfiguration.go @@ -0,0 +1,80 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_S3DestinationConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.S3DestinationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html +type Dataset_S3DestinationConfiguration struct { + + // Bucket AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-bucket + Bucket string `json:"Bucket,omitempty"` + + // GlueConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-glueconfiguration + GlueConfiguration *Dataset_GlueConfiguration `json:"GlueConfiguration,omitempty"` + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-key + Key string `json:"Key,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-rolearn + RoleArn string `json:"RoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_S3DestinationConfiguration) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.S3DestinationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_S3DestinationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_S3DestinationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_S3DestinationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_S3DestinationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_S3DestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_S3DestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_schedule.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_schedule.go new file mode 100644 index 0000000000..0e3fc20983 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_schedule.go @@ -0,0 +1,65 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_Schedule AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Schedule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger-schedule.html +type Dataset_Schedule struct { + + // ScheduleExpression AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger-schedule.html#cfn-iotanalytics-dataset-trigger-schedule-scheduleexpression + ScheduleExpression string `json:"ScheduleExpression,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_Schedule) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.Schedule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_Schedule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_Schedule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_Schedule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_Schedule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_Schedule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_trigger.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_trigger.go new file mode 100644 index 0000000000..0ff4672e52 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_trigger.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_Trigger AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Trigger) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html +type Dataset_Trigger struct { + + // Schedule AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html#cfn-iotanalytics-dataset-trigger-schedule + Schedule *Dataset_Schedule `json:"Schedule,omitempty"` + + // TriggeringDataset AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html#cfn-iotanalytics-dataset-trigger-triggeringdataset + TriggeringDataset *Dataset_TriggeringDataset `json:"TriggeringDataset,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_Trigger) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.Trigger" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_Trigger) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_Trigger) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_Trigger) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_Trigger) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_Trigger) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_Trigger) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_triggeringdataset.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_triggeringdataset.go new file mode 100644 index 0000000000..116d50884b --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_triggeringdataset.go @@ -0,0 +1,65 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_TriggeringDataset AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.TriggeringDataset) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-triggeringdataset.html +type Dataset_TriggeringDataset struct { + + // DatasetName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-triggeringdataset.html#cfn-iotanalytics-dataset-triggeringdataset-datasetname + DatasetName string `json:"DatasetName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_TriggeringDataset) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.TriggeringDataset" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_TriggeringDataset) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_TriggeringDataset) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_TriggeringDataset) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_TriggeringDataset) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_TriggeringDataset) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_TriggeringDataset) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_variable.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_variable.go similarity index 75% rename from cloudformation/resources/aws-iotanalytics-dataset_variable.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_variable.go index bd6a405edb..1d8f536e06 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_variable.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_variable.go @@ -1,15 +1,17 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsDataset_Variable AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Variable) +// Dataset_Variable AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Variable) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html -type AWSIoTAnalyticsDataset_Variable struct { +type Dataset_Variable struct { // DatasetContentVersionValue AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-datasetcontentversionvalue - DatasetContentVersionValue *AWSIoTAnalyticsDataset_DatasetContentVersionValue `json:"DatasetContentVersionValue,omitempty"` + DatasetContentVersionValue *Dataset_DatasetContentVersionValue `json:"DatasetContentVersionValue,omitempty"` // DoubleValue AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSIoTAnalyticsDataset_Variable struct { // OutputFileUriValue AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-outputfileurivalue - OutputFileUriValue *AWSIoTAnalyticsDataset_OutputFileUriValue `json:"OutputFileUriValue,omitempty"` + OutputFileUriValue *Dataset_OutputFileUriValue `json:"OutputFileUriValue,omitempty"` // StringValue AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSIoTAnalyticsDataset_Variable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Variable) AWSCloudFormationType() string { +func (r *Dataset_Variable) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Dataset.Variable" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Variable) DependsOn() []string { +func (r *Dataset_Variable) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Variable) SetDependsOn(dependencies []string) { +func (r *Dataset_Variable) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Variable) Metadata() map[string]interface{} { +func (r *Dataset_Variable) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Variable) SetMetadata(metadata map[string]interface{}) { +func (r *Dataset_Variable) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Variable) DeletionPolicy() policies.DeletionPolicy { +func (r *Dataset_Variable) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Variable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_Variable) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/iotanalytics/aws-iotanalytics-dataset_versioningconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_versioningconfiguration.go new file mode 100644 index 0000000000..17a6e9885d --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_versioningconfiguration.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Dataset_VersioningConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.VersioningConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html +type Dataset_VersioningConfiguration struct { + + // MaxVersions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-maxversions + MaxVersions int `json:"MaxVersions,omitempty"` + + // Unlimited AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-unlimited + Unlimited bool `json:"Unlimited,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Dataset_VersioningConfiguration) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Dataset.VersioningConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_VersioningConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Dataset_VersioningConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_VersioningConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Dataset_VersioningConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_VersioningConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Dataset_VersioningConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotanalytics-datastore.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore.go similarity index 77% rename from cloudformation/resources/aws-iotanalytics-datastore.go rename to cloudformation/iotanalytics/aws-iotanalytics-datastore.go index b1122b4752..454b5f46ea 100644 --- a/cloudformation/resources/aws-iotanalytics-datastore.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore.go @@ -1,15 +1,17 @@ -package resources +package iotanalytics import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSIoTAnalyticsDatastore AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore) +// Datastore AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html -type AWSIoTAnalyticsDatastore struct { +type Datastore struct { // DatastoreName AWS CloudFormation Property // Required: false @@ -19,17 +21,17 @@ type AWSIoTAnalyticsDatastore struct { // DatastoreStorage AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-datastorestorage - DatastoreStorage *AWSIoTAnalyticsDatastore_DatastoreStorage `json:"DatastoreStorage,omitempty"` + DatastoreStorage *Datastore_DatastoreStorage `json:"DatastoreStorage,omitempty"` // RetentionPeriod AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-retentionperiod - RetentionPeriod *AWSIoTAnalyticsDatastore_RetentionPeriod `json:"RetentionPeriod,omitempty"` + RetentionPeriod *Datastore_RetentionPeriod `json:"RetentionPeriod,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSIoTAnalyticsDatastore struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore) AWSCloudFormationType() string { +func (r *Datastore) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Datastore" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore) DependsOn() []string { +func (r *Datastore) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore) SetDependsOn(dependencies []string) { +func (r *Datastore) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore) Metadata() map[string]interface{} { +func (r *Datastore) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore) SetMetadata(metadata map[string]interface{}) { +func (r *Datastore) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore) DeletionPolicy() policies.DeletionPolicy { +func (r *Datastore) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Datastore) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTAnalyticsDatastore) MarshalJSON() ([]byte, error) { - type Properties AWSIoTAnalyticsDatastore +func (r Datastore) MarshalJSON() ([]byte, error) { + type Properties Datastore return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSIoTAnalyticsDatastore) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTAnalyticsDatastore) UnmarshalJSON(b []byte) error { - type Properties AWSIoTAnalyticsDatastore +func (r *Datastore) UnmarshalJSON(b []byte) error { + type Properties Datastore res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSIoTAnalyticsDatastore) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTAnalyticsDatastore(*res.Properties) + *r = Datastore(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iotanalytics/aws-iotanalytics-datastore_customermanageds3.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore_customermanageds3.go new file mode 100644 index 0000000000..a87c7e0fd6 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore_customermanageds3.go @@ -0,0 +1,75 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Datastore_CustomerManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.CustomerManagedS3) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html +type Datastore_CustomerManagedS3 struct { + + // Bucket AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-bucket + Bucket string `json:"Bucket,omitempty"` + + // KeyPrefix AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-keyprefix + KeyPrefix string `json:"KeyPrefix,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-rolearn + RoleArn string `json:"RoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Datastore_CustomerManagedS3) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Datastore.CustomerManagedS3" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Datastore_CustomerManagedS3) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Datastore_CustomerManagedS3) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Datastore_CustomerManagedS3) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Datastore_CustomerManagedS3) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Datastore_CustomerManagedS3) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Datastore_CustomerManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-datastore_datastorestorage.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore_datastorestorage.go new file mode 100644 index 0000000000..72ca641fc0 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore_datastorestorage.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Datastore_DatastoreStorage AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.DatastoreStorage) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html +type Datastore_DatastoreStorage struct { + + // CustomerManagedS3 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html#cfn-iotanalytics-datastore-datastorestorage-customermanageds3 + CustomerManagedS3 *Datastore_CustomerManagedS3 `json:"CustomerManagedS3,omitempty"` + + // ServiceManagedS3 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html#cfn-iotanalytics-datastore-datastorestorage-servicemanageds3 + ServiceManagedS3 *Datastore_ServiceManagedS3 `json:"ServiceManagedS3,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Datastore_DatastoreStorage) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Datastore.DatastoreStorage" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Datastore_DatastoreStorage) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Datastore_DatastoreStorage) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Datastore_DatastoreStorage) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Datastore_DatastoreStorage) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Datastore_DatastoreStorage) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Datastore_DatastoreStorage) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-datastore_retentionperiod.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore_retentionperiod.go new file mode 100644 index 0000000000..ed7c96cb4e --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore_retentionperiod.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Datastore_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.RetentionPeriod) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html +type Datastore_RetentionPeriod struct { + + // NumberOfDays AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html#cfn-iotanalytics-datastore-retentionperiod-numberofdays + NumberOfDays int `json:"NumberOfDays,omitempty"` + + // Unlimited AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html#cfn-iotanalytics-datastore-retentionperiod-unlimited + Unlimited bool `json:"Unlimited,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Datastore_RetentionPeriod) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Datastore.RetentionPeriod" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Datastore_RetentionPeriod) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Datastore_RetentionPeriod) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Datastore_RetentionPeriod) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Datastore_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Datastore_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Datastore_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-datastore_servicemanageds3.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore_servicemanageds3.go new file mode 100644 index 0000000000..daa41d0eb3 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore_servicemanageds3.go @@ -0,0 +1,60 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Datastore_ServiceManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.ServiceManagedS3) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-servicemanageds3.html +type Datastore_ServiceManagedS3 struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Datastore_ServiceManagedS3) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Datastore.ServiceManagedS3" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Datastore_ServiceManagedS3) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Datastore_ServiceManagedS3) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Datastore_ServiceManagedS3) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Datastore_ServiceManagedS3) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Datastore_ServiceManagedS3) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Datastore_ServiceManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotanalytics-pipeline.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline.go similarity index 78% rename from cloudformation/resources/aws-iotanalytics-pipeline.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline.go index 9f2e12cdca..9a02c90df2 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline.go @@ -1,20 +1,22 @@ -package resources +package iotanalytics import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSIoTAnalyticsPipeline AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline) +// Pipeline AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html -type AWSIoTAnalyticsPipeline struct { +type Pipeline struct { // PipelineActivities AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html#cfn-iotanalytics-pipeline-pipelineactivities - PipelineActivities []AWSIoTAnalyticsPipeline_Activity `json:"PipelineActivities,omitempty"` + PipelineActivities []Pipeline_Activity `json:"PipelineActivities,omitempty"` // PipelineName AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSIoTAnalyticsPipeline struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html#cfn-iotanalytics-pipeline-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +39,50 @@ type AWSIoTAnalyticsPipeline struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline) AWSCloudFormationType() string { +func (r *Pipeline) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Pipeline" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline) DependsOn() []string { +func (r *Pipeline) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline) SetDependsOn(dependencies []string) { +func (r *Pipeline) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline) Metadata() map[string]interface{} { +func (r *Pipeline) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTAnalyticsPipeline) MarshalJSON() ([]byte, error) { - type Properties AWSIoTAnalyticsPipeline +func (r Pipeline) MarshalJSON() ([]byte, error) { + type Properties Pipeline return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +100,8 @@ func (r AWSIoTAnalyticsPipeline) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTAnalyticsPipeline) UnmarshalJSON(b []byte) error { - type Properties AWSIoTAnalyticsPipeline +func (r *Pipeline) UnmarshalJSON(b []byte) error { + type Properties Pipeline res := &struct { Type string Properties *Properties @@ -118,7 +120,7 @@ func (r *AWSIoTAnalyticsPipeline) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTAnalyticsPipeline(*res.Properties) + *r = Pipeline(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iotanalytics/aws-iotanalytics-pipeline_activity.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_activity.go new file mode 100644 index 0000000000..dc98b0a91c --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_activity.go @@ -0,0 +1,110 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_Activity AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Activity) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html +type Pipeline_Activity struct { + + // AddAttributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-addattributes + AddAttributes *Pipeline_AddAttributes `json:"AddAttributes,omitempty"` + + // Channel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-channel + Channel *Pipeline_Channel `json:"Channel,omitempty"` + + // Datastore AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-datastore + Datastore *Pipeline_Datastore `json:"Datastore,omitempty"` + + // DeviceRegistryEnrich AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-deviceregistryenrich + DeviceRegistryEnrich *Pipeline_DeviceRegistryEnrich `json:"DeviceRegistryEnrich,omitempty"` + + // DeviceShadowEnrich AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-deviceshadowenrich + DeviceShadowEnrich *Pipeline_DeviceShadowEnrich `json:"DeviceShadowEnrich,omitempty"` + + // Filter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-filter + Filter *Pipeline_Filter `json:"Filter,omitempty"` + + // Lambda AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-lambda + Lambda *Pipeline_Lambda `json:"Lambda,omitempty"` + + // Math AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-math + Math *Pipeline_Math `json:"Math,omitempty"` + + // RemoveAttributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-removeattributes + RemoveAttributes *Pipeline_RemoveAttributes `json:"RemoveAttributes,omitempty"` + + // SelectAttributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-selectattributes + SelectAttributes *Pipeline_SelectAttributes `json:"SelectAttributes,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_Activity) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Pipeline.Activity" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_Activity) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_Activity) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_Activity) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_Activity) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_Activity) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_Activity) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_addattributes.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_addattributes.go similarity index 75% rename from cloudformation/resources/aws-iotanalytics-pipeline_addattributes.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_addattributes.go index 90e2255dc2..96f83b9631 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_addattributes.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_addattributes.go @@ -1,10 +1,12 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsPipeline_AddAttributes AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.AddAttributes) +// Pipeline_AddAttributes AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.AddAttributes) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html -type AWSIoTAnalyticsPipeline_AddAttributes struct { +type Pipeline_AddAttributes struct { // Attributes AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTAnalyticsPipeline_AddAttributes struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_AddAttributes) AWSCloudFormationType() string { +func (r *Pipeline_AddAttributes) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Pipeline.AddAttributes" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_AddAttributes) DependsOn() []string { +func (r *Pipeline_AddAttributes) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_AddAttributes) SetDependsOn(dependencies []string) { +func (r *Pipeline_AddAttributes) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_AddAttributes) Metadata() map[string]interface{} { +func (r *Pipeline_AddAttributes) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_AddAttributes) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_AddAttributes) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_AddAttributes) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_AddAttributes) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_AddAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_AddAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_channel.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_channel.go similarity index 76% rename from cloudformation/resources/aws-iotanalytics-pipeline_channel.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_channel.go index 81b54d5572..90b74527ec 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_channel.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_channel.go @@ -1,10 +1,12 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsPipeline_Channel AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Channel) +// Pipeline_Channel AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Channel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html -type AWSIoTAnalyticsPipeline_Channel struct { +type Pipeline_Channel struct { // ChannelName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTAnalyticsPipeline_Channel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_Channel) AWSCloudFormationType() string { +func (r *Pipeline_Channel) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Pipeline.Channel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Channel) DependsOn() []string { +func (r *Pipeline_Channel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Channel) SetDependsOn(dependencies []string) { +func (r *Pipeline_Channel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Channel) Metadata() map[string]interface{} { +func (r *Pipeline_Channel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Channel) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_Channel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Channel) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_Channel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Channel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_Channel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/iotanalytics/aws-iotanalytics-pipeline_datastore.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_datastore.go new file mode 100644 index 0000000000..416b21d162 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_datastore.go @@ -0,0 +1,70 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_Datastore AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Datastore) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html +type Pipeline_Datastore struct { + + // DatastoreName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html#cfn-iotanalytics-pipeline-datastore-datastorename + DatastoreName string `json:"DatastoreName,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html#cfn-iotanalytics-pipeline-datastore-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_Datastore) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Pipeline.Datastore" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_Datastore) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_Datastore) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_Datastore) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_Datastore) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_Datastore) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_Datastore) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_deviceregistryenrich.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_deviceregistryenrich.go similarity index 77% rename from cloudformation/resources/aws-iotanalytics-pipeline_deviceregistryenrich.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_deviceregistryenrich.go index cf0c68273f..b9e0129957 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_deviceregistryenrich.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_deviceregistryenrich.go @@ -1,10 +1,12 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsPipeline_DeviceRegistryEnrich AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.DeviceRegistryEnrich) +// Pipeline_DeviceRegistryEnrich AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.DeviceRegistryEnrich) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html -type AWSIoTAnalyticsPipeline_DeviceRegistryEnrich struct { +type Pipeline_DeviceRegistryEnrich struct { // Attribute AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSIoTAnalyticsPipeline_DeviceRegistryEnrich struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich) AWSCloudFormationType() string { +func (r *Pipeline_DeviceRegistryEnrich) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Pipeline.DeviceRegistryEnrich" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich) DependsOn() []string { +func (r *Pipeline_DeviceRegistryEnrich) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich) SetDependsOn(dependencies []string) { +func (r *Pipeline_DeviceRegistryEnrich) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich) Metadata() map[string]interface{} { +func (r *Pipeline_DeviceRegistryEnrich) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_DeviceRegistryEnrich) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_DeviceRegistryEnrich) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_DeviceRegistryEnrich) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_deviceshadowenrich.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_deviceshadowenrich.go similarity index 78% rename from cloudformation/resources/aws-iotanalytics-pipeline_deviceshadowenrich.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_deviceshadowenrich.go index 53ad3a59a9..47468cd909 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_deviceshadowenrich.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_deviceshadowenrich.go @@ -1,10 +1,12 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsPipeline_DeviceShadowEnrich AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.DeviceShadowEnrich) +// Pipeline_DeviceShadowEnrich AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.DeviceShadowEnrich) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html -type AWSIoTAnalyticsPipeline_DeviceShadowEnrich struct { +type Pipeline_DeviceShadowEnrich struct { // Attribute AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSIoTAnalyticsPipeline_DeviceShadowEnrich struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_DeviceShadowEnrich) AWSCloudFormationType() string { +func (r *Pipeline_DeviceShadowEnrich) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Pipeline.DeviceShadowEnrich" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_DeviceShadowEnrich) DependsOn() []string { +func (r *Pipeline_DeviceShadowEnrich) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_DeviceShadowEnrich) SetDependsOn(dependencies []string) { +func (r *Pipeline_DeviceShadowEnrich) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_DeviceShadowEnrich) Metadata() map[string]interface{} { +func (r *Pipeline_DeviceShadowEnrich) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_DeviceShadowEnrich) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_DeviceShadowEnrich) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_DeviceShadowEnrich) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_DeviceShadowEnrich) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_DeviceShadowEnrich) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_DeviceShadowEnrich) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_filter.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_filter.go similarity index 76% rename from cloudformation/resources/aws-iotanalytics-pipeline_filter.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_filter.go index 0ed4dc9959..17d37ba6d3 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_filter.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_filter.go @@ -1,10 +1,12 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsPipeline_Filter AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Filter) +// Pipeline_Filter AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Filter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html -type AWSIoTAnalyticsPipeline_Filter struct { +type Pipeline_Filter struct { // Filter AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTAnalyticsPipeline_Filter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_Filter) AWSCloudFormationType() string { +func (r *Pipeline_Filter) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Pipeline.Filter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Filter) DependsOn() []string { +func (r *Pipeline_Filter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Filter) SetDependsOn(dependencies []string) { +func (r *Pipeline_Filter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Filter) Metadata() map[string]interface{} { +func (r *Pipeline_Filter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Filter) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_Filter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Filter) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_Filter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_lambda.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_lambda.go similarity index 78% rename from cloudformation/resources/aws-iotanalytics-pipeline_lambda.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_lambda.go index 40e5b1dd76..6368569806 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_lambda.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_lambda.go @@ -1,10 +1,12 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsPipeline_Lambda AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Lambda) +// Pipeline_Lambda AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Lambda) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html -type AWSIoTAnalyticsPipeline_Lambda struct { +type Pipeline_Lambda struct { // BatchSize AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSIoTAnalyticsPipeline_Lambda struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_Lambda) AWSCloudFormationType() string { +func (r *Pipeline_Lambda) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Pipeline.Lambda" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Lambda) DependsOn() []string { +func (r *Pipeline_Lambda) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Lambda) SetDependsOn(dependencies []string) { +func (r *Pipeline_Lambda) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Lambda) Metadata() map[string]interface{} { +func (r *Pipeline_Lambda) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Lambda) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_Lambda) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Lambda) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_Lambda) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Lambda) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_Lambda) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_math.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_math.go similarity index 78% rename from cloudformation/resources/aws-iotanalytics-pipeline_math.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_math.go index 29dae5fb3e..c7a5640b8d 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_math.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_math.go @@ -1,10 +1,12 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsPipeline_Math AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Math) +// Pipeline_Math AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Math) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html -type AWSIoTAnalyticsPipeline_Math struct { +type Pipeline_Math struct { // Attribute AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSIoTAnalyticsPipeline_Math struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_Math) AWSCloudFormationType() string { +func (r *Pipeline_Math) AWSCloudFormationType() string { return "AWS::IoTAnalytics::Pipeline.Math" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Math) DependsOn() []string { +func (r *Pipeline_Math) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Math) SetDependsOn(dependencies []string) { +func (r *Pipeline_Math) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Math) Metadata() map[string]interface{} { +func (r *Pipeline_Math) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Math) SetMetadata(metadata map[string]interface{}) { +func (r *Pipeline_Math) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Math) DeletionPolicy() policies.DeletionPolicy { +func (r *Pipeline_Math) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Math) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_Math) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/iotanalytics/aws-iotanalytics-pipeline_removeattributes.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_removeattributes.go new file mode 100644 index 0000000000..1c87f086be --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_removeattributes.go @@ -0,0 +1,75 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_RemoveAttributes AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.RemoveAttributes) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html +type Pipeline_RemoveAttributes struct { + + // Attributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-attributes + Attributes []string `json:"Attributes,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-name + Name string `json:"Name,omitempty"` + + // Next AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-next + Next string `json:"Next,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_RemoveAttributes) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Pipeline.RemoveAttributes" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_RemoveAttributes) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_RemoveAttributes) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_RemoveAttributes) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_RemoveAttributes) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_RemoveAttributes) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_RemoveAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotanalytics/aws-iotanalytics-pipeline_selectattributes.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_selectattributes.go new file mode 100644 index 0000000000..d4245692a2 --- /dev/null +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_selectattributes.go @@ -0,0 +1,75 @@ +package iotanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Pipeline_SelectAttributes AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.SelectAttributes) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html +type Pipeline_SelectAttributes struct { + + // Attributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-attributes + Attributes []string `json:"Attributes,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-name + Name string `json:"Name,omitempty"` + + // Next AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-next + Next string `json:"Next,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Pipeline_SelectAttributes) AWSCloudFormationType() string { + return "AWS::IoTAnalytics::Pipeline.SelectAttributes" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_SelectAttributes) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Pipeline_SelectAttributes) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_SelectAttributes) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Pipeline_SelectAttributes) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_SelectAttributes) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Pipeline_SelectAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotevents-detectormodel.go b/cloudformation/iotevents/aws-iotevents-detectormodel.go similarity index 80% rename from cloudformation/resources/aws-iotevents-detectormodel.go rename to cloudformation/iotevents/aws-iotevents-detectormodel.go index e6d4ea6228..084100752b 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel.go @@ -1,20 +1,22 @@ -package resources +package iotevents import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSIoTEventsDetectorModel AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel) +// DetectorModel AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html -type AWSIoTEventsDetectorModel struct { +type DetectorModel struct { // DetectorModelDefinition AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-detectormodeldefinition - DetectorModelDefinition *AWSIoTEventsDetectorModel_DetectorModelDefinition `json:"DetectorModelDefinition,omitempty"` + DetectorModelDefinition *DetectorModel_DetectorModelDefinition `json:"DetectorModelDefinition,omitempty"` // DetectorModelDescription AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSIoTEventsDetectorModel struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +54,50 @@ type AWSIoTEventsDetectorModel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel) AWSCloudFormationType() string { +func (r *DetectorModel) AWSCloudFormationType() string { return "AWS::IoTEvents::DetectorModel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel) DependsOn() []string { +func (r *DetectorModel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel) SetDependsOn(dependencies []string) { +func (r *DetectorModel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel) Metadata() map[string]interface{} { +func (r *DetectorModel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel) SetMetadata(metadata map[string]interface{}) { +func (r *DetectorModel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel) DeletionPolicy() policies.DeletionPolicy { +func (r *DetectorModel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTEventsDetectorModel) MarshalJSON() ([]byte, error) { - type Properties AWSIoTEventsDetectorModel +func (r DetectorModel) MarshalJSON() ([]byte, error) { + type Properties DetectorModel return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +115,8 @@ func (r AWSIoTEventsDetectorModel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTEventsDetectorModel) UnmarshalJSON(b []byte) error { - type Properties AWSIoTEventsDetectorModel +func (r *DetectorModel) UnmarshalJSON(b []byte) error { + type Properties DetectorModel res := &struct { Type string Properties *Properties @@ -133,7 +135,7 @@ func (r *AWSIoTEventsDetectorModel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTEventsDetectorModel(*res.Properties) + *r = DetectorModel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_action.go b/cloudformation/iotevents/aws-iotevents-detectormodel_action.go new file mode 100644 index 0000000000..2a908119fa --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_action.go @@ -0,0 +1,110 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_Action AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html +type DetectorModel_Action struct { + + // ClearTimer AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-cleartimer + ClearTimer *DetectorModel_ClearTimer `json:"ClearTimer,omitempty"` + + // Firehose AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-firehose + Firehose *DetectorModel_Firehose `json:"Firehose,omitempty"` + + // IotEvents AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iotevents + IotEvents *DetectorModel_IotEvents `json:"IotEvents,omitempty"` + + // IotTopicPublish AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iottopicpublish + IotTopicPublish *DetectorModel_IotTopicPublish `json:"IotTopicPublish,omitempty"` + + // Lambda AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-lambda + Lambda *DetectorModel_Lambda `json:"Lambda,omitempty"` + + // ResetTimer AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-resettimer + ResetTimer *DetectorModel_ResetTimer `json:"ResetTimer,omitempty"` + + // SetTimer AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-settimer + SetTimer *DetectorModel_SetTimer `json:"SetTimer,omitempty"` + + // SetVariable AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-setvariable + SetVariable *DetectorModel_SetVariable `json:"SetVariable,omitempty"` + + // Sns AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-sns + Sns *DetectorModel_Sns `json:"Sns,omitempty"` + + // Sqs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-sqs + Sqs *DetectorModel_Sqs `json:"Sqs,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_Action) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.Action" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Action) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Action) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Action) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Action) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Action) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_cleartimer.go b/cloudformation/iotevents/aws-iotevents-detectormodel_cleartimer.go new file mode 100644 index 0000000000..4e1a955672 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_cleartimer.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_ClearTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.ClearTimer) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-cleartimer.html +type DetectorModel_ClearTimer struct { + + // TimerName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-cleartimer.html#cfn-iotevents-detectormodel-cleartimer-timername + TimerName string `json:"TimerName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_ClearTimer) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.ClearTimer" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_ClearTimer) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_ClearTimer) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_ClearTimer) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_ClearTimer) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_ClearTimer) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_ClearTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_detectormodeldefinition.go b/cloudformation/iotevents/aws-iotevents-detectormodel_detectormodeldefinition.go new file mode 100644 index 0000000000..5c22987421 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_detectormodeldefinition.go @@ -0,0 +1,70 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_DetectorModelDefinition AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.DetectorModelDefinition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html +type DetectorModel_DetectorModelDefinition struct { + + // InitialStateName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html#cfn-iotevents-detectormodel-detectormodeldefinition-initialstatename + InitialStateName string `json:"InitialStateName,omitempty"` + + // States AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html#cfn-iotevents-detectormodel-detectormodeldefinition-states + States []DetectorModel_State `json:"States,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_DetectorModelDefinition) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.DetectorModelDefinition" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_DetectorModelDefinition) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_DetectorModelDefinition) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_DetectorModelDefinition) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_DetectorModelDefinition) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_DetectorModelDefinition) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_DetectorModelDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_event.go b/cloudformation/iotevents/aws-iotevents-detectormodel_event.go similarity index 75% rename from cloudformation/resources/aws-iotevents-detectormodel_event.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_event.go index 83c0b0ade3..960f6de078 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_event.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_event.go @@ -1,15 +1,17 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_Event AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Event) +// DetectorModel_Event AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Event) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html -type AWSIoTEventsDetectorModel_Event struct { +type DetectorModel_Event struct { // Actions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html#cfn-iotevents-detectormodel-event-actions - Actions []AWSIoTEventsDetectorModel_Action `json:"Actions,omitempty"` + Actions []DetectorModel_Action `json:"Actions,omitempty"` // Condition AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTEventsDetectorModel_Event struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Event) AWSCloudFormationType() string { +func (r *DetectorModel_Event) AWSCloudFormationType() string { return "AWS::IoTEvents::DetectorModel.Event" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Event) DependsOn() []string { +func (r *DetectorModel_Event) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Event) SetDependsOn(dependencies []string) { +func (r *DetectorModel_Event) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Event) Metadata() map[string]interface{} { +func (r *DetectorModel_Event) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Event) SetMetadata(metadata map[string]interface{}) { +func (r *DetectorModel_Event) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Event) DeletionPolicy() policies.DeletionPolicy { +func (r *DetectorModel_Event) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Event) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_Event) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_firehose.go b/cloudformation/iotevents/aws-iotevents-detectormodel_firehose.go new file mode 100644 index 0000000000..bd838bb390 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_firehose.go @@ -0,0 +1,70 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_Firehose AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Firehose) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html +type DetectorModel_Firehose struct { + + // DeliveryStreamName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-deliverystreamname + DeliveryStreamName string `json:"DeliveryStreamName,omitempty"` + + // Separator AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-separator + Separator string `json:"Separator,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_Firehose) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.Firehose" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Firehose) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Firehose) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Firehose) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Firehose) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Firehose) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Firehose) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_iotevents.go b/cloudformation/iotevents/aws-iotevents-detectormodel_iotevents.go new file mode 100644 index 0000000000..9a25950458 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_iotevents.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_IotEvents AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.IotEvents) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html +type DetectorModel_IotEvents struct { + + // InputName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html#cfn-iotevents-detectormodel-iotevents-inputname + InputName string `json:"InputName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_IotEvents) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.IotEvents" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_IotEvents) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_IotEvents) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_IotEvents) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_IotEvents) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_IotEvents) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_IotEvents) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_iottopicpublish.go b/cloudformation/iotevents/aws-iotevents-detectormodel_iottopicpublish.go new file mode 100644 index 0000000000..e35d1b59e2 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_iottopicpublish.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_IotTopicPublish AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.IotTopicPublish) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html +type DetectorModel_IotTopicPublish struct { + + // MqttTopic AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html#cfn-iotevents-detectormodel-iottopicpublish-mqtttopic + MqttTopic string `json:"MqttTopic,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_IotTopicPublish) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.IotTopicPublish" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_IotTopicPublish) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_IotTopicPublish) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_IotTopicPublish) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_IotTopicPublish) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_IotTopicPublish) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_IotTopicPublish) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_lambda.go b/cloudformation/iotevents/aws-iotevents-detectormodel_lambda.go new file mode 100644 index 0000000000..f3aaf9bfeb --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_lambda.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_Lambda AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Lambda) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html +type DetectorModel_Lambda struct { + + // FunctionArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html#cfn-iotevents-detectormodel-lambda-functionarn + FunctionArn string `json:"FunctionArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_Lambda) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.Lambda" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Lambda) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Lambda) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Lambda) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Lambda) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Lambda) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Lambda) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_onenter.go b/cloudformation/iotevents/aws-iotevents-detectormodel_onenter.go new file mode 100644 index 0000000000..c730c70c43 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_onenter.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_OnEnter AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnEnter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onenter.html +type DetectorModel_OnEnter struct { + + // Events AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onenter.html#cfn-iotevents-detectormodel-onenter-events + Events []DetectorModel_Event `json:"Events,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_OnEnter) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.OnEnter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_OnEnter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_OnEnter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_OnEnter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_OnEnter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_OnEnter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_OnEnter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_onexit.go b/cloudformation/iotevents/aws-iotevents-detectormodel_onexit.go new file mode 100644 index 0000000000..624bf2b5e1 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_onexit.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_OnExit AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnExit) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onexit.html +type DetectorModel_OnExit struct { + + // Events AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onexit.html#cfn-iotevents-detectormodel-onexit-events + Events []DetectorModel_Event `json:"Events,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_OnExit) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.OnExit" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_OnExit) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_OnExit) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_OnExit) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_OnExit) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_OnExit) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_OnExit) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_oninput.go b/cloudformation/iotevents/aws-iotevents-detectormodel_oninput.go new file mode 100644 index 0000000000..95645b15b6 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_oninput.go @@ -0,0 +1,70 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_OnInput AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnInput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html +type DetectorModel_OnInput struct { + + // Events AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html#cfn-iotevents-detectormodel-oninput-events + Events []DetectorModel_Event `json:"Events,omitempty"` + + // TransitionEvents AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html#cfn-iotevents-detectormodel-oninput-transitionevents + TransitionEvents []DetectorModel_TransitionEvent `json:"TransitionEvents,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_OnInput) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.OnInput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_OnInput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_OnInput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_OnInput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_OnInput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_OnInput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_OnInput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_resettimer.go b/cloudformation/iotevents/aws-iotevents-detectormodel_resettimer.go new file mode 100644 index 0000000000..561d7580d8 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_resettimer.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_ResetTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.ResetTimer) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-resettimer.html +type DetectorModel_ResetTimer struct { + + // TimerName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-resettimer.html#cfn-iotevents-detectormodel-resettimer-timername + TimerName string `json:"TimerName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_ResetTimer) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.ResetTimer" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_ResetTimer) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_ResetTimer) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_ResetTimer) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_ResetTimer) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_ResetTimer) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_ResetTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_settimer.go b/cloudformation/iotevents/aws-iotevents-detectormodel_settimer.go new file mode 100644 index 0000000000..e3c75d1db7 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_settimer.go @@ -0,0 +1,70 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_SetTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.SetTimer) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html +type DetectorModel_SetTimer struct { + + // Seconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-seconds + Seconds int `json:"Seconds,omitempty"` + + // TimerName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-timername + TimerName string `json:"TimerName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_SetTimer) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.SetTimer" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_SetTimer) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_SetTimer) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_SetTimer) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_SetTimer) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_SetTimer) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_SetTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_setvariable.go b/cloudformation/iotevents/aws-iotevents-detectormodel_setvariable.go new file mode 100644 index 0000000000..a1141444db --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_setvariable.go @@ -0,0 +1,70 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_SetVariable AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.SetVariable) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html +type DetectorModel_SetVariable struct { + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html#cfn-iotevents-detectormodel-setvariable-value + Value string `json:"Value,omitempty"` + + // VariableName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html#cfn-iotevents-detectormodel-setvariable-variablename + VariableName string `json:"VariableName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_SetVariable) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.SetVariable" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_SetVariable) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_SetVariable) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_SetVariable) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_SetVariable) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_SetVariable) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_SetVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_sns.go b/cloudformation/iotevents/aws-iotevents-detectormodel_sns.go new file mode 100644 index 0000000000..6f57b56daa --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_sns.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_Sns AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Sns) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html +type DetectorModel_Sns struct { + + // TargetArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html#cfn-iotevents-detectormodel-sns-targetarn + TargetArn string `json:"TargetArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_Sns) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.Sns" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Sns) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Sns) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Sns) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Sns) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Sns) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Sns) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_sqs.go b/cloudformation/iotevents/aws-iotevents-detectormodel_sqs.go new file mode 100644 index 0000000000..18c8b77514 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_sqs.go @@ -0,0 +1,70 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_Sqs AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Sqs) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html +type DetectorModel_Sqs struct { + + // QueueUrl AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-queueurl + QueueUrl string `json:"QueueUrl,omitempty"` + + // UseBase64 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-usebase64 + UseBase64 bool `json:"UseBase64,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_Sqs) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.Sqs" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Sqs) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_Sqs) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Sqs) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_Sqs) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Sqs) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_Sqs) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-detectormodel_state.go b/cloudformation/iotevents/aws-iotevents-detectormodel_state.go new file mode 100644 index 0000000000..432c19cfc8 --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_state.go @@ -0,0 +1,80 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DetectorModel_State AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.State) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html +type DetectorModel_State struct { + + // OnEnter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-onenter + OnEnter *DetectorModel_OnEnter `json:"OnEnter,omitempty"` + + // OnExit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-onexit + OnExit *DetectorModel_OnExit `json:"OnExit,omitempty"` + + // OnInput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-oninput + OnInput *DetectorModel_OnInput `json:"OnInput,omitempty"` + + // StateName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-statename + StateName string `json:"StateName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DetectorModel_State) AWSCloudFormationType() string { + return "AWS::IoTEvents::DetectorModel.State" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_State) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DetectorModel_State) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_State) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DetectorModel_State) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_State) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DetectorModel_State) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_transitionevent.go b/cloudformation/iotevents/aws-iotevents-detectormodel_transitionevent.go similarity index 75% rename from cloudformation/resources/aws-iotevents-detectormodel_transitionevent.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_transitionevent.go index 0a6fc15e60..b60f744eb5 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_transitionevent.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_transitionevent.go @@ -1,15 +1,17 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_TransitionEvent AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.TransitionEvent) +// DetectorModel_TransitionEvent AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.TransitionEvent) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html -type AWSIoTEventsDetectorModel_TransitionEvent struct { +type DetectorModel_TransitionEvent struct { // Actions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-actions - Actions []AWSIoTEventsDetectorModel_Action `json:"Actions,omitempty"` + Actions []DetectorModel_Action `json:"Actions,omitempty"` // Condition AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSIoTEventsDetectorModel_TransitionEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_TransitionEvent) AWSCloudFormationType() string { +func (r *DetectorModel_TransitionEvent) AWSCloudFormationType() string { return "AWS::IoTEvents::DetectorModel.TransitionEvent" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_TransitionEvent) DependsOn() []string { +func (r *DetectorModel_TransitionEvent) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_TransitionEvent) SetDependsOn(dependencies []string) { +func (r *DetectorModel_TransitionEvent) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_TransitionEvent) Metadata() map[string]interface{} { +func (r *DetectorModel_TransitionEvent) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_TransitionEvent) SetMetadata(metadata map[string]interface{}) { +func (r *DetectorModel_TransitionEvent) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_TransitionEvent) DeletionPolicy() policies.DeletionPolicy { +func (r *DetectorModel_TransitionEvent) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_TransitionEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_TransitionEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-input.go b/cloudformation/iotevents/aws-iotevents-input.go similarity index 80% rename from cloudformation/resources/aws-iotevents-input.go rename to cloudformation/iotevents/aws-iotevents-input.go index 6dc2516e3b..11ac21c930 100644 --- a/cloudformation/resources/aws-iotevents-input.go +++ b/cloudformation/iotevents/aws-iotevents-input.go @@ -1,20 +1,22 @@ -package resources +package iotevents import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSIoTEventsInput AWS CloudFormation Resource (AWS::IoTEvents::Input) +// Input AWS CloudFormation Resource (AWS::IoTEvents::Input) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html -type AWSIoTEventsInput struct { +type Input struct { // InputDefinition AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-inputdefinition - InputDefinition *AWSIoTEventsInput_InputDefinition `json:"InputDefinition,omitempty"` + InputDefinition *Input_InputDefinition `json:"InputDefinition,omitempty"` // InputDescription AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSIoTEventsInput struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSIoTEventsInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsInput) AWSCloudFormationType() string { +func (r *Input) AWSCloudFormationType() string { return "AWS::IoTEvents::Input" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsInput) DependsOn() []string { +func (r *Input) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsInput) SetDependsOn(dependencies []string) { +func (r *Input) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsInput) Metadata() map[string]interface{} { +func (r *Input) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsInput) SetMetadata(metadata map[string]interface{}) { +func (r *Input) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsInput) DeletionPolicy() policies.DeletionPolicy { +func (r *Input) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Input) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTEventsInput) MarshalJSON() ([]byte, error) { - type Properties AWSIoTEventsInput +func (r Input) MarshalJSON() ([]byte, error) { + type Properties Input return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSIoTEventsInput) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTEventsInput) UnmarshalJSON(b []byte) error { - type Properties AWSIoTEventsInput +func (r *Input) UnmarshalJSON(b []byte) error { + type Properties Input res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSIoTEventsInput) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTEventsInput(*res.Properties) + *r = Input(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iotevents/aws-iotevents-input_attribute.go b/cloudformation/iotevents/aws-iotevents-input_attribute.go new file mode 100644 index 0000000000..36a887885f --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-input_attribute.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Input_Attribute AWS CloudFormation Resource (AWS::IoTEvents::Input.Attribute) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-attribute.html +type Input_Attribute struct { + + // JsonPath AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-attribute.html#cfn-iotevents-input-attribute-jsonpath + JsonPath string `json:"JsonPath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Input_Attribute) AWSCloudFormationType() string { + return "AWS::IoTEvents::Input.Attribute" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_Attribute) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_Attribute) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_Attribute) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_Attribute) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_Attribute) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_Attribute) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/iotevents/aws-iotevents-input_inputdefinition.go b/cloudformation/iotevents/aws-iotevents-input_inputdefinition.go new file mode 100644 index 0000000000..380ca1505f --- /dev/null +++ b/cloudformation/iotevents/aws-iotevents-input_inputdefinition.go @@ -0,0 +1,65 @@ +package iotevents + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Input_InputDefinition AWS CloudFormation Resource (AWS::IoTEvents::Input.InputDefinition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-inputdefinition.html +type Input_InputDefinition struct { + + // Attributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-inputdefinition.html#cfn-iotevents-input-inputdefinition-attributes + Attributes []Input_Attribute `json:"Attributes,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Input_InputDefinition) AWSCloudFormationType() string { + return "AWS::IoTEvents::Input.InputDefinition" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_InputDefinition) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_InputDefinition) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_InputDefinition) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_InputDefinition) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_InputDefinition) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_InputDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-iotthingsgraph-flowtemplate.go b/cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate.go similarity index 77% rename from cloudformation/resources/aws-iotthingsgraph-flowtemplate.go rename to cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate.go index d38c5ab141..faf51ff0f4 100644 --- a/cloudformation/resources/aws-iotthingsgraph-flowtemplate.go +++ b/cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate.go @@ -1,15 +1,16 @@ -package resources +package iotthingsgraph import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSIoTThingsGraphFlowTemplate AWS CloudFormation Resource (AWS::IoTThingsGraph::FlowTemplate) +// FlowTemplate AWS CloudFormation Resource (AWS::IoTThingsGraph::FlowTemplate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html -type AWSIoTThingsGraphFlowTemplate struct { +type FlowTemplate struct { // CompatibleNamespaceVersion AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSIoTThingsGraphFlowTemplate struct { // Definition AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html#cfn-iotthingsgraph-flowtemplate-definition - Definition *AWSIoTThingsGraphFlowTemplate_DefinitionDocument `json:"Definition,omitempty"` + Definition *FlowTemplate_DefinitionDocument `json:"Definition,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSIoTThingsGraphFlowTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTThingsGraphFlowTemplate) AWSCloudFormationType() string { +func (r *FlowTemplate) AWSCloudFormationType() string { return "AWS::IoTThingsGraph::FlowTemplate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThingsGraphFlowTemplate) DependsOn() []string { +func (r *FlowTemplate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThingsGraphFlowTemplate) SetDependsOn(dependencies []string) { +func (r *FlowTemplate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThingsGraphFlowTemplate) Metadata() map[string]interface{} { +func (r *FlowTemplate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThingsGraphFlowTemplate) SetMetadata(metadata map[string]interface{}) { +func (r *FlowTemplate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThingsGraphFlowTemplate) DeletionPolicy() policies.DeletionPolicy { +func (r *FlowTemplate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThingsGraphFlowTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FlowTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSIoTThingsGraphFlowTemplate) MarshalJSON() ([]byte, error) { - type Properties AWSIoTThingsGraphFlowTemplate +func (r FlowTemplate) MarshalJSON() ([]byte, error) { + type Properties FlowTemplate return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSIoTThingsGraphFlowTemplate) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSIoTThingsGraphFlowTemplate) UnmarshalJSON(b []byte) error { - type Properties AWSIoTThingsGraphFlowTemplate +func (r *FlowTemplate) UnmarshalJSON(b []byte) error { + type Properties FlowTemplate res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSIoTThingsGraphFlowTemplate) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSIoTThingsGraphFlowTemplate(*res.Properties) + *r = FlowTemplate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate_definitiondocument.go b/cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate_definitiondocument.go new file mode 100644 index 0000000000..8a8a011553 --- /dev/null +++ b/cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate_definitiondocument.go @@ -0,0 +1,70 @@ +package iotthingsgraph + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// FlowTemplate_DefinitionDocument AWS CloudFormation Resource (AWS::IoTThingsGraph::FlowTemplate.DefinitionDocument) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html +type FlowTemplate_DefinitionDocument struct { + + // Language AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html#cfn-iotthingsgraph-flowtemplate-definitiondocument-language + Language string `json:"Language,omitempty"` + + // Text AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html#cfn-iotthingsgraph-flowtemplate-definitiondocument-text + Text string `json:"Text,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *FlowTemplate_DefinitionDocument) AWSCloudFormationType() string { + return "AWS::IoTThingsGraph::FlowTemplate.DefinitionDocument" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FlowTemplate_DefinitionDocument) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *FlowTemplate_DefinitionDocument) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FlowTemplate_DefinitionDocument) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *FlowTemplate_DefinitionDocument) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FlowTemplate_DefinitionDocument) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *FlowTemplate_DefinitionDocument) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesis-stream.go b/cloudformation/kinesis/aws-kinesis-stream.go similarity index 81% rename from cloudformation/resources/aws-kinesis-stream.go rename to cloudformation/kinesis/aws-kinesis-stream.go index 14309557c5..79914d781d 100644 --- a/cloudformation/resources/aws-kinesis-stream.go +++ b/cloudformation/kinesis/aws-kinesis-stream.go @@ -1,15 +1,17 @@ -package resources +package kinesis import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSKinesisStream AWS CloudFormation Resource (AWS::Kinesis::Stream) +// Stream AWS CloudFormation Resource (AWS::Kinesis::Stream) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html -type AWSKinesisStream struct { +type Stream struct { // Name AWS CloudFormation Property // Required: false @@ -29,12 +31,12 @@ type AWSKinesisStream struct { // StreamEncryption AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-streamencryption - StreamEncryption *AWSKinesisStream_StreamEncryption `json:"StreamEncryption,omitempty"` + StreamEncryption *Stream_StreamEncryption `json:"StreamEncryption,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSKinesisStream struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisStream) AWSCloudFormationType() string { +func (r *Stream) AWSCloudFormationType() string { return "AWS::Kinesis::Stream" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisStream) DependsOn() []string { +func (r *Stream) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisStream) SetDependsOn(dependencies []string) { +func (r *Stream) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisStream) Metadata() map[string]interface{} { +func (r *Stream) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisStream) SetMetadata(metadata map[string]interface{}) { +func (r *Stream) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisStream) DeletionPolicy() policies.DeletionPolicy { +func (r *Stream) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisStream) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stream) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisStream) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisStream +func (r Stream) MarshalJSON() ([]byte, error) { + type Properties Stream return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSKinesisStream) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisStream) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisStream +func (r *Stream) UnmarshalJSON(b []byte) error { + type Properties Stream res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSKinesisStream) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisStream(*res.Properties) + *r = Stream(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/kinesis/aws-kinesis-stream_streamencryption.go b/cloudformation/kinesis/aws-kinesis-stream_streamencryption.go new file mode 100644 index 0000000000..59dd7dab1a --- /dev/null +++ b/cloudformation/kinesis/aws-kinesis-stream_streamencryption.go @@ -0,0 +1,70 @@ +package kinesis + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Stream_StreamEncryption AWS CloudFormation Resource (AWS::Kinesis::Stream.StreamEncryption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html +type Stream_StreamEncryption struct { + + // EncryptionType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-encryptiontype + EncryptionType string `json:"EncryptionType,omitempty"` + + // KeyId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-keyid + KeyId string `json:"KeyId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Stream_StreamEncryption) AWSCloudFormationType() string { + return "AWS::Kinesis::Stream.StreamEncryption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stream_StreamEncryption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stream_StreamEncryption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stream_StreamEncryption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stream_StreamEncryption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stream_StreamEncryption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stream_StreamEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesis-streamconsumer.go b/cloudformation/kinesis/aws-kinesis-streamconsumer.go similarity index 79% rename from cloudformation/resources/aws-kinesis-streamconsumer.go rename to cloudformation/kinesis/aws-kinesis-streamconsumer.go index 09e2ecb0a4..fd2a792395 100644 --- a/cloudformation/resources/aws-kinesis-streamconsumer.go +++ b/cloudformation/kinesis/aws-kinesis-streamconsumer.go @@ -1,15 +1,16 @@ -package resources +package kinesis import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSKinesisStreamConsumer AWS CloudFormation Resource (AWS::Kinesis::StreamConsumer) +// StreamConsumer AWS CloudFormation Resource (AWS::Kinesis::StreamConsumer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html -type AWSKinesisStreamConsumer struct { +type StreamConsumer struct { // ConsumerName AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSKinesisStreamConsumer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisStreamConsumer) AWSCloudFormationType() string { +func (r *StreamConsumer) AWSCloudFormationType() string { return "AWS::Kinesis::StreamConsumer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisStreamConsumer) DependsOn() []string { +func (r *StreamConsumer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisStreamConsumer) SetDependsOn(dependencies []string) { +func (r *StreamConsumer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisStreamConsumer) Metadata() map[string]interface{} { +func (r *StreamConsumer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisStreamConsumer) SetMetadata(metadata map[string]interface{}) { +func (r *StreamConsumer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisStreamConsumer) DeletionPolicy() policies.DeletionPolicy { +func (r *StreamConsumer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisStreamConsumer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StreamConsumer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisStreamConsumer) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisStreamConsumer +func (r StreamConsumer) MarshalJSON() ([]byte, error) { + type Properties StreamConsumer return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSKinesisStreamConsumer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisStreamConsumer) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisStreamConsumer +func (r *StreamConsumer) UnmarshalJSON(b []byte) error { + type Properties StreamConsumer res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSKinesisStreamConsumer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisStreamConsumer(*res.Properties) + *r = StreamConsumer(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-kinesisanalytics-application.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application.go similarity index 79% rename from cloudformation/resources/aws-kinesisanalytics-application.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application.go index 51a2f05571..7ac0d8ca7c 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application.go @@ -1,15 +1,16 @@ -package resources +package kinesisanalytics import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSKinesisAnalyticsApplication AWS CloudFormation Resource (AWS::KinesisAnalytics::Application) +// Application AWS CloudFormation Resource (AWS::KinesisAnalytics::Application) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html -type AWSKinesisAnalyticsApplication struct { +type Application struct { // ApplicationCode AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSKinesisAnalyticsApplication struct { // Inputs AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html#cfn-kinesisanalytics-application-inputs - Inputs []AWSKinesisAnalyticsApplication_Input `json:"Inputs,omitempty"` + Inputs []Application_Input `json:"Inputs,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSKinesisAnalyticsApplication struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication) AWSCloudFormationType() string { +func (r *Application) AWSCloudFormationType() string { return "AWS::KinesisAnalytics::Application" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication) DependsOn() []string { +func (r *Application) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication) SetDependsOn(dependencies []string) { +func (r *Application) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication) Metadata() map[string]interface{} { +func (r *Application) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication) SetMetadata(metadata map[string]interface{}) { +func (r *Application) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication) DeletionPolicy() policies.DeletionPolicy { +func (r *Application) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisAnalyticsApplication) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsApplication +func (r Application) MarshalJSON() ([]byte, error) { + type Properties Application return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSKinesisAnalyticsApplication) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisAnalyticsApplication) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisAnalyticsApplication +func (r *Application) UnmarshalJSON(b []byte) error { + type Properties Application res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSKinesisAnalyticsApplication) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisAnalyticsApplication(*res.Properties) + *r = Application(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_csvmappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_csvmappingparameters.go new file mode 100644 index 0000000000..3a131efe87 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_csvmappingparameters.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.CSVMappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html +type Application_CSVMappingParameters struct { + + // RecordColumnDelimiter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html#cfn-kinesisanalytics-application-csvmappingparameters-recordcolumndelimiter + RecordColumnDelimiter string `json:"RecordColumnDelimiter,omitempty"` + + // RecordRowDelimiter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html#cfn-kinesisanalytics-application-csvmappingparameters-recordrowdelimiter + RecordRowDelimiter string `json:"RecordRowDelimiter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_CSVMappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.CSVMappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_CSVMappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_CSVMappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_CSVMappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_input.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_input.go new file mode 100644 index 0000000000..c287530694 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_input.go @@ -0,0 +1,90 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_Input AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.Input) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html +type Application_Input struct { + + // InputParallelism AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputparallelism + InputParallelism *Application_InputParallelism `json:"InputParallelism,omitempty"` + + // InputProcessingConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputprocessingconfiguration + InputProcessingConfiguration *Application_InputProcessingConfiguration `json:"InputProcessingConfiguration,omitempty"` + + // InputSchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputschema + InputSchema *Application_InputSchema `json:"InputSchema,omitempty"` + + // KinesisFirehoseInput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-kinesisfirehoseinput + KinesisFirehoseInput *Application_KinesisFirehoseInput `json:"KinesisFirehoseInput,omitempty"` + + // KinesisStreamsInput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-kinesisstreamsinput + KinesisStreamsInput *Application_KinesisStreamsInput `json:"KinesisStreamsInput,omitempty"` + + // NamePrefix AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-nameprefix + NamePrefix string `json:"NamePrefix,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_Input) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.Input" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_Input) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_Input) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_Input) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_Input) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_Input) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_Input) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputlambdaprocessor.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputlambdaprocessor.go new file mode 100644 index 0000000000..bf17c4fde3 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputlambdaprocessor.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_InputLambdaProcessor AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputLambdaProcessor) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html +type Application_InputLambdaProcessor struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html#cfn-kinesisanalytics-application-inputlambdaprocessor-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // RoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html#cfn-kinesisanalytics-application-inputlambdaprocessor-rolearn + RoleARN string `json:"RoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_InputLambdaProcessor) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.InputLambdaProcessor" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputLambdaProcessor) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputLambdaProcessor) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputLambdaProcessor) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputLambdaProcessor) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputLambdaProcessor) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputLambdaProcessor) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputparallelism.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputparallelism.go new file mode 100644 index 0000000000..d789b6e789 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputparallelism.go @@ -0,0 +1,65 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_InputParallelism AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputParallelism) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputparallelism.html +type Application_InputParallelism struct { + + // Count AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputparallelism.html#cfn-kinesisanalytics-application-inputparallelism-count + Count int `json:"Count,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_InputParallelism) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.InputParallelism" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputParallelism) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputParallelism) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputParallelism) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputParallelism) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputParallelism) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputParallelism) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputprocessingconfiguration.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputprocessingconfiguration.go new file mode 100644 index 0000000000..b8b4fe4ea4 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputprocessingconfiguration.go @@ -0,0 +1,65 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_InputProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputProcessingConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputprocessingconfiguration.html +type Application_InputProcessingConfiguration struct { + + // InputLambdaProcessor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputprocessingconfiguration.html#cfn-kinesisanalytics-application-inputprocessingconfiguration-inputlambdaprocessor + InputLambdaProcessor *Application_InputLambdaProcessor `json:"InputLambdaProcessor,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_InputProcessingConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.InputProcessingConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputProcessingConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputProcessingConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputProcessingConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputschema.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputschema.go new file mode 100644 index 0000000000..2631b5bbaf --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputschema.go @@ -0,0 +1,75 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_InputSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputSchema) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html +type Application_InputSchema struct { + + // RecordColumns AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordcolumns + RecordColumns []Application_RecordColumn `json:"RecordColumns,omitempty"` + + // RecordEncoding AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordencoding + RecordEncoding string `json:"RecordEncoding,omitempty"` + + // RecordFormat AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordformat + RecordFormat *Application_RecordFormat `json:"RecordFormat,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_InputSchema) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.InputSchema" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputSchema) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputSchema) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputSchema) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputSchema) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputSchema) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_jsonmappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_jsonmappingparameters.go new file mode 100644 index 0000000000..b2723793d0 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_jsonmappingparameters.go @@ -0,0 +1,65 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.JSONMappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-jsonmappingparameters.html +type Application_JSONMappingParameters struct { + + // RecordRowPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-jsonmappingparameters.html#cfn-kinesisanalytics-application-jsonmappingparameters-recordrowpath + RecordRowPath string `json:"RecordRowPath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_JSONMappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.JSONMappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_JSONMappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_JSONMappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_JSONMappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisfirehoseinput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisfirehoseinput.go new file mode 100644 index 0000000000..1bf627bd6c --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisfirehoseinput.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_KinesisFirehoseInput AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.KinesisFirehoseInput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html +type Application_KinesisFirehoseInput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html#cfn-kinesisanalytics-application-kinesisfirehoseinput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // RoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html#cfn-kinesisanalytics-application-kinesisfirehoseinput-rolearn + RoleARN string `json:"RoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_KinesisFirehoseInput) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.KinesisFirehoseInput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_KinesisFirehoseInput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_KinesisFirehoseInput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_KinesisFirehoseInput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_KinesisFirehoseInput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_KinesisFirehoseInput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_KinesisFirehoseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisstreamsinput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisstreamsinput.go new file mode 100644 index 0000000000..c5ffa1a8fe --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisstreamsinput.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_KinesisStreamsInput AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.KinesisStreamsInput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html +type Application_KinesisStreamsInput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html#cfn-kinesisanalytics-application-kinesisstreamsinput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // RoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html#cfn-kinesisanalytics-application-kinesisstreamsinput-rolearn + RoleARN string `json:"RoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_KinesisStreamsInput) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.KinesisStreamsInput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_KinesisStreamsInput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_KinesisStreamsInput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_KinesisStreamsInput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_KinesisStreamsInput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_KinesisStreamsInput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_KinesisStreamsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_mappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_mappingparameters.go new file mode 100644 index 0000000000..d68d81dd42 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_mappingparameters.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.MappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html +type Application_MappingParameters struct { + + // CSVMappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html#cfn-kinesisanalytics-application-mappingparameters-csvmappingparameters + CSVMappingParameters *Application_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` + + // JSONMappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html#cfn-kinesisanalytics-application-mappingparameters-jsonmappingparameters + JSONMappingParameters *Application_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_MappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.MappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_MappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_MappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_MappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_MappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_MappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordcolumn.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordcolumn.go new file mode 100644 index 0000000000..b95671dedb --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordcolumn.go @@ -0,0 +1,75 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.RecordColumn) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html +type Application_RecordColumn struct { + + // Mapping AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-mapping + Mapping string `json:"Mapping,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-name + Name string `json:"Name,omitempty"` + + // SqlType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-sqltype + SqlType string `json:"SqlType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_RecordColumn) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.RecordColumn" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_RecordColumn) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_RecordColumn) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_RecordColumn) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_RecordColumn) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_RecordColumn) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordformat.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordformat.go new file mode 100644 index 0000000000..7629da93e6 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordformat.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.RecordFormat) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html +type Application_RecordFormat struct { + + // MappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html#cfn-kinesisanalytics-application-recordformat-mappingparameters + MappingParameters *Application_MappingParameters `json:"MappingParameters,omitempty"` + + // RecordFormatType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html#cfn-kinesisanalytics-application-recordformat-recordformattype + RecordFormatType string `json:"RecordFormatType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_RecordFormat) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::Application.RecordFormat" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_RecordFormat) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_RecordFormat) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_RecordFormat) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_RecordFormat) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_RecordFormat) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput.go similarity index 75% rename from cloudformation/resources/aws-kinesisanalytics-applicationoutput.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput.go index ccd52f0083..7cd0e0389b 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput.go @@ -1,15 +1,16 @@ -package resources +package kinesisanalytics import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSKinesisAnalyticsApplicationOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput) +// ApplicationOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html -type AWSKinesisAnalyticsApplicationOutput struct { +type ApplicationOutput struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSKinesisAnalyticsApplicationOutput struct { // Output AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html#cfn-kinesisanalytics-applicationoutput-output - Output *AWSKinesisAnalyticsApplicationOutput_Output `json:"Output,omitempty"` + Output *ApplicationOutput_Output `json:"Output,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSKinesisAnalyticsApplicationOutput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput) AWSCloudFormationType() string { +func (r *ApplicationOutput) AWSCloudFormationType() string { return "AWS::KinesisAnalytics::ApplicationOutput" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput) DependsOn() []string { +func (r *ApplicationOutput) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput) SetDependsOn(dependencies []string) { +func (r *ApplicationOutput) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput) Metadata() map[string]interface{} { +func (r *ApplicationOutput) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput) SetMetadata(metadata map[string]interface{}) { +func (r *ApplicationOutput) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput) DeletionPolicy() policies.DeletionPolicy { +func (r *ApplicationOutput) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisAnalyticsApplicationOutput) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsApplicationOutput +func (r ApplicationOutput) MarshalJSON() ([]byte, error) { + type Properties ApplicationOutput return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSKinesisAnalyticsApplicationOutput) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisAnalyticsApplicationOutput) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisAnalyticsApplicationOutput +func (r *ApplicationOutput) UnmarshalJSON(b []byte) error { + type Properties ApplicationOutput res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSKinesisAnalyticsApplicationOutput) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisAnalyticsApplicationOutput(*res.Properties) + *r = ApplicationOutput(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_destinationschema.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_destinationschema.go new file mode 100644 index 0000000000..2604cb919b --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_destinationschema.go @@ -0,0 +1,65 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_DestinationSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.DestinationSchema) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-destinationschema.html +type ApplicationOutput_DestinationSchema struct { + + // RecordFormatType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-destinationschema.html#cfn-kinesisanalytics-applicationoutput-destinationschema-recordformattype + RecordFormatType string `json:"RecordFormatType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_DestinationSchema) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationOutput.DestinationSchema" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_DestinationSchema) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_DestinationSchema) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_DestinationSchema) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_DestinationSchema) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_DestinationSchema) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_DestinationSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go new file mode 100644 index 0000000000..a49d65ad7c --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_KinesisFirehoseOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.KinesisFirehoseOutput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html +type ApplicationOutput_KinesisFirehoseOutput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisfirehoseoutput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // RoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisfirehoseoutput-rolearn + RoleARN string `json:"RoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_KinesisFirehoseOutput) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationOutput.KinesisFirehoseOutput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_KinesisFirehoseOutput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_KinesisFirehoseOutput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_KinesisFirehoseOutput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_KinesisFirehoseOutput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_KinesisFirehoseOutput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_KinesisFirehoseOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go new file mode 100644 index 0000000000..66403d56ad --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_KinesisStreamsOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.KinesisStreamsOutput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html +type ApplicationOutput_KinesisStreamsOutput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisstreamsoutput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // RoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisstreamsoutput-rolearn + RoleARN string `json:"RoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_KinesisStreamsOutput) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationOutput.KinesisStreamsOutput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_KinesisStreamsOutput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_KinesisStreamsOutput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_KinesisStreamsOutput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_KinesisStreamsOutput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_KinesisStreamsOutput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_KinesisStreamsOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_lambdaoutput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_lambdaoutput.go new file mode 100644 index 0000000000..7855af75cb --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_lambdaoutput.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_LambdaOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.LambdaOutput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html +type ApplicationOutput_LambdaOutput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html#cfn-kinesisanalytics-applicationoutput-lambdaoutput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // RoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html#cfn-kinesisanalytics-applicationoutput-lambdaoutput-rolearn + RoleARN string `json:"RoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_LambdaOutput) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationOutput.LambdaOutput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_LambdaOutput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_LambdaOutput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_LambdaOutput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_LambdaOutput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_LambdaOutput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_LambdaOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_output.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_output.go new file mode 100644 index 0000000000..4f0b786b4f --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_output.go @@ -0,0 +1,85 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_Output AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.Output) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html +type ApplicationOutput_Output struct { + + // DestinationSchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-destinationschema + DestinationSchema *ApplicationOutput_DestinationSchema `json:"DestinationSchema,omitempty"` + + // KinesisFirehoseOutput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-kinesisfirehoseoutput + KinesisFirehoseOutput *ApplicationOutput_KinesisFirehoseOutput `json:"KinesisFirehoseOutput,omitempty"` + + // KinesisStreamsOutput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-kinesisstreamsoutput + KinesisStreamsOutput *ApplicationOutput_KinesisStreamsOutput `json:"KinesisStreamsOutput,omitempty"` + + // LambdaOutput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-lambdaoutput + LambdaOutput *ApplicationOutput_LambdaOutput `json:"LambdaOutput,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_Output) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationOutput.Output" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_Output) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_Output) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_Output) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_Output) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_Output) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_Output) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource.go new file mode 100644 index 0000000000..fbfe17bfb4 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource.go @@ -0,0 +1,129 @@ +package kinesisanalytics + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html +type ApplicationReferenceDataSource struct { + + // ApplicationName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-applicationname + ApplicationName string `json:"ApplicationName,omitempty"` + + // ReferenceDataSource AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource + ReferenceDataSource *ApplicationReferenceDataSource_ReferenceDataSource `json:"ReferenceDataSource,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ApplicationReferenceDataSource) MarshalJSON() ([]byte, error) { + type Properties ApplicationReferenceDataSource + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *ApplicationReferenceDataSource) UnmarshalJSON(b []byte) error { + type Properties ApplicationReferenceDataSource + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = ApplicationReferenceDataSource(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go new file mode 100644 index 0000000000..0963f60349 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.CSVMappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html +type ApplicationReferenceDataSource_CSVMappingParameters struct { + + // RecordColumnDelimiter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-csvmappingparameters-recordcolumndelimiter + RecordColumnDelimiter string `json:"RecordColumnDelimiter,omitempty"` + + // RecordRowDelimiter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-csvmappingparameters-recordrowdelimiter + RecordRowDelimiter string `json:"RecordRowDelimiter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_CSVMappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.CSVMappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go new file mode 100644 index 0000000000..2841a91a6d --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go @@ -0,0 +1,65 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.JSONMappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters.html +type ApplicationReferenceDataSource_JSONMappingParameters struct { + + // RecordRowPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters-recordrowpath + RecordRowPath string `json:"RecordRowPath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_JSONMappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.JSONMappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go new file mode 100644 index 0000000000..b50fe4f148 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.MappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html +type ApplicationReferenceDataSource_MappingParameters struct { + + // CSVMappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-mappingparameters-csvmappingparameters + CSVMappingParameters *ApplicationReferenceDataSource_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` + + // JSONMappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-mappingparameters-jsonmappingparameters + JSONMappingParameters *ApplicationReferenceDataSource_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_MappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.MappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_MappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_MappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_MappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_MappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_MappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go new file mode 100644 index 0000000000..caefa75a5b --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go @@ -0,0 +1,75 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordColumn) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html +type ApplicationReferenceDataSource_RecordColumn struct { + + // Mapping AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-mapping + Mapping string `json:"Mapping,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-name + Name string `json:"Name,omitempty"` + + // SqlType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-sqltype + SqlType string `json:"SqlType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_RecordColumn) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordColumn" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_RecordColumn) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_RecordColumn) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_RecordColumn) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_RecordColumn) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_RecordColumn) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go new file mode 100644 index 0000000000..207594ccc4 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go @@ -0,0 +1,70 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordFormat) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html +type ApplicationReferenceDataSource_RecordFormat struct { + + // MappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html#cfn-kinesisanalytics-applicationreferencedatasource-recordformat-mappingparameters + MappingParameters *ApplicationReferenceDataSource_MappingParameters `json:"MappingParameters,omitempty"` + + // RecordFormatType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html#cfn-kinesisanalytics-applicationreferencedatasource-recordformat-recordformattype + RecordFormatType string `json:"RecordFormatType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_RecordFormat) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordFormat" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_RecordFormat) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_RecordFormat) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_RecordFormat) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_RecordFormat) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_RecordFormat) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go new file mode 100644 index 0000000000..8d62488ce2 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go @@ -0,0 +1,75 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceDataSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html +type ApplicationReferenceDataSource_ReferenceDataSource struct { + + // ReferenceSchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-referenceschema + ReferenceSchema *ApplicationReferenceDataSource_ReferenceSchema `json:"ReferenceSchema,omitempty"` + + // S3ReferenceDataSource AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-s3referencedatasource + S3ReferenceDataSource *ApplicationReferenceDataSource_S3ReferenceDataSource `json:"S3ReferenceDataSource,omitempty"` + + // TableName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-tablename + TableName string `json:"TableName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_ReferenceDataSource) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceDataSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go new file mode 100644 index 0000000000..e0ab18ebdc --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go @@ -0,0 +1,75 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_ReferenceSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceSchema) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html +type ApplicationReferenceDataSource_ReferenceSchema struct { + + // RecordColumns AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordcolumns + RecordColumns []ApplicationReferenceDataSource_RecordColumn `json:"RecordColumns,omitempty"` + + // RecordEncoding AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordencoding + RecordEncoding string `json:"RecordEncoding,omitempty"` + + // RecordFormat AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordformat + RecordFormat *ApplicationReferenceDataSource_RecordFormat `json:"RecordFormat,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_ReferenceSchema) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceSchema" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go new file mode 100644 index 0000000000..7bbc012b41 --- /dev/null +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go @@ -0,0 +1,75 @@ +package kinesisanalytics + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_S3ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.S3ReferenceDataSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html +type ApplicationReferenceDataSource_S3ReferenceDataSource struct { + + // BucketARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-bucketarn + BucketARN string `json:"BucketARN,omitempty"` + + // FileKey AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-filekey + FileKey string `json:"FileKey,omitempty"` + + // ReferenceRoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-referencerolearn + ReferenceRoleARN string `json:"ReferenceRoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) AWSCloudFormationType() string { + return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.S3ReferenceDataSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application.go similarity index 79% rename from cloudformation/resources/aws-kinesisanalyticsv2-application.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application.go index 2fb56ea697..8045c5592f 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application.go @@ -1,20 +1,21 @@ -package resources +package kinesisanalyticsv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSKinesisAnalyticsV2Application AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application) +// Application AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html -type AWSKinesisAnalyticsV2Application struct { +type Application struct { // ApplicationConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-applicationconfiguration - ApplicationConfiguration *AWSKinesisAnalyticsV2Application_ApplicationConfiguration `json:"ApplicationConfiguration,omitempty"` + ApplicationConfiguration *Application_ApplicationConfiguration `json:"ApplicationConfiguration,omitempty"` // ApplicationDescription AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSKinesisAnalyticsV2Application struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application) AWSCloudFormationType() string { +func (r *Application) AWSCloudFormationType() string { return "AWS::KinesisAnalyticsV2::Application" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application) DependsOn() []string { +func (r *Application) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application) SetDependsOn(dependencies []string) { +func (r *Application) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application) Metadata() map[string]interface{} { +func (r *Application) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application) SetMetadata(metadata map[string]interface{}) { +func (r *Application) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application) DeletionPolicy() policies.DeletionPolicy { +func (r *Application) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisAnalyticsV2Application) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsV2Application +func (r Application) MarshalJSON() ([]byte, error) { + type Properties Application return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSKinesisAnalyticsV2Application) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisAnalyticsV2Application) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisAnalyticsV2Application +func (r *Application) UnmarshalJSON(b []byte) error { + type Properties Application res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSKinesisAnalyticsV2Application) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisAnalyticsV2Application(*res.Properties) + *r = Application(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go new file mode 100644 index 0000000000..4a5afaeddd --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_ApplicationCodeConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationCodeConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html +type Application_ApplicationCodeConfiguration struct { + + // CodeContent AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html#cfn-kinesisanalyticsv2-application-applicationcodeconfiguration-codecontent + CodeContent *Application_CodeContent `json:"CodeContent,omitempty"` + + // CodeContentType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html#cfn-kinesisanalyticsv2-application-applicationcodeconfiguration-codecontenttype + CodeContentType string `json:"CodeContentType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_ApplicationCodeConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.ApplicationCodeConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationCodeConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationCodeConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationCodeConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationCodeConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationCodeConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationCodeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationconfiguration.go new file mode 100644 index 0000000000..822bd60724 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationconfiguration.go @@ -0,0 +1,85 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_ApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html +type Application_ApplicationConfiguration struct { + + // ApplicationCodeConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-applicationcodeconfiguration + ApplicationCodeConfiguration *Application_ApplicationCodeConfiguration `json:"ApplicationCodeConfiguration,omitempty"` + + // ApplicationSnapshotConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-applicationsnapshotconfiguration + ApplicationSnapshotConfiguration *Application_ApplicationSnapshotConfiguration `json:"ApplicationSnapshotConfiguration,omitempty"` + + // EnvironmentProperties AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-environmentproperties + EnvironmentProperties *Application_EnvironmentProperties `json:"EnvironmentProperties,omitempty"` + + // FlinkApplicationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-flinkapplicationconfiguration + FlinkApplicationConfiguration *Application_FlinkApplicationConfiguration `json:"FlinkApplicationConfiguration,omitempty"` + + // SqlApplicationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-sqlapplicationconfiguration + SqlApplicationConfiguration *Application_SqlApplicationConfiguration `json:"SqlApplicationConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_ApplicationConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.ApplicationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go new file mode 100644 index 0000000000..a4de2c4bc9 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_ApplicationSnapshotConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationSnapshotConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationsnapshotconfiguration.html +type Application_ApplicationSnapshotConfiguration struct { + + // SnapshotsEnabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationsnapshotconfiguration.html#cfn-kinesisanalyticsv2-application-applicationsnapshotconfiguration-snapshotsenabled + SnapshotsEnabled bool `json:"SnapshotsEnabled"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_ApplicationSnapshotConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.ApplicationSnapshotConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationSnapshotConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationSnapshotConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationSnapshotConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationSnapshotConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationSnapshotConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationSnapshotConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_checkpointconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_checkpointconfiguration.go similarity index 75% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_checkpointconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_checkpointconfiguration.go index 7d3343a94e..8283ff00e4 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_checkpointconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_checkpointconfiguration.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_CheckpointConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.CheckpointConfiguration) +// Application_CheckpointConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.CheckpointConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html -type AWSKinesisAnalyticsV2Application_CheckpointConfiguration struct { +type Application_CheckpointConfiguration struct { // CheckpointInterval AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSKinesisAnalyticsV2Application_CheckpointConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_CheckpointConfiguration) AWSCloudFormationType() string { +func (r *Application_CheckpointConfiguration) AWSCloudFormationType() string { return "AWS::KinesisAnalyticsV2::Application.CheckpointConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_CheckpointConfiguration) DependsOn() []string { +func (r *Application_CheckpointConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_CheckpointConfiguration) SetDependsOn(dependencies []string) { +func (r *Application_CheckpointConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_CheckpointConfiguration) Metadata() map[string]interface{} { +func (r *Application_CheckpointConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_CheckpointConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Application_CheckpointConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_CheckpointConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Application_CheckpointConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_CheckpointConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_CheckpointConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_codecontent.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_codecontent.go new file mode 100644 index 0000000000..eb4449583a --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_codecontent.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_CodeContent AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.CodeContent) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html +type Application_CodeContent struct { + + // S3ContentLocation AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-s3contentlocation + S3ContentLocation *Application_S3ContentLocation `json:"S3ContentLocation,omitempty"` + + // TextContent AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-textcontent + TextContent string `json:"TextContent,omitempty"` + + // ZipFileContent AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-zipfilecontent + ZipFileContent string `json:"ZipFileContent,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_CodeContent) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.CodeContent" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_CodeContent) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_CodeContent) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_CodeContent) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_CodeContent) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_CodeContent) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_CodeContent) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_csvmappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_csvmappingparameters.go new file mode 100644 index 0000000000..b624ab5ca4 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_csvmappingparameters.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.CSVMappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html +type Application_CSVMappingParameters struct { + + // RecordColumnDelimiter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html#cfn-kinesisanalyticsv2-application-csvmappingparameters-recordcolumndelimiter + RecordColumnDelimiter string `json:"RecordColumnDelimiter,omitempty"` + + // RecordRowDelimiter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html#cfn-kinesisanalyticsv2-application-csvmappingparameters-recordrowdelimiter + RecordRowDelimiter string `json:"RecordRowDelimiter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_CSVMappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.CSVMappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_CSVMappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_CSVMappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_CSVMappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_environmentproperties.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_environmentproperties.go new file mode 100644 index 0000000000..bbb459e7f7 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_environmentproperties.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_EnvironmentProperties AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.EnvironmentProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-environmentproperties.html +type Application_EnvironmentProperties struct { + + // PropertyGroups AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-environmentproperties.html#cfn-kinesisanalyticsv2-application-environmentproperties-propertygroups + PropertyGroups []Application_PropertyGroup `json:"PropertyGroups,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_EnvironmentProperties) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.EnvironmentProperties" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_EnvironmentProperties) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_EnvironmentProperties) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_EnvironmentProperties) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_EnvironmentProperties) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_EnvironmentProperties) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_EnvironmentProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go new file mode 100644 index 0000000000..60884be562 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_FlinkApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.FlinkApplicationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html +type Application_FlinkApplicationConfiguration struct { + + // CheckpointConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-checkpointconfiguration + CheckpointConfiguration *Application_CheckpointConfiguration `json:"CheckpointConfiguration,omitempty"` + + // MonitoringConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-monitoringconfiguration + MonitoringConfiguration *Application_MonitoringConfiguration `json:"MonitoringConfiguration,omitempty"` + + // ParallelismConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-parallelismconfiguration + ParallelismConfiguration *Application_ParallelismConfiguration `json:"ParallelismConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_FlinkApplicationConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.FlinkApplicationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_FlinkApplicationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_FlinkApplicationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_FlinkApplicationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_FlinkApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_FlinkApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_FlinkApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_input.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_input.go new file mode 100644 index 0000000000..6e9bcec9f3 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_input.go @@ -0,0 +1,90 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_Input AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.Input) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html +type Application_Input struct { + + // InputParallelism AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputparallelism + InputParallelism *Application_InputParallelism `json:"InputParallelism,omitempty"` + + // InputProcessingConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputprocessingconfiguration + InputProcessingConfiguration *Application_InputProcessingConfiguration `json:"InputProcessingConfiguration,omitempty"` + + // InputSchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputschema + InputSchema *Application_InputSchema `json:"InputSchema,omitempty"` + + // KinesisFirehoseInput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-kinesisfirehoseinput + KinesisFirehoseInput *Application_KinesisFirehoseInput `json:"KinesisFirehoseInput,omitempty"` + + // KinesisStreamsInput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-kinesisstreamsinput + KinesisStreamsInput *Application_KinesisStreamsInput `json:"KinesisStreamsInput,omitempty"` + + // NamePrefix AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-nameprefix + NamePrefix string `json:"NamePrefix,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_Input) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.Input" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_Input) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_Input) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_Input) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_Input) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_Input) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_Input) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go new file mode 100644 index 0000000000..aad5106a19 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_InputLambdaProcessor AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputLambdaProcessor) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputlambdaprocessor.html +type Application_InputLambdaProcessor struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputlambdaprocessor.html#cfn-kinesisanalyticsv2-application-inputlambdaprocessor-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_InputLambdaProcessor) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.InputLambdaProcessor" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputLambdaProcessor) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputLambdaProcessor) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputLambdaProcessor) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputLambdaProcessor) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputLambdaProcessor) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputLambdaProcessor) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputparallelism.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputparallelism.go new file mode 100644 index 0000000000..3b9d8954c0 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputparallelism.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_InputParallelism AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputParallelism) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputparallelism.html +type Application_InputParallelism struct { + + // Count AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputparallelism.html#cfn-kinesisanalyticsv2-application-inputparallelism-count + Count int `json:"Count,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_InputParallelism) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.InputParallelism" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputParallelism) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputParallelism) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputParallelism) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputParallelism) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputParallelism) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputParallelism) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go new file mode 100644 index 0000000000..e20990f8e0 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_InputProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputProcessingConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputprocessingconfiguration.html +type Application_InputProcessingConfiguration struct { + + // InputLambdaProcessor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputprocessingconfiguration.html#cfn-kinesisanalyticsv2-application-inputprocessingconfiguration-inputlambdaprocessor + InputLambdaProcessor *Application_InputLambdaProcessor `json:"InputLambdaProcessor,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_InputProcessingConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.InputProcessingConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputProcessingConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputProcessingConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputProcessingConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputschema.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputschema.go new file mode 100644 index 0000000000..ae4231e6d6 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputschema.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_InputSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputSchema) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html +type Application_InputSchema struct { + + // RecordColumns AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordcolumns + RecordColumns []Application_RecordColumn `json:"RecordColumns,omitempty"` + + // RecordEncoding AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordencoding + RecordEncoding string `json:"RecordEncoding,omitempty"` + + // RecordFormat AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordformat + RecordFormat *Application_RecordFormat `json:"RecordFormat,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_InputSchema) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.InputSchema" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputSchema) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_InputSchema) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputSchema) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_InputSchema) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputSchema) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_InputSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_jsonmappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_jsonmappingparameters.go new file mode 100644 index 0000000000..2b1879ed12 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_jsonmappingparameters.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.JSONMappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-jsonmappingparameters.html +type Application_JSONMappingParameters struct { + + // RecordRowPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-jsonmappingparameters.html#cfn-kinesisanalyticsv2-application-jsonmappingparameters-recordrowpath + RecordRowPath string `json:"RecordRowPath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_JSONMappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.JSONMappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_JSONMappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_JSONMappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_JSONMappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go new file mode 100644 index 0000000000..a2f99e34c9 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_KinesisFirehoseInput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.KinesisFirehoseInput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisfirehoseinput.html +type Application_KinesisFirehoseInput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisfirehoseinput.html#cfn-kinesisanalyticsv2-application-kinesisfirehoseinput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_KinesisFirehoseInput) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.KinesisFirehoseInput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_KinesisFirehoseInput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_KinesisFirehoseInput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_KinesisFirehoseInput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_KinesisFirehoseInput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_KinesisFirehoseInput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_KinesisFirehoseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go new file mode 100644 index 0000000000..b5d5253948 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_KinesisStreamsInput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.KinesisStreamsInput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisstreamsinput.html +type Application_KinesisStreamsInput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisstreamsinput.html#cfn-kinesisanalyticsv2-application-kinesisstreamsinput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_KinesisStreamsInput) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.KinesisStreamsInput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_KinesisStreamsInput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_KinesisStreamsInput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_KinesisStreamsInput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_KinesisStreamsInput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_KinesisStreamsInput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_KinesisStreamsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_mappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_mappingparameters.go new file mode 100644 index 0000000000..414fb06e0d --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_mappingparameters.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.MappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html +type Application_MappingParameters struct { + + // CSVMappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html#cfn-kinesisanalyticsv2-application-mappingparameters-csvmappingparameters + CSVMappingParameters *Application_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` + + // JSONMappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html#cfn-kinesisanalyticsv2-application-mappingparameters-jsonmappingparameters + JSONMappingParameters *Application_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_MappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.MappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_MappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_MappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_MappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_MappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_MappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_monitoringconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_monitoringconfiguration.go new file mode 100644 index 0000000000..482346de3d --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_monitoringconfiguration.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_MonitoringConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.MonitoringConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html +type Application_MonitoringConfiguration struct { + + // ConfigurationType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-configurationtype + ConfigurationType string `json:"ConfigurationType,omitempty"` + + // LogLevel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-loglevel + LogLevel string `json:"LogLevel,omitempty"` + + // MetricsLevel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-metricslevel + MetricsLevel string `json:"MetricsLevel,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_MonitoringConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.MonitoringConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_MonitoringConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_MonitoringConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_MonitoringConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_MonitoringConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_MonitoringConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_MonitoringConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_parallelismconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_parallelismconfiguration.go similarity index 75% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_parallelismconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_parallelismconfiguration.go index 74a425dbc9..b65400ade6 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_parallelismconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_parallelismconfiguration.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_ParallelismConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ParallelismConfiguration) +// Application_ParallelismConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ParallelismConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html -type AWSKinesisAnalyticsV2Application_ParallelismConfiguration struct { +type Application_ParallelismConfiguration struct { // AutoScalingEnabled AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSKinesisAnalyticsV2Application_ParallelismConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_ParallelismConfiguration) AWSCloudFormationType() string { +func (r *Application_ParallelismConfiguration) AWSCloudFormationType() string { return "AWS::KinesisAnalyticsV2::Application.ParallelismConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_ParallelismConfiguration) DependsOn() []string { +func (r *Application_ParallelismConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_ParallelismConfiguration) SetDependsOn(dependencies []string) { +func (r *Application_ParallelismConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_ParallelismConfiguration) Metadata() map[string]interface{} { +func (r *Application_ParallelismConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_ParallelismConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Application_ParallelismConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_ParallelismConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Application_ParallelismConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_ParallelismConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_ParallelismConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_propertygroup.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_propertygroup.go new file mode 100644 index 0000000000..67b22078ac --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_propertygroup.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_PropertyGroup AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.PropertyGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html +type Application_PropertyGroup struct { + + // PropertyGroupId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html#cfn-kinesisanalyticsv2-application-propertygroup-propertygroupid + PropertyGroupId string `json:"PropertyGroupId,omitempty"` + + // PropertyMap AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html#cfn-kinesisanalyticsv2-application-propertygroup-propertymap + PropertyMap interface{} `json:"PropertyMap,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_PropertyGroup) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.PropertyGroup" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_PropertyGroup) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_PropertyGroup) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_PropertyGroup) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_PropertyGroup) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_PropertyGroup) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_PropertyGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordcolumn.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordcolumn.go new file mode 100644 index 0000000000..3cb1635bd8 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordcolumn.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.RecordColumn) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html +type Application_RecordColumn struct { + + // Mapping AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-mapping + Mapping string `json:"Mapping,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-name + Name string `json:"Name,omitempty"` + + // SqlType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-sqltype + SqlType string `json:"SqlType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_RecordColumn) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.RecordColumn" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_RecordColumn) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_RecordColumn) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_RecordColumn) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_RecordColumn) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_RecordColumn) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordformat.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordformat.go new file mode 100644 index 0000000000..b7157fa045 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordformat.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.RecordFormat) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html +type Application_RecordFormat struct { + + // MappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html#cfn-kinesisanalyticsv2-application-recordformat-mappingparameters + MappingParameters *Application_MappingParameters `json:"MappingParameters,omitempty"` + + // RecordFormatType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html#cfn-kinesisanalyticsv2-application-recordformat-recordformattype + RecordFormatType string `json:"RecordFormatType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_RecordFormat) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.RecordFormat" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_RecordFormat) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_RecordFormat) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_RecordFormat) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_RecordFormat) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_RecordFormat) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_s3contentlocation.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_s3contentlocation.go new file mode 100644 index 0000000000..a184875d91 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_s3contentlocation.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_S3ContentLocation AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.S3ContentLocation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html +type Application_S3ContentLocation struct { + + // BucketARN AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-bucketarn + BucketARN string `json:"BucketARN,omitempty"` + + // FileKey AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-filekey + FileKey string `json:"FileKey,omitempty"` + + // ObjectVersion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-objectversion + ObjectVersion string `json:"ObjectVersion,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_S3ContentLocation) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.S3ContentLocation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_S3ContentLocation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_S3ContentLocation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_S3ContentLocation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_S3ContentLocation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_S3ContentLocation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_S3ContentLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go new file mode 100644 index 0000000000..2bb201f988 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_SqlApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.SqlApplicationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-sqlapplicationconfiguration.html +type Application_SqlApplicationConfiguration struct { + + // Inputs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-sqlapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-sqlapplicationconfiguration-inputs + Inputs []Application_Input `json:"Inputs,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_SqlApplicationConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::Application.SqlApplicationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_SqlApplicationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_SqlApplicationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_SqlApplicationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_SqlApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_SqlApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_SqlApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go new file mode 100644 index 0000000000..9ebc030724 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go @@ -0,0 +1,129 @@ +package kinesisanalyticsv2 + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationCloudWatchLoggingOption AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html +type ApplicationCloudWatchLoggingOption struct { + + // ApplicationName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-applicationname + ApplicationName string `json:"ApplicationName,omitempty"` + + // CloudWatchLoggingOption AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption + CloudWatchLoggingOption *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption `json:"CloudWatchLoggingOption,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationCloudWatchLoggingOption) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationCloudWatchLoggingOption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationCloudWatchLoggingOption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationCloudWatchLoggingOption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationCloudWatchLoggingOption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationCloudWatchLoggingOption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationCloudWatchLoggingOption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ApplicationCloudWatchLoggingOption) MarshalJSON() ([]byte, error) { + type Properties ApplicationCloudWatchLoggingOption + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *ApplicationCloudWatchLoggingOption) UnmarshalJSON(b []byte) error { + type Properties ApplicationCloudWatchLoggingOption + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = ApplicationCloudWatchLoggingOption(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go new file mode 100644 index 0000000000..1bb1f6043c --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption.CloudWatchLoggingOption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption.html +type ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption struct { + + // LogStreamARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption-logstreamarn + LogStreamARN string `json:"LogStreamARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption.CloudWatchLoggingOption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput.go similarity index 75% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput.go index a55acdc091..889eab8c42 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput.go @@ -1,15 +1,16 @@ -package resources +package kinesisanalyticsv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSKinesisAnalyticsV2ApplicationOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput) +// ApplicationOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html -type AWSKinesisAnalyticsV2ApplicationOutput struct { +type ApplicationOutput struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSKinesisAnalyticsV2ApplicationOutput struct { // Output AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html#cfn-kinesisanalyticsv2-applicationoutput-output - Output *AWSKinesisAnalyticsV2ApplicationOutput_Output `json:"Output,omitempty"` + Output *ApplicationOutput_Output `json:"Output,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSKinesisAnalyticsV2ApplicationOutput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput) AWSCloudFormationType() string { +func (r *ApplicationOutput) AWSCloudFormationType() string { return "AWS::KinesisAnalyticsV2::ApplicationOutput" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput) DependsOn() []string { +func (r *ApplicationOutput) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput) SetDependsOn(dependencies []string) { +func (r *ApplicationOutput) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput) Metadata() map[string]interface{} { +func (r *ApplicationOutput) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput) SetMetadata(metadata map[string]interface{}) { +func (r *ApplicationOutput) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput) DeletionPolicy() policies.DeletionPolicy { +func (r *ApplicationOutput) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisAnalyticsV2ApplicationOutput) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsV2ApplicationOutput +func (r ApplicationOutput) MarshalJSON() ([]byte, error) { + type Properties ApplicationOutput return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSKinesisAnalyticsV2ApplicationOutput) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisAnalyticsV2ApplicationOutput) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisAnalyticsV2ApplicationOutput +func (r *ApplicationOutput) UnmarshalJSON(b []byte) error { + type Properties ApplicationOutput res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSKinesisAnalyticsV2ApplicationOutput) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisAnalyticsV2ApplicationOutput(*res.Properties) + *r = ApplicationOutput(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go new file mode 100644 index 0000000000..3bc7c0b8dc --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_DestinationSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.DestinationSchema) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-destinationschema.html +type ApplicationOutput_DestinationSchema struct { + + // RecordFormatType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-destinationschema.html#cfn-kinesisanalyticsv2-applicationoutput-destinationschema-recordformattype + RecordFormatType string `json:"RecordFormatType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_DestinationSchema) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationOutput.DestinationSchema" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_DestinationSchema) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_DestinationSchema) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_DestinationSchema) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_DestinationSchema) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_DestinationSchema) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_DestinationSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go new file mode 100644 index 0000000000..4ca03ff58b --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_KinesisFirehoseOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisFirehoseOutput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput.html +type ApplicationOutput_KinesisFirehoseOutput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_KinesisFirehoseOutput) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisFirehoseOutput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_KinesisFirehoseOutput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_KinesisFirehoseOutput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_KinesisFirehoseOutput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_KinesisFirehoseOutput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_KinesisFirehoseOutput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_KinesisFirehoseOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go new file mode 100644 index 0000000000..81590dbf08 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_KinesisStreamsOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisStreamsOutput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput.html +type ApplicationOutput_KinesisStreamsOutput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_KinesisStreamsOutput) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisStreamsOutput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_KinesisStreamsOutput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_KinesisStreamsOutput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_KinesisStreamsOutput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_KinesisStreamsOutput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_KinesisStreamsOutput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_KinesisStreamsOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go new file mode 100644 index 0000000000..069f25eee4 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_LambdaOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.LambdaOutput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-lambdaoutput.html +type ApplicationOutput_LambdaOutput struct { + + // ResourceARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-lambdaoutput.html#cfn-kinesisanalyticsv2-applicationoutput-lambdaoutput-resourcearn + ResourceARN string `json:"ResourceARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_LambdaOutput) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationOutput.LambdaOutput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_LambdaOutput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_LambdaOutput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_LambdaOutput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_LambdaOutput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_LambdaOutput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_LambdaOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_output.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_output.go new file mode 100644 index 0000000000..7c1ee0f2ac --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_output.go @@ -0,0 +1,85 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationOutput_Output AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.Output) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html +type ApplicationOutput_Output struct { + + // DestinationSchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-destinationschema + DestinationSchema *ApplicationOutput_DestinationSchema `json:"DestinationSchema,omitempty"` + + // KinesisFirehoseOutput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-kinesisfirehoseoutput + KinesisFirehoseOutput *ApplicationOutput_KinesisFirehoseOutput `json:"KinesisFirehoseOutput,omitempty"` + + // KinesisStreamsOutput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-kinesisstreamsoutput + KinesisStreamsOutput *ApplicationOutput_KinesisStreamsOutput `json:"KinesisStreamsOutput,omitempty"` + + // LambdaOutput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-lambdaoutput + LambdaOutput *ApplicationOutput_LambdaOutput `json:"LambdaOutput,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationOutput_Output) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationOutput.Output" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_Output) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationOutput_Output) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_Output) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationOutput_Output) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_Output) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationOutput_Output) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource.go new file mode 100644 index 0000000000..a40519545f --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource.go @@ -0,0 +1,129 @@ +package kinesisanalyticsv2 + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html +type ApplicationReferenceDataSource struct { + + // ApplicationName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-applicationname + ApplicationName string `json:"ApplicationName,omitempty"` + + // ReferenceDataSource AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource + ReferenceDataSource *ApplicationReferenceDataSource_ReferenceDataSource `json:"ReferenceDataSource,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ApplicationReferenceDataSource) MarshalJSON() ([]byte, error) { + type Properties ApplicationReferenceDataSource + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *ApplicationReferenceDataSource) UnmarshalJSON(b []byte) error { + type Properties ApplicationReferenceDataSource + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = ApplicationReferenceDataSource(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go new file mode 100644 index 0000000000..742c61dd3c --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.CSVMappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html +type ApplicationReferenceDataSource_CSVMappingParameters struct { + + // RecordColumnDelimiter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters-recordcolumndelimiter + RecordColumnDelimiter string `json:"RecordColumnDelimiter,omitempty"` + + // RecordRowDelimiter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters-recordrowdelimiter + RecordRowDelimiter string `json:"RecordRowDelimiter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_CSVMappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.CSVMappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go new file mode 100644 index 0000000000..7d4ea50c4f --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go @@ -0,0 +1,65 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.JSONMappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters.html +type ApplicationReferenceDataSource_JSONMappingParameters struct { + + // RecordRowPath AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters-recordrowpath + RecordRowPath string `json:"RecordRowPath,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_JSONMappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.JSONMappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go new file mode 100644 index 0000000000..541bb050cc --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.MappingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html +type ApplicationReferenceDataSource_MappingParameters struct { + + // CSVMappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters-csvmappingparameters + CSVMappingParameters *ApplicationReferenceDataSource_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` + + // JSONMappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters-jsonmappingparameters + JSONMappingParameters *ApplicationReferenceDataSource_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_MappingParameters) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.MappingParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_MappingParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_MappingParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_MappingParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_MappingParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_MappingParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go new file mode 100644 index 0000000000..24d9afbbbb --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordColumn) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html +type ApplicationReferenceDataSource_RecordColumn struct { + + // Mapping AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-mapping + Mapping string `json:"Mapping,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-name + Name string `json:"Name,omitempty"` + + // SqlType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-sqltype + SqlType string `json:"SqlType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_RecordColumn) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordColumn" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_RecordColumn) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_RecordColumn) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_RecordColumn) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_RecordColumn) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_RecordColumn) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go new file mode 100644 index 0000000000..05806edce3 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordFormat) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html +type ApplicationReferenceDataSource_RecordFormat struct { + + // MappingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordformat-mappingparameters + MappingParameters *ApplicationReferenceDataSource_MappingParameters `json:"MappingParameters,omitempty"` + + // RecordFormatType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordformat-recordformattype + RecordFormatType string `json:"RecordFormatType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_RecordFormat) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordFormat" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_RecordFormat) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_RecordFormat) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_RecordFormat) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_RecordFormat) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_RecordFormat) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go new file mode 100644 index 0000000000..9db425a10f --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceDataSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html +type ApplicationReferenceDataSource_ReferenceDataSource struct { + + // ReferenceSchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-referenceschema + ReferenceSchema *ApplicationReferenceDataSource_ReferenceSchema `json:"ReferenceSchema,omitempty"` + + // S3ReferenceDataSource AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-s3referencedatasource + S3ReferenceDataSource *ApplicationReferenceDataSource_S3ReferenceDataSource `json:"S3ReferenceDataSource,omitempty"` + + // TableName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-tablename + TableName string `json:"TableName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_ReferenceDataSource) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceDataSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go new file mode 100644 index 0000000000..eeeb7e13b1 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go @@ -0,0 +1,75 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_ReferenceSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceSchema) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html +type ApplicationReferenceDataSource_ReferenceSchema struct { + + // RecordColumns AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordcolumns + RecordColumns []ApplicationReferenceDataSource_RecordColumn `json:"RecordColumns,omitempty"` + + // RecordEncoding AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordencoding + RecordEncoding string `json:"RecordEncoding,omitempty"` + + // RecordFormat AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordformat + RecordFormat *ApplicationReferenceDataSource_RecordFormat `json:"RecordFormat,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_ReferenceSchema) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceSchema" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_ReferenceSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go new file mode 100644 index 0000000000..217da9b2e8 --- /dev/null +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go @@ -0,0 +1,70 @@ +package kinesisanalyticsv2 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationReferenceDataSource_S3ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.S3ReferenceDataSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html +type ApplicationReferenceDataSource_S3ReferenceDataSource struct { + + // BucketARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource-bucketarn + BucketARN string `json:"BucketARN,omitempty"` + + // FileKey AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource-filekey + FileKey string `json:"FileKey,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) AWSCloudFormationType() string { + return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.S3ReferenceDataSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream.go new file mode 100644 index 0000000000..007f984331 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream.go @@ -0,0 +1,159 @@ +package kinesisfirehose + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html +type DeliveryStream struct { + + // DeliveryStreamName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamname + DeliveryStreamName string `json:"DeliveryStreamName,omitempty"` + + // DeliveryStreamType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamtype + DeliveryStreamType string `json:"DeliveryStreamType,omitempty"` + + // ElasticsearchDestinationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration + ElasticsearchDestinationConfiguration *DeliveryStream_ElasticsearchDestinationConfiguration `json:"ElasticsearchDestinationConfiguration,omitempty"` + + // ExtendedS3DestinationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration + ExtendedS3DestinationConfiguration *DeliveryStream_ExtendedS3DestinationConfiguration `json:"ExtendedS3DestinationConfiguration,omitempty"` + + // KinesisStreamSourceConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration + KinesisStreamSourceConfiguration *DeliveryStream_KinesisStreamSourceConfiguration `json:"KinesisStreamSourceConfiguration,omitempty"` + + // RedshiftDestinationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration + RedshiftDestinationConfiguration *DeliveryStream_RedshiftDestinationConfiguration `json:"RedshiftDestinationConfiguration,omitempty"` + + // S3DestinationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration + S3DestinationConfiguration *DeliveryStream_S3DestinationConfiguration `json:"S3DestinationConfiguration,omitempty"` + + // SplunkDestinationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration + SplunkDestinationConfiguration *DeliveryStream_SplunkDestinationConfiguration `json:"SplunkDestinationConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r DeliveryStream) MarshalJSON() ([]byte, error) { + type Properties DeliveryStream + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *DeliveryStream) UnmarshalJSON(b []byte) error { + type Properties DeliveryStream + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = DeliveryStream(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_bufferinghints.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_bufferinghints.go new file mode 100644 index 0000000000..5bb213b08d --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_bufferinghints.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_BufferingHints AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.BufferingHints) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html +type DeliveryStream_BufferingHints struct { + + // IntervalInSeconds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html#cfn-kinesisfirehose-deliverystream-bufferinghints-intervalinseconds + IntervalInSeconds int `json:"IntervalInSeconds"` + + // SizeInMBs AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html#cfn-kinesisfirehose-deliverystream-bufferinghints-sizeinmbs + SizeInMBs int `json:"SizeInMBs"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_BufferingHints) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.BufferingHints" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_BufferingHints) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_BufferingHints) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_BufferingHints) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_BufferingHints) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_BufferingHints) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_BufferingHints) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go new file mode 100644 index 0000000000..332f69ab5e --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go @@ -0,0 +1,75 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_CloudWatchLoggingOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.CloudWatchLoggingOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html +type DeliveryStream_CloudWatchLoggingOptions struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-enabled + Enabled bool `json:"Enabled,omitempty"` + + // LogGroupName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-loggroupname + LogGroupName string `json:"LogGroupName,omitempty"` + + // LogStreamName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-logstreamname + LogStreamName string `json:"LogStreamName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_CloudWatchLoggingOptions) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.CloudWatchLoggingOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_CloudWatchLoggingOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_CloudWatchLoggingOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_CloudWatchLoggingOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_CloudWatchLoggingOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_CloudWatchLoggingOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_CloudWatchLoggingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_copycommand.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_copycommand.go new file mode 100644 index 0000000000..c01c73a0e5 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_copycommand.go @@ -0,0 +1,75 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_CopyCommand AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.CopyCommand) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html +type DeliveryStream_CopyCommand struct { + + // CopyOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-copyoptions + CopyOptions string `json:"CopyOptions,omitempty"` + + // DataTableColumns AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-datatablecolumns + DataTableColumns string `json:"DataTableColumns,omitempty"` + + // DataTableName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-datatablename + DataTableName string `json:"DataTableName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_CopyCommand) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.CopyCommand" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_CopyCommand) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_CopyCommand) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_CopyCommand) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_CopyCommand) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_CopyCommand) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_CopyCommand) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go new file mode 100644 index 0000000000..183921bcfc --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go @@ -0,0 +1,80 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_DataFormatConversionConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.DataFormatConversionConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html +type DeliveryStream_DataFormatConversionConfiguration struct { + + // Enabled AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-enabled + Enabled bool `json:"Enabled"` + + // InputFormatConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-inputformatconfiguration + InputFormatConfiguration *DeliveryStream_InputFormatConfiguration `json:"InputFormatConfiguration,omitempty"` + + // OutputFormatConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-outputformatconfiguration + OutputFormatConfiguration *DeliveryStream_OutputFormatConfiguration `json:"OutputFormatConfiguration,omitempty"` + + // SchemaConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-schemaconfiguration + SchemaConfiguration *DeliveryStream_SchemaConfiguration `json:"SchemaConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_DataFormatConversionConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.DataFormatConversionConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_DataFormatConversionConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_DataFormatConversionConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_DataFormatConversionConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_DataFormatConversionConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_DataFormatConversionConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_DataFormatConversionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_deserializer.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_deserializer.go new file mode 100644 index 0000000000..22bd8c1bfc --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_deserializer.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_Deserializer AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Deserializer) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html +type DeliveryStream_Deserializer struct { + + // HiveJsonSerDe AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html#cfn-kinesisfirehose-deliverystream-deserializer-hivejsonserde + HiveJsonSerDe *DeliveryStream_HiveJsonSerDe `json:"HiveJsonSerDe,omitempty"` + + // OpenXJsonSerDe AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html#cfn-kinesisfirehose-deliverystream-deserializer-openxjsonserde + OpenXJsonSerDe *DeliveryStream_OpenXJsonSerDe `json:"OpenXJsonSerDe,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_Deserializer) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.Deserializer" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_Deserializer) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_Deserializer) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_Deserializer) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_Deserializer) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_Deserializer) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_Deserializer) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go new file mode 100644 index 0000000000..a56582b079 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_ElasticsearchBufferingHints AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ElasticsearchBufferingHints) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html +type DeliveryStream_ElasticsearchBufferingHints struct { + + // IntervalInSeconds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html#cfn-kinesisfirehose-deliverystream-elasticsearchbufferinghints-intervalinseconds + IntervalInSeconds int `json:"IntervalInSeconds"` + + // SizeInMBs AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html#cfn-kinesisfirehose-deliverystream-elasticsearchbufferinghints-sizeinmbs + SizeInMBs int `json:"SizeInMBs"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_ElasticsearchBufferingHints) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.ElasticsearchBufferingHints" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_ElasticsearchBufferingHints) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_ElasticsearchBufferingHints) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_ElasticsearchBufferingHints) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_ElasticsearchBufferingHints) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_ElasticsearchBufferingHints) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_ElasticsearchBufferingHints) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchdestinationconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchdestinationconfiguration.go similarity index 76% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchdestinationconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchdestinationconfiguration.go index 5c73bcad6e..f3ec632538 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchdestinationconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchdestinationconfiguration.go @@ -1,20 +1,22 @@ -package resources +package kinesisfirehose -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration) +// DeliveryStream_ElasticsearchDestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html -type AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration struct { +type DeliveryStream_ElasticsearchDestinationConfiguration struct { // BufferingHints AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-bufferinghints - BufferingHints *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints `json:"BufferingHints,omitempty"` + BufferingHints *DeliveryStream_ElasticsearchBufferingHints `json:"BufferingHints,omitempty"` // CloudWatchLoggingOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-cloudwatchloggingoptions - CloudWatchLoggingOptions *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` + CloudWatchLoggingOptions *DeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` // DomainARN AWS CloudFormation Property // Required: true @@ -34,12 +36,12 @@ type AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration stru // ProcessingConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-processingconfiguration - ProcessingConfiguration *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` + ProcessingConfiguration *DeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` // RetryOptions AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-retryoptions - RetryOptions *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions `json:"RetryOptions,omitempty"` + RetryOptions *DeliveryStream_ElasticsearchRetryOptions `json:"RetryOptions,omitempty"` // RoleARN AWS CloudFormation Property // Required: true @@ -54,7 +56,7 @@ type AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration stru // S3Configuration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-s3configuration - S3Configuration *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration `json:"S3Configuration,omitempty"` + S3Configuration *DeliveryStream_S3DestinationConfiguration `json:"S3Configuration,omitempty"` // TypeName AWS CloudFormation Property // Required: true @@ -72,42 +74,42 @@ type AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration stru } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration) AWSCloudFormationType() string { +func (r *DeliveryStream_ElasticsearchDestinationConfiguration) AWSCloudFormationType() string { return "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration) DependsOn() []string { +func (r *DeliveryStream_ElasticsearchDestinationConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration) SetDependsOn(dependencies []string) { +func (r *DeliveryStream_ElasticsearchDestinationConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration) Metadata() map[string]interface{} { +func (r *DeliveryStream_ElasticsearchDestinationConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryStream_ElasticsearchDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryStream_ElasticsearchDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_ElasticsearchDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go new file mode 100644 index 0000000000..1a877fc073 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go @@ -0,0 +1,65 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_ElasticsearchRetryOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ElasticsearchRetryOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchretryoptions.html +type DeliveryStream_ElasticsearchRetryOptions struct { + + // DurationInSeconds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchretryoptions.html#cfn-kinesisfirehose-deliverystream-elasticsearchretryoptions-durationinseconds + DurationInSeconds int `json:"DurationInSeconds"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_ElasticsearchRetryOptions) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.ElasticsearchRetryOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_ElasticsearchRetryOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_ElasticsearchRetryOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_ElasticsearchRetryOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_ElasticsearchRetryOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_ElasticsearchRetryOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_ElasticsearchRetryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go new file mode 100644 index 0000000000..46f00bb8f0 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_EncryptionConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html +type DeliveryStream_EncryptionConfiguration struct { + + // KMSEncryptionConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html#cfn-kinesisfirehose-deliverystream-encryptionconfiguration-kmsencryptionconfig + KMSEncryptionConfig *DeliveryStream_KMSEncryptionConfig `json:"KMSEncryptionConfig,omitempty"` + + // NoEncryptionConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html#cfn-kinesisfirehose-deliverystream-encryptionconfiguration-noencryptionconfig + NoEncryptionConfig string `json:"NoEncryptionConfig,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_EncryptionConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_EncryptionConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_EncryptionConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_EncryptionConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_extendeds3destinationconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_extendeds3destinationconfiguration.go similarity index 75% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_extendeds3destinationconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_extendeds3destinationconfiguration.go index 76e54b9772..7709093b14 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_extendeds3destinationconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_extendeds3destinationconfiguration.go @@ -1,10 +1,12 @@ -package resources +package kinesisfirehose -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration) +// DeliveryStream_ExtendedS3DestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html -type AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration struct { +type DeliveryStream_ExtendedS3DestinationConfiguration struct { // BucketARN AWS CloudFormation Property // Required: true @@ -14,12 +16,12 @@ type AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration struct // BufferingHints AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-bufferinghints - BufferingHints *AWSKinesisFirehoseDeliveryStream_BufferingHints `json:"BufferingHints,omitempty"` + BufferingHints *DeliveryStream_BufferingHints `json:"BufferingHints,omitempty"` // CloudWatchLoggingOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-cloudwatchloggingoptions - CloudWatchLoggingOptions *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` + CloudWatchLoggingOptions *DeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` // CompressionFormat AWS CloudFormation Property // Required: true @@ -29,12 +31,12 @@ type AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration struct // DataFormatConversionConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-dataformatconversionconfiguration - DataFormatConversionConfiguration *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration `json:"DataFormatConversionConfiguration,omitempty"` + DataFormatConversionConfiguration *DeliveryStream_DataFormatConversionConfiguration `json:"DataFormatConversionConfiguration,omitempty"` // EncryptionConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-encryptionconfiguration - EncryptionConfiguration *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` + EncryptionConfiguration *DeliveryStream_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` // ErrorOutputPrefix AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration struct // ProcessingConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-processingconfiguration - ProcessingConfiguration *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` + ProcessingConfiguration *DeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` // RoleARN AWS CloudFormation Property // Required: true @@ -59,7 +61,7 @@ type AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration struct // S3BackupConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-s3backupconfiguration - S3BackupConfiguration *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration `json:"S3BackupConfiguration,omitempty"` + S3BackupConfiguration *DeliveryStream_S3DestinationConfiguration `json:"S3BackupConfiguration,omitempty"` // S3BackupMode AWS CloudFormation Property // Required: false @@ -77,42 +79,42 @@ type AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration) AWSCloudFormationType() string { +func (r *DeliveryStream_ExtendedS3DestinationConfiguration) AWSCloudFormationType() string { return "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration) DependsOn() []string { +func (r *DeliveryStream_ExtendedS3DestinationConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration) SetDependsOn(dependencies []string) { +func (r *DeliveryStream_ExtendedS3DestinationConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration) Metadata() map[string]interface{} { +func (r *DeliveryStream_ExtendedS3DestinationConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryStream_ExtendedS3DestinationConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryStream_ExtendedS3DestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_ExtendedS3DestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_hivejsonserde.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_hivejsonserde.go new file mode 100644 index 0000000000..eec3be8862 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_hivejsonserde.go @@ -0,0 +1,65 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_HiveJsonSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.HiveJsonSerDe) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-hivejsonserde.html +type DeliveryStream_HiveJsonSerDe struct { + + // TimestampFormats AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-hivejsonserde.html#cfn-kinesisfirehose-deliverystream-hivejsonserde-timestampformats + TimestampFormats []string `json:"TimestampFormats,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_HiveJsonSerDe) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.HiveJsonSerDe" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_HiveJsonSerDe) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_HiveJsonSerDe) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_HiveJsonSerDe) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_HiveJsonSerDe) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_HiveJsonSerDe) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_HiveJsonSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go new file mode 100644 index 0000000000..8b7879dc4a --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go @@ -0,0 +1,65 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_InputFormatConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.InputFormatConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-inputformatconfiguration.html +type DeliveryStream_InputFormatConfiguration struct { + + // Deserializer AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-inputformatconfiguration.html#cfn-kinesisfirehose-deliverystream-inputformatconfiguration-deserializer + Deserializer *DeliveryStream_Deserializer `json:"Deserializer,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_InputFormatConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.InputFormatConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_InputFormatConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_InputFormatConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_InputFormatConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_InputFormatConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_InputFormatConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_InputFormatConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go new file mode 100644 index 0000000000..634ec20ca9 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_KinesisStreamSourceConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html +type DeliveryStream_KinesisStreamSourceConfiguration struct { + + // KinesisStreamARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration-kinesisstreamarn + KinesisStreamARN string `json:"KinesisStreamARN,omitempty"` + + // RoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration-rolearn + RoleARN string `json:"RoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_KinesisStreamSourceConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_KinesisStreamSourceConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_KinesisStreamSourceConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_KinesisStreamSourceConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_KinesisStreamSourceConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_KinesisStreamSourceConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_KinesisStreamSourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go new file mode 100644 index 0000000000..acd46eb85d --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go @@ -0,0 +1,65 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_KMSEncryptionConfig AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.KMSEncryptionConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kmsencryptionconfig.html +type DeliveryStream_KMSEncryptionConfig struct { + + // AWSKMSKeyARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kmsencryptionconfig.html#cfn-kinesisfirehose-deliverystream-kmsencryptionconfig-awskmskeyarn + AWSKMSKeyARN string `json:"AWSKMSKeyARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_KMSEncryptionConfig) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.KMSEncryptionConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_KMSEncryptionConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_KMSEncryptionConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_KMSEncryptionConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_KMSEncryptionConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_KMSEncryptionConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_KMSEncryptionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_openxjsonserde.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_openxjsonserde.go similarity index 75% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_openxjsonserde.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_openxjsonserde.go index 4341d01de3..4548956c72 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_openxjsonserde.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_openxjsonserde.go @@ -1,10 +1,12 @@ -package resources +package kinesisfirehose -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.OpenXJsonSerDe) +// DeliveryStream_OpenXJsonSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.OpenXJsonSerDe) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html -type AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe struct { +type DeliveryStream_OpenXJsonSerDe struct { // CaseInsensitive AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe) AWSCloudFormationType() string { +func (r *DeliveryStream_OpenXJsonSerDe) AWSCloudFormationType() string { return "AWS::KinesisFirehose::DeliveryStream.OpenXJsonSerDe" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe) DependsOn() []string { +func (r *DeliveryStream_OpenXJsonSerDe) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe) SetDependsOn(dependencies []string) { +func (r *DeliveryStream_OpenXJsonSerDe) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe) Metadata() map[string]interface{} { +func (r *DeliveryStream_OpenXJsonSerDe) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryStream_OpenXJsonSerDe) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryStream_OpenXJsonSerDe) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_OpenXJsonSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_orcserde.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_orcserde.go similarity index 84% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_orcserde.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_orcserde.go index b4b98ecc84..13fb6774e0 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_orcserde.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_orcserde.go @@ -1,10 +1,12 @@ -package resources +package kinesisfirehose -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisFirehoseDeliveryStream_OrcSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.OrcSerDe) +// DeliveryStream_OrcSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.OrcSerDe) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html -type AWSKinesisFirehoseDeliveryStream_OrcSerDe struct { +type DeliveryStream_OrcSerDe struct { // BlockSizeBytes AWS CloudFormation Property // Required: false @@ -67,42 +69,42 @@ type AWSKinesisFirehoseDeliveryStream_OrcSerDe struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_OrcSerDe) AWSCloudFormationType() string { +func (r *DeliveryStream_OrcSerDe) AWSCloudFormationType() string { return "AWS::KinesisFirehose::DeliveryStream.OrcSerDe" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_OrcSerDe) DependsOn() []string { +func (r *DeliveryStream_OrcSerDe) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_OrcSerDe) SetDependsOn(dependencies []string) { +func (r *DeliveryStream_OrcSerDe) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_OrcSerDe) Metadata() map[string]interface{} { +func (r *DeliveryStream_OrcSerDe) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_OrcSerDe) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryStream_OrcSerDe) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_OrcSerDe) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryStream_OrcSerDe) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_OrcSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_OrcSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go new file mode 100644 index 0000000000..9aad2126a9 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go @@ -0,0 +1,65 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_OutputFormatConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.OutputFormatConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-outputformatconfiguration.html +type DeliveryStream_OutputFormatConfiguration struct { + + // Serializer AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-outputformatconfiguration.html#cfn-kinesisfirehose-deliverystream-outputformatconfiguration-serializer + Serializer *DeliveryStream_Serializer `json:"Serializer,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_OutputFormatConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.OutputFormatConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_OutputFormatConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_OutputFormatConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_OutputFormatConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_OutputFormatConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_OutputFormatConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_OutputFormatConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_parquetserde.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_parquetserde.go similarity index 80% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_parquetserde.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_parquetserde.go index 597f74579f..8b2a0f4ade 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_parquetserde.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_parquetserde.go @@ -1,10 +1,12 @@ -package resources +package kinesisfirehose -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisFirehoseDeliveryStream_ParquetSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ParquetSerDe) +// DeliveryStream_ParquetSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ParquetSerDe) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html -type AWSKinesisFirehoseDeliveryStream_ParquetSerDe struct { +type DeliveryStream_ParquetSerDe struct { // BlockSizeBytes AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSKinesisFirehoseDeliveryStream_ParquetSerDe struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ParquetSerDe) AWSCloudFormationType() string { +func (r *DeliveryStream_ParquetSerDe) AWSCloudFormationType() string { return "AWS::KinesisFirehose::DeliveryStream.ParquetSerDe" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ParquetSerDe) DependsOn() []string { +func (r *DeliveryStream_ParquetSerDe) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ParquetSerDe) SetDependsOn(dependencies []string) { +func (r *DeliveryStream_ParquetSerDe) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ParquetSerDe) Metadata() map[string]interface{} { +func (r *DeliveryStream_ParquetSerDe) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ParquetSerDe) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryStream_ParquetSerDe) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ParquetSerDe) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryStream_ParquetSerDe) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ParquetSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_ParquetSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processingconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processingconfiguration.go new file mode 100644 index 0000000000..55c1c62f29 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processingconfiguration.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_ProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ProcessingConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html +type DeliveryStream_ProcessingConfiguration struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html#cfn-kinesisfirehose-deliverystream-processingconfiguration-enabled + Enabled bool `json:"Enabled,omitempty"` + + // Processors AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html#cfn-kinesisfirehose-deliverystream-processingconfiguration-processors + Processors []DeliveryStream_Processor `json:"Processors,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_ProcessingConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.ProcessingConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_ProcessingConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_ProcessingConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_ProcessingConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_ProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_ProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_ProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processor.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processor.go new file mode 100644 index 0000000000..ec8c9d20db --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processor.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_Processor AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Processor) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html +type DeliveryStream_Processor struct { + + // Parameters AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html#cfn-kinesisfirehose-deliverystream-processor-parameters + Parameters []DeliveryStream_ProcessorParameter `json:"Parameters,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html#cfn-kinesisfirehose-deliverystream-processor-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_Processor) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.Processor" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_Processor) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_Processor) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_Processor) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_Processor) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_Processor) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_Processor) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processorparameter.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processorparameter.go new file mode 100644 index 0000000000..32259f54be --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processorparameter.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_ProcessorParameter AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ProcessorParameter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html +type DeliveryStream_ProcessorParameter struct { + + // ParameterName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html#cfn-kinesisfirehose-deliverystream-processorparameter-parametername + ParameterName string `json:"ParameterName,omitempty"` + + // ParameterValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html#cfn-kinesisfirehose-deliverystream-processorparameter-parametervalue + ParameterValue string `json:"ParameterValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_ProcessorParameter) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.ProcessorParameter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_ProcessorParameter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_ProcessorParameter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_ProcessorParameter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_ProcessorParameter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_ProcessorParameter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_ProcessorParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go new file mode 100644 index 0000000000..3baa5ca8b1 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go @@ -0,0 +1,100 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_RedshiftDestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html +type DeliveryStream_RedshiftDestinationConfiguration struct { + + // CloudWatchLoggingOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-cloudwatchloggingoptions + CloudWatchLoggingOptions *DeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` + + // ClusterJDBCURL AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-clusterjdbcurl + ClusterJDBCURL string `json:"ClusterJDBCURL,omitempty"` + + // CopyCommand AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-copycommand + CopyCommand *DeliveryStream_CopyCommand `json:"CopyCommand,omitempty"` + + // Password AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-password + Password string `json:"Password,omitempty"` + + // ProcessingConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-processingconfiguration + ProcessingConfiguration *DeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` + + // RoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-rolearn + RoleARN string `json:"RoleARN,omitempty"` + + // S3Configuration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-s3configuration + S3Configuration *DeliveryStream_S3DestinationConfiguration `json:"S3Configuration,omitempty"` + + // Username AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-username + Username string `json:"Username,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_RedshiftDestinationConfiguration) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_RedshiftDestinationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_RedshiftDestinationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_RedshiftDestinationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_RedshiftDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_RedshiftDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_RedshiftDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_s3destinationconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_s3destinationconfiguration.go similarity index 75% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_s3destinationconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_s3destinationconfiguration.go index 8523a28f30..6c6b24b893 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_s3destinationconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_s3destinationconfiguration.go @@ -1,10 +1,12 @@ -package resources +package kinesisfirehose -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration) +// DeliveryStream_S3DestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html -type AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration struct { +type DeliveryStream_S3DestinationConfiguration struct { // BucketARN AWS CloudFormation Property // Required: true @@ -14,12 +16,12 @@ type AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration struct { // BufferingHints AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-bufferinghints - BufferingHints *AWSKinesisFirehoseDeliveryStream_BufferingHints `json:"BufferingHints,omitempty"` + BufferingHints *DeliveryStream_BufferingHints `json:"BufferingHints,omitempty"` // CloudWatchLoggingOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-cloudwatchloggingoptions - CloudWatchLoggingOptions *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` + CloudWatchLoggingOptions *DeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` // CompressionFormat AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration struct { // EncryptionConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-encryptionconfiguration - EncryptionConfiguration *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` + EncryptionConfiguration *DeliveryStream_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` // ErrorOutputPrefix AWS CloudFormation Property // Required: false @@ -57,42 +59,42 @@ type AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration) AWSCloudFormationType() string { +func (r *DeliveryStream_S3DestinationConfiguration) AWSCloudFormationType() string { return "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration) DependsOn() []string { +func (r *DeliveryStream_S3DestinationConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration) SetDependsOn(dependencies []string) { +func (r *DeliveryStream_S3DestinationConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration) Metadata() map[string]interface{} { +func (r *DeliveryStream_S3DestinationConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryStream_S3DestinationConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryStream_S3DestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_S3DestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_schemaconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_schemaconfiguration.go similarity index 78% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_schemaconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_schemaconfiguration.go index dd574ac58f..2635ce13b7 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_schemaconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_schemaconfiguration.go @@ -1,10 +1,12 @@ -package resources +package kinesisfirehose -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisFirehoseDeliveryStream_SchemaConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.SchemaConfiguration) +// DeliveryStream_SchemaConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.SchemaConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html -type AWSKinesisFirehoseDeliveryStream_SchemaConfiguration struct { +type DeliveryStream_SchemaConfiguration struct { // CatalogId AWS CloudFormation Property // Required: true @@ -47,42 +49,42 @@ type AWSKinesisFirehoseDeliveryStream_SchemaConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration) AWSCloudFormationType() string { +func (r *DeliveryStream_SchemaConfiguration) AWSCloudFormationType() string { return "AWS::KinesisFirehose::DeliveryStream.SchemaConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration) DependsOn() []string { +func (r *DeliveryStream_SchemaConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration) SetDependsOn(dependencies []string) { +func (r *DeliveryStream_SchemaConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration) Metadata() map[string]interface{} { +func (r *DeliveryStream_SchemaConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryStream_SchemaConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryStream_SchemaConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_SchemaConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_serializer.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_serializer.go new file mode 100644 index 0000000000..1ddd374ed4 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_serializer.go @@ -0,0 +1,70 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_Serializer AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Serializer) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html +type DeliveryStream_Serializer struct { + + // OrcSerDe AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html#cfn-kinesisfirehose-deliverystream-serializer-orcserde + OrcSerDe *DeliveryStream_OrcSerDe `json:"OrcSerDe,omitempty"` + + // ParquetSerDe AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html#cfn-kinesisfirehose-deliverystream-serializer-parquetserde + ParquetSerDe *DeliveryStream_ParquetSerDe `json:"ParquetSerDe,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_Serializer) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.Serializer" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_Serializer) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_Serializer) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_Serializer) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_Serializer) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_Serializer) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_Serializer) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_splunkdestinationconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkdestinationconfiguration.go similarity index 75% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_splunkdestinationconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkdestinationconfiguration.go index 6b89f91644..09b53bfa2a 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_splunkdestinationconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkdestinationconfiguration.go @@ -1,15 +1,17 @@ -package resources +package kinesisfirehose -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration) +// DeliveryStream_SplunkDestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html -type AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration struct { +type DeliveryStream_SplunkDestinationConfiguration struct { // CloudWatchLoggingOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-cloudwatchloggingoptions - CloudWatchLoggingOptions *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` + CloudWatchLoggingOptions *DeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` // HECAcknowledgmentTimeoutInSeconds AWS CloudFormation Property // Required: false @@ -34,12 +36,12 @@ type AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration struct { // ProcessingConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-processingconfiguration - ProcessingConfiguration *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` + ProcessingConfiguration *DeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` // RetryOptions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-retryoptions - RetryOptions *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions `json:"RetryOptions,omitempty"` + RetryOptions *DeliveryStream_SplunkRetryOptions `json:"RetryOptions,omitempty"` // S3BackupMode AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration struct { // S3Configuration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-s3configuration - S3Configuration *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration `json:"S3Configuration,omitempty"` + S3Configuration *DeliveryStream_S3DestinationConfiguration `json:"S3Configuration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -62,42 +64,42 @@ type AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration) AWSCloudFormationType() string { +func (r *DeliveryStream_SplunkDestinationConfiguration) AWSCloudFormationType() string { return "AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration) DependsOn() []string { +func (r *DeliveryStream_SplunkDestinationConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration) SetDependsOn(dependencies []string) { +func (r *DeliveryStream_SplunkDestinationConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration) Metadata() map[string]interface{} { +func (r *DeliveryStream_SplunkDestinationConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *DeliveryStream_SplunkDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *DeliveryStream_SplunkDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_SplunkDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkretryoptions.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkretryoptions.go new file mode 100644 index 0000000000..fd0f361486 --- /dev/null +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkretryoptions.go @@ -0,0 +1,65 @@ +package kinesisfirehose + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DeliveryStream_SplunkRetryOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.SplunkRetryOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkretryoptions.html +type DeliveryStream_SplunkRetryOptions struct { + + // DurationInSeconds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkretryoptions.html#cfn-kinesisfirehose-deliverystream-splunkretryoptions-durationinseconds + DurationInSeconds int `json:"DurationInSeconds"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DeliveryStream_SplunkRetryOptions) AWSCloudFormationType() string { + return "AWS::KinesisFirehose::DeliveryStream.SplunkRetryOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_SplunkRetryOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DeliveryStream_SplunkRetryOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_SplunkRetryOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DeliveryStream_SplunkRetryOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_SplunkRetryOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DeliveryStream_SplunkRetryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-kms-alias.go b/cloudformation/kms/aws-kms-alias.go similarity index 82% rename from cloudformation/resources/aws-kms-alias.go rename to cloudformation/kms/aws-kms-alias.go index 2fe74f75ff..a3e6e439ca 100644 --- a/cloudformation/resources/aws-kms-alias.go +++ b/cloudformation/kms/aws-kms-alias.go @@ -1,15 +1,16 @@ -package resources +package kms import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSKMSAlias AWS CloudFormation Resource (AWS::KMS::Alias) +// Alias AWS CloudFormation Resource (AWS::KMS::Alias) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html -type AWSKMSAlias struct { +type Alias struct { // AliasName AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSKMSAlias struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKMSAlias) AWSCloudFormationType() string { +func (r *Alias) AWSCloudFormationType() string { return "AWS::KMS::Alias" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKMSAlias) DependsOn() []string { +func (r *Alias) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKMSAlias) SetDependsOn(dependencies []string) { +func (r *Alias) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKMSAlias) Metadata() map[string]interface{} { +func (r *Alias) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKMSAlias) SetMetadata(metadata map[string]interface{}) { +func (r *Alias) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKMSAlias) DeletionPolicy() policies.DeletionPolicy { +func (r *Alias) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKMSAlias) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alias) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKMSAlias) MarshalJSON() ([]byte, error) { - type Properties AWSKMSAlias +func (r Alias) MarshalJSON() ([]byte, error) { + type Properties Alias return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSKMSAlias) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKMSAlias) UnmarshalJSON(b []byte) error { - type Properties AWSKMSAlias +func (r *Alias) UnmarshalJSON(b []byte) error { + type Properties Alias res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSKMSAlias) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKMSAlias(*res.Properties) + *r = Alias(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-kms-key.go b/cloudformation/kms/aws-kms-key.go similarity index 85% rename from cloudformation/resources/aws-kms-key.go rename to cloudformation/kms/aws-kms-key.go index dde579d1ff..4ed15744ac 100644 --- a/cloudformation/resources/aws-kms-key.go +++ b/cloudformation/kms/aws-kms-key.go @@ -1,15 +1,17 @@ -package resources +package kms import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSKMSKey AWS CloudFormation Resource (AWS::KMS::Key) +// Key AWS CloudFormation Resource (AWS::KMS::Key) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html -type AWSKMSKey struct { +type Key struct { // Description AWS CloudFormation Property // Required: false @@ -44,7 +46,7 @@ type AWSKMSKey struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -57,50 +59,50 @@ type AWSKMSKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKMSKey) AWSCloudFormationType() string { +func (r *Key) AWSCloudFormationType() string { return "AWS::KMS::Key" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKMSKey) DependsOn() []string { +func (r *Key) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKMSKey) SetDependsOn(dependencies []string) { +func (r *Key) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKMSKey) Metadata() map[string]interface{} { +func (r *Key) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKMSKey) SetMetadata(metadata map[string]interface{}) { +func (r *Key) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKMSKey) DeletionPolicy() policies.DeletionPolicy { +func (r *Key) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKMSKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Key) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKMSKey) MarshalJSON() ([]byte, error) { - type Properties AWSKMSKey +func (r Key) MarshalJSON() ([]byte, error) { + type Properties Key return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +120,8 @@ func (r AWSKMSKey) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKMSKey) UnmarshalJSON(b []byte) error { - type Properties AWSKMSKey +func (r *Key) UnmarshalJSON(b []byte) error { + type Properties Key res := &struct { Type string Properties *Properties @@ -138,7 +140,7 @@ func (r *AWSKMSKey) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKMSKey(*res.Properties) + *r = Key(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-lakeformation-datalakesettings.go b/cloudformation/lakeformation/aws-lakeformation-datalakesettings.go similarity index 75% rename from cloudformation/resources/aws-lakeformation-datalakesettings.go rename to cloudformation/lakeformation/aws-lakeformation-datalakesettings.go index cf61985467..6bac6f1c42 100644 --- a/cloudformation/resources/aws-lakeformation-datalakesettings.go +++ b/cloudformation/lakeformation/aws-lakeformation-datalakesettings.go @@ -1,20 +1,21 @@ -package resources +package lakeformation import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLakeFormationDataLakeSettings AWS CloudFormation Resource (AWS::LakeFormation::DataLakeSettings) +// DataLakeSettings AWS CloudFormation Resource (AWS::LakeFormation::DataLakeSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html -type AWSLakeFormationDataLakeSettings struct { +type DataLakeSettings struct { // Admins AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html#cfn-lakeformation-datalakesettings-admins - Admins *AWSLakeFormationDataLakeSettings_Admins `json:"Admins,omitempty"` + Admins *DataLakeSettings_Admins `json:"Admins,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,50 +28,50 @@ type AWSLakeFormationDataLakeSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationDataLakeSettings) AWSCloudFormationType() string { +func (r *DataLakeSettings) AWSCloudFormationType() string { return "AWS::LakeFormation::DataLakeSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationDataLakeSettings) DependsOn() []string { +func (r *DataLakeSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationDataLakeSettings) SetDependsOn(dependencies []string) { +func (r *DataLakeSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationDataLakeSettings) Metadata() map[string]interface{} { +func (r *DataLakeSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationDataLakeSettings) SetMetadata(metadata map[string]interface{}) { +func (r *DataLakeSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationDataLakeSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *DataLakeSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationDataLakeSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataLakeSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLakeFormationDataLakeSettings) MarshalJSON() ([]byte, error) { - type Properties AWSLakeFormationDataLakeSettings +func (r DataLakeSettings) MarshalJSON() ([]byte, error) { + type Properties DataLakeSettings return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSLakeFormationDataLakeSettings) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLakeFormationDataLakeSettings) UnmarshalJSON(b []byte) error { - type Properties AWSLakeFormationDataLakeSettings +func (r *DataLakeSettings) UnmarshalJSON(b []byte) error { + type Properties DataLakeSettings res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSLakeFormationDataLakeSettings) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLakeFormationDataLakeSettings(*res.Properties) + *r = DataLakeSettings(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/lakeformation/aws-lakeformation-datalakesettings_admins.go b/cloudformation/lakeformation/aws-lakeformation-datalakesettings_admins.go new file mode 100644 index 0000000000..72459a14ef --- /dev/null +++ b/cloudformation/lakeformation/aws-lakeformation-datalakesettings_admins.go @@ -0,0 +1,60 @@ +package lakeformation + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataLakeSettings_Admins AWS CloudFormation Resource (AWS::LakeFormation::DataLakeSettings.Admins) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-admins.html +type DataLakeSettings_Admins struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataLakeSettings_Admins) AWSCloudFormationType() string { + return "AWS::LakeFormation::DataLakeSettings.Admins" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataLakeSettings_Admins) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataLakeSettings_Admins) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataLakeSettings_Admins) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataLakeSettings_Admins) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataLakeSettings_Admins) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataLakeSettings_Admins) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/lakeformation/aws-lakeformation-datalakesettings_datalakeprincipal.go b/cloudformation/lakeformation/aws-lakeformation-datalakesettings_datalakeprincipal.go new file mode 100644 index 0000000000..82a36136dd --- /dev/null +++ b/cloudformation/lakeformation/aws-lakeformation-datalakesettings_datalakeprincipal.go @@ -0,0 +1,65 @@ +package lakeformation + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DataLakeSettings_DataLakePrincipal AWS CloudFormation Resource (AWS::LakeFormation::DataLakeSettings.DataLakePrincipal) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-datalakeprincipal.html +type DataLakeSettings_DataLakePrincipal struct { + + // DataLakePrincipalIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-datalakeprincipal.html#cfn-lakeformation-datalakesettings-datalakeprincipal-datalakeprincipalidentifier + DataLakePrincipalIdentifier string `json:"DataLakePrincipalIdentifier,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DataLakeSettings_DataLakePrincipal) AWSCloudFormationType() string { + return "AWS::LakeFormation::DataLakeSettings.DataLakePrincipal" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataLakeSettings_DataLakePrincipal) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DataLakeSettings_DataLakePrincipal) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataLakeSettings_DataLakePrincipal) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DataLakeSettings_DataLakePrincipal) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataLakeSettings_DataLakePrincipal) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DataLakeSettings_DataLakePrincipal) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-lakeformation-permissions.go b/cloudformation/lakeformation/aws-lakeformation-permissions.go similarity index 78% rename from cloudformation/resources/aws-lakeformation-permissions.go rename to cloudformation/lakeformation/aws-lakeformation-permissions.go index 383af01677..50dc1e171b 100644 --- a/cloudformation/resources/aws-lakeformation-permissions.go +++ b/cloudformation/lakeformation/aws-lakeformation-permissions.go @@ -1,20 +1,21 @@ -package resources +package lakeformation import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLakeFormationPermissions AWS CloudFormation Resource (AWS::LakeFormation::Permissions) +// Permissions AWS CloudFormation Resource (AWS::LakeFormation::Permissions) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html -type AWSLakeFormationPermissions struct { +type Permissions struct { // DataLakePrincipal AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html#cfn-lakeformation-permissions-datalakeprincipal - DataLakePrincipal *AWSLakeFormationPermissions_DataLakePrincipal `json:"DataLakePrincipal,omitempty"` + DataLakePrincipal *Permissions_DataLakePrincipal `json:"DataLakePrincipal,omitempty"` // Permissions AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSLakeFormationPermissions struct { // Resource AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html#cfn-lakeformation-permissions-resource - Resource *AWSLakeFormationPermissions_Resource `json:"Resource,omitempty"` + Resource *Permissions_Resource `json:"Resource,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSLakeFormationPermissions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions) AWSCloudFormationType() string { +func (r *Permissions) AWSCloudFormationType() string { return "AWS::LakeFormation::Permissions" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions) DependsOn() []string { +func (r *Permissions) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions) SetDependsOn(dependencies []string) { +func (r *Permissions) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions) Metadata() map[string]interface{} { +func (r *Permissions) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions) SetMetadata(metadata map[string]interface{}) { +func (r *Permissions) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions) DeletionPolicy() policies.DeletionPolicy { +func (r *Permissions) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Permissions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLakeFormationPermissions) MarshalJSON() ([]byte, error) { - type Properties AWSLakeFormationPermissions +func (r Permissions) MarshalJSON() ([]byte, error) { + type Properties Permissions return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSLakeFormationPermissions) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLakeFormationPermissions) UnmarshalJSON(b []byte) error { - type Properties AWSLakeFormationPermissions +func (r *Permissions) UnmarshalJSON(b []byte) error { + type Properties Permissions res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSLakeFormationPermissions) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLakeFormationPermissions(*res.Properties) + *r = Permissions(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/lakeformation/aws-lakeformation-permissions_databaseresource.go b/cloudformation/lakeformation/aws-lakeformation-permissions_databaseresource.go new file mode 100644 index 0000000000..5f5bf5d5bd --- /dev/null +++ b/cloudformation/lakeformation/aws-lakeformation-permissions_databaseresource.go @@ -0,0 +1,65 @@ +package lakeformation + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Permissions_DatabaseResource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.DatabaseResource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-databaseresource.html +type Permissions_DatabaseResource struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-databaseresource.html#cfn-lakeformation-permissions-databaseresource-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Permissions_DatabaseResource) AWSCloudFormationType() string { + return "AWS::LakeFormation::Permissions.DatabaseResource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Permissions_DatabaseResource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Permissions_DatabaseResource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Permissions_DatabaseResource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Permissions_DatabaseResource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Permissions_DatabaseResource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Permissions_DatabaseResource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/lakeformation/aws-lakeformation-permissions_datalakeprincipal.go b/cloudformation/lakeformation/aws-lakeformation-permissions_datalakeprincipal.go new file mode 100644 index 0000000000..ccf5bf6d0e --- /dev/null +++ b/cloudformation/lakeformation/aws-lakeformation-permissions_datalakeprincipal.go @@ -0,0 +1,65 @@ +package lakeformation + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Permissions_DataLakePrincipal AWS CloudFormation Resource (AWS::LakeFormation::Permissions.DataLakePrincipal) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-datalakeprincipal.html +type Permissions_DataLakePrincipal struct { + + // DataLakePrincipalIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-datalakeprincipal.html#cfn-lakeformation-permissions-datalakeprincipal-datalakeprincipalidentifier + DataLakePrincipalIdentifier string `json:"DataLakePrincipalIdentifier,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Permissions_DataLakePrincipal) AWSCloudFormationType() string { + return "AWS::LakeFormation::Permissions.DataLakePrincipal" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Permissions_DataLakePrincipal) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Permissions_DataLakePrincipal) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Permissions_DataLakePrincipal) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Permissions_DataLakePrincipal) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Permissions_DataLakePrincipal) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Permissions_DataLakePrincipal) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/lakeformation/aws-lakeformation-permissions_resource.go b/cloudformation/lakeformation/aws-lakeformation-permissions_resource.go new file mode 100644 index 0000000000..41da6cec36 --- /dev/null +++ b/cloudformation/lakeformation/aws-lakeformation-permissions_resource.go @@ -0,0 +1,70 @@ +package lakeformation + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Permissions_Resource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.Resource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html +type Permissions_Resource struct { + + // DatabaseResource AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html#cfn-lakeformation-permissions-resource-databaseresource + DatabaseResource *Permissions_DatabaseResource `json:"DatabaseResource,omitempty"` + + // TableResource AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html#cfn-lakeformation-permissions-resource-tableresource + TableResource *Permissions_TableResource `json:"TableResource,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Permissions_Resource) AWSCloudFormationType() string { + return "AWS::LakeFormation::Permissions.Resource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Permissions_Resource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Permissions_Resource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Permissions_Resource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Permissions_Resource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Permissions_Resource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Permissions_Resource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/lakeformation/aws-lakeformation-permissions_tableresource.go b/cloudformation/lakeformation/aws-lakeformation-permissions_tableresource.go new file mode 100644 index 0000000000..bdfed4dea3 --- /dev/null +++ b/cloudformation/lakeformation/aws-lakeformation-permissions_tableresource.go @@ -0,0 +1,70 @@ +package lakeformation + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Permissions_TableResource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.TableResource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html +type Permissions_TableResource struct { + + // DatabaseName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html#cfn-lakeformation-permissions-tableresource-databasename + DatabaseName string `json:"DatabaseName,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html#cfn-lakeformation-permissions-tableresource-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Permissions_TableResource) AWSCloudFormationType() string { + return "AWS::LakeFormation::Permissions.TableResource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Permissions_TableResource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Permissions_TableResource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Permissions_TableResource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Permissions_TableResource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Permissions_TableResource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Permissions_TableResource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-lakeformation-resource.go b/cloudformation/lakeformation/aws-lakeformation-resource.go similarity index 80% rename from cloudformation/resources/aws-lakeformation-resource.go rename to cloudformation/lakeformation/aws-lakeformation-resource.go index b389525350..6b3364db2f 100644 --- a/cloudformation/resources/aws-lakeformation-resource.go +++ b/cloudformation/lakeformation/aws-lakeformation-resource.go @@ -1,15 +1,16 @@ -package resources +package lakeformation import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLakeFormationResource AWS CloudFormation Resource (AWS::LakeFormation::Resource) +// Resource AWS CloudFormation Resource (AWS::LakeFormation::Resource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html -type AWSLakeFormationResource struct { +type Resource struct { // ResourceArn AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSLakeFormationResource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationResource) AWSCloudFormationType() string { +func (r *Resource) AWSCloudFormationType() string { return "AWS::LakeFormation::Resource" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationResource) DependsOn() []string { +func (r *Resource) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationResource) SetDependsOn(dependencies []string) { +func (r *Resource) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationResource) Metadata() map[string]interface{} { +func (r *Resource) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationResource) SetMetadata(metadata map[string]interface{}) { +func (r *Resource) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationResource) DeletionPolicy() policies.DeletionPolicy { +func (r *Resource) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationResource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Resource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLakeFormationResource) MarshalJSON() ([]byte, error) { - type Properties AWSLakeFormationResource +func (r Resource) MarshalJSON() ([]byte, error) { + type Properties Resource return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSLakeFormationResource) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLakeFormationResource) UnmarshalJSON(b []byte) error { - type Properties AWSLakeFormationResource +func (r *Resource) UnmarshalJSON(b []byte) error { + type Properties Resource res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSLakeFormationResource) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLakeFormationResource(*res.Properties) + *r = Resource(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-lambda-alias.go b/cloudformation/lambda/aws-lambda-alias.go similarity index 82% rename from cloudformation/resources/aws-lambda-alias.go rename to cloudformation/lambda/aws-lambda-alias.go index 1ca48cc5c5..3e66387007 100644 --- a/cloudformation/resources/aws-lambda-alias.go +++ b/cloudformation/lambda/aws-lambda-alias.go @@ -1,15 +1,16 @@ -package resources +package lambda import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLambdaAlias AWS CloudFormation Resource (AWS::Lambda::Alias) +// Alias AWS CloudFormation Resource (AWS::Lambda::Alias) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html -type AWSLambdaAlias struct { +type Alias struct { // Description AWS CloudFormation Property // Required: false @@ -34,7 +35,7 @@ type AWSLambdaAlias struct { // RoutingConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-routingconfig - RoutingConfig *AWSLambdaAlias_AliasRoutingConfiguration `json:"RoutingConfig,omitempty"` + RoutingConfig *Alias_AliasRoutingConfiguration `json:"RoutingConfig,omitempty"` // _updatePolicy represents a CloudFormation UpdatePolicy _updatePolicy *policies.UpdatePolicy @@ -50,56 +51,56 @@ type AWSLambdaAlias struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaAlias) AWSCloudFormationType() string { +func (r *Alias) AWSCloudFormationType() string { return "AWS::Lambda::Alias" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaAlias) DependsOn() []string { +func (r *Alias) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaAlias) SetDependsOn(dependencies []string) { +func (r *Alias) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaAlias) Metadata() map[string]interface{} { +func (r *Alias) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaAlias) SetMetadata(metadata map[string]interface{}) { +func (r *Alias) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaAlias) DeletionPolicy() policies.DeletionPolicy { +func (r *Alias) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaAlias) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alias) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // SetUpdatePolicy applies an AWS CloudFormation UpdatePolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html -func (r *AWSLambdaAlias) SetUpdatePolicy(policy *policies.UpdatePolicy) { +func (r *Alias) SetUpdatePolicy(policy *policies.UpdatePolicy) { r._updatePolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLambdaAlias) MarshalJSON() ([]byte, error) { - type Properties AWSLambdaAlias +func (r Alias) MarshalJSON() ([]byte, error) { + type Properties Alias return json.Marshal(&struct { Type string Properties Properties @@ -119,8 +120,8 @@ func (r AWSLambdaAlias) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLambdaAlias) UnmarshalJSON(b []byte) error { - type Properties AWSLambdaAlias +func (r *Alias) UnmarshalJSON(b []byte) error { + type Properties Alias res := &struct { Type string Properties *Properties @@ -139,7 +140,7 @@ func (r *AWSLambdaAlias) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLambdaAlias(*res.Properties) + *r = Alias(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/lambda/aws-lambda-alias_aliasroutingconfiguration.go b/cloudformation/lambda/aws-lambda-alias_aliasroutingconfiguration.go new file mode 100644 index 0000000000..1e3668e06f --- /dev/null +++ b/cloudformation/lambda/aws-lambda-alias_aliasroutingconfiguration.go @@ -0,0 +1,65 @@ +package lambda + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Alias_AliasRoutingConfiguration AWS CloudFormation Resource (AWS::Lambda::Alias.AliasRoutingConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html +type Alias_AliasRoutingConfiguration struct { + + // AdditionalVersionWeights AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html#cfn-lambda-alias-aliasroutingconfiguration-additionalversionweights + AdditionalVersionWeights []Alias_VersionWeight `json:"AdditionalVersionWeights,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Alias_AliasRoutingConfiguration) AWSCloudFormationType() string { + return "AWS::Lambda::Alias.AliasRoutingConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Alias_AliasRoutingConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Alias_AliasRoutingConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Alias_AliasRoutingConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Alias_AliasRoutingConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Alias_AliasRoutingConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Alias_AliasRoutingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-lambda-alias_versionweight.go b/cloudformation/lambda/aws-lambda-alias_versionweight.go similarity index 75% rename from cloudformation/resources/aws-lambda-alias_versionweight.go rename to cloudformation/lambda/aws-lambda-alias_versionweight.go index aec2aea291..468fbc6c55 100644 --- a/cloudformation/resources/aws-lambda-alias_versionweight.go +++ b/cloudformation/lambda/aws-lambda-alias_versionweight.go @@ -1,10 +1,12 @@ -package resources +package lambda -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLambdaAlias_VersionWeight AWS CloudFormation Resource (AWS::Lambda::Alias.VersionWeight) +// Alias_VersionWeight AWS CloudFormation Resource (AWS::Lambda::Alias.VersionWeight) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html -type AWSLambdaAlias_VersionWeight struct { +type Alias_VersionWeight struct { // FunctionVersion AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSLambdaAlias_VersionWeight struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaAlias_VersionWeight) AWSCloudFormationType() string { +func (r *Alias_VersionWeight) AWSCloudFormationType() string { return "AWS::Lambda::Alias.VersionWeight" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaAlias_VersionWeight) DependsOn() []string { +func (r *Alias_VersionWeight) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaAlias_VersionWeight) SetDependsOn(dependencies []string) { +func (r *Alias_VersionWeight) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaAlias_VersionWeight) Metadata() map[string]interface{} { +func (r *Alias_VersionWeight) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaAlias_VersionWeight) SetMetadata(metadata map[string]interface{}) { +func (r *Alias_VersionWeight) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaAlias_VersionWeight) DeletionPolicy() policies.DeletionPolicy { +func (r *Alias_VersionWeight) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaAlias_VersionWeight) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Alias_VersionWeight) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lambda-eventsourcemapping.go b/cloudformation/lambda/aws-lambda-eventsourcemapping.go similarity index 82% rename from cloudformation/resources/aws-lambda-eventsourcemapping.go rename to cloudformation/lambda/aws-lambda-eventsourcemapping.go index 101c9cb7c3..64f00267e1 100644 --- a/cloudformation/resources/aws-lambda-eventsourcemapping.go +++ b/cloudformation/lambda/aws-lambda-eventsourcemapping.go @@ -1,15 +1,16 @@ -package resources +package lambda import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLambdaEventSourceMapping AWS CloudFormation Resource (AWS::Lambda::EventSourceMapping) +// EventSourceMapping AWS CloudFormation Resource (AWS::Lambda::EventSourceMapping) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html -type AWSLambdaEventSourceMapping struct { +type EventSourceMapping struct { // BatchSize AWS CloudFormation Property // Required: false @@ -52,50 +53,50 @@ type AWSLambdaEventSourceMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaEventSourceMapping) AWSCloudFormationType() string { +func (r *EventSourceMapping) AWSCloudFormationType() string { return "AWS::Lambda::EventSourceMapping" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaEventSourceMapping) DependsOn() []string { +func (r *EventSourceMapping) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaEventSourceMapping) SetDependsOn(dependencies []string) { +func (r *EventSourceMapping) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaEventSourceMapping) Metadata() map[string]interface{} { +func (r *EventSourceMapping) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaEventSourceMapping) SetMetadata(metadata map[string]interface{}) { +func (r *EventSourceMapping) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaEventSourceMapping) DeletionPolicy() policies.DeletionPolicy { +func (r *EventSourceMapping) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaEventSourceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EventSourceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLambdaEventSourceMapping) MarshalJSON() ([]byte, error) { - type Properties AWSLambdaEventSourceMapping +func (r EventSourceMapping) MarshalJSON() ([]byte, error) { + type Properties EventSourceMapping return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSLambdaEventSourceMapping) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLambdaEventSourceMapping) UnmarshalJSON(b []byte) error { - type Properties AWSLambdaEventSourceMapping +func (r *EventSourceMapping) UnmarshalJSON(b []byte) error { + type Properties EventSourceMapping res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSLambdaEventSourceMapping) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLambdaEventSourceMapping(*res.Properties) + *r = EventSourceMapping(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-lambda-function.go b/cloudformation/lambda/aws-lambda-function.go similarity index 84% rename from cloudformation/resources/aws-lambda-function.go rename to cloudformation/lambda/aws-lambda-function.go index 3448f6894c..5ba1f931fa 100644 --- a/cloudformation/resources/aws-lambda-function.go +++ b/cloudformation/lambda/aws-lambda-function.go @@ -1,25 +1,27 @@ -package resources +package lambda import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSLambdaFunction AWS CloudFormation Resource (AWS::Lambda::Function) +// Function AWS CloudFormation Resource (AWS::Lambda::Function) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html -type AWSLambdaFunction struct { +type Function struct { // Code AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code - Code *AWSLambdaFunction_Code `json:"Code,omitempty"` + Code *Function_Code `json:"Code,omitempty"` // DeadLetterConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-deadletterconfig - DeadLetterConfig *AWSLambdaFunction_DeadLetterConfig `json:"DeadLetterConfig,omitempty"` + DeadLetterConfig *Function_DeadLetterConfig `json:"DeadLetterConfig,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSLambdaFunction struct { // Environment AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-environment - Environment *AWSLambdaFunction_Environment `json:"Environment,omitempty"` + Environment *Function_Environment `json:"Environment,omitempty"` // FunctionName AWS CloudFormation Property // Required: false @@ -74,7 +76,7 @@ type AWSLambdaFunction struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Timeout AWS CloudFormation Property // Required: false @@ -84,12 +86,12 @@ type AWSLambdaFunction struct { // TracingConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig - TracingConfig *AWSLambdaFunction_TracingConfig `json:"TracingConfig,omitempty"` + TracingConfig *Function_TracingConfig `json:"TracingConfig,omitempty"` // VpcConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-vpcconfig - VpcConfig *AWSLambdaFunction_VpcConfig `json:"VpcConfig,omitempty"` + VpcConfig *Function_VpcConfig `json:"VpcConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -102,50 +104,50 @@ type AWSLambdaFunction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction) AWSCloudFormationType() string { +func (r *Function) AWSCloudFormationType() string { return "AWS::Lambda::Function" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction) DependsOn() []string { +func (r *Function) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction) SetDependsOn(dependencies []string) { +func (r *Function) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction) Metadata() map[string]interface{} { +func (r *Function) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction) SetMetadata(metadata map[string]interface{}) { +func (r *Function) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction) DeletionPolicy() policies.DeletionPolicy { +func (r *Function) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLambdaFunction) MarshalJSON() ([]byte, error) { - type Properties AWSLambdaFunction +func (r Function) MarshalJSON() ([]byte, error) { + type Properties Function return json.Marshal(&struct { Type string Properties Properties @@ -163,8 +165,8 @@ func (r AWSLambdaFunction) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLambdaFunction) UnmarshalJSON(b []byte) error { - type Properties AWSLambdaFunction +func (r *Function) UnmarshalJSON(b []byte) error { + type Properties Function res := &struct { Type string Properties *Properties @@ -183,7 +185,7 @@ func (r *AWSLambdaFunction) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLambdaFunction(*res.Properties) + *r = Function(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-lambda-function_code.go b/cloudformation/lambda/aws-lambda-function_code.go similarity index 79% rename from cloudformation/resources/aws-lambda-function_code.go rename to cloudformation/lambda/aws-lambda-function_code.go index 9a170d89c3..2fda4bd265 100644 --- a/cloudformation/resources/aws-lambda-function_code.go +++ b/cloudformation/lambda/aws-lambda-function_code.go @@ -1,10 +1,12 @@ -package resources +package lambda -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLambdaFunction_Code AWS CloudFormation Resource (AWS::Lambda::Function.Code) +// Function_Code AWS CloudFormation Resource (AWS::Lambda::Function.Code) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html -type AWSLambdaFunction_Code struct { +type Function_Code struct { // S3Bucket AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSLambdaFunction_Code struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction_Code) AWSCloudFormationType() string { +func (r *Function_Code) AWSCloudFormationType() string { return "AWS::Lambda::Function.Code" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_Code) DependsOn() []string { +func (r *Function_Code) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_Code) SetDependsOn(dependencies []string) { +func (r *Function_Code) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_Code) Metadata() map[string]interface{} { +func (r *Function_Code) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_Code) SetMetadata(metadata map[string]interface{}) { +func (r *Function_Code) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_Code) DeletionPolicy() policies.DeletionPolicy { +func (r *Function_Code) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_Code) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_Code) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/lambda/aws-lambda-function_deadletterconfig.go b/cloudformation/lambda/aws-lambda-function_deadletterconfig.go new file mode 100644 index 0000000000..31ede23166 --- /dev/null +++ b/cloudformation/lambda/aws-lambda-function_deadletterconfig.go @@ -0,0 +1,65 @@ +package lambda + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_DeadLetterConfig AWS CloudFormation Resource (AWS::Lambda::Function.DeadLetterConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html +type Function_DeadLetterConfig struct { + + // TargetArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html#cfn-lambda-function-deadletterconfig-targetarn + TargetArn string `json:"TargetArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_DeadLetterConfig) AWSCloudFormationType() string { + return "AWS::Lambda::Function.DeadLetterConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_DeadLetterConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_DeadLetterConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_DeadLetterConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_DeadLetterConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_DeadLetterConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_DeadLetterConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/lambda/aws-lambda-function_environment.go b/cloudformation/lambda/aws-lambda-function_environment.go new file mode 100644 index 0000000000..8832903875 --- /dev/null +++ b/cloudformation/lambda/aws-lambda-function_environment.go @@ -0,0 +1,65 @@ +package lambda + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_Environment AWS CloudFormation Resource (AWS::Lambda::Function.Environment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html +type Function_Environment struct { + + // Variables AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html#cfn-lambda-function-environment-variables + Variables map[string]string `json:"Variables,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_Environment) AWSCloudFormationType() string { + return "AWS::Lambda::Function.Environment" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_Environment) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_Environment) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_Environment) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_Environment) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_Environment) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/lambda/aws-lambda-function_tracingconfig.go b/cloudformation/lambda/aws-lambda-function_tracingconfig.go new file mode 100644 index 0000000000..f265c99f6b --- /dev/null +++ b/cloudformation/lambda/aws-lambda-function_tracingconfig.go @@ -0,0 +1,65 @@ +package lambda + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_TracingConfig AWS CloudFormation Resource (AWS::Lambda::Function.TracingConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html +type Function_TracingConfig struct { + + // Mode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html#cfn-lambda-function-tracingconfig-mode + Mode string `json:"Mode,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_TracingConfig) AWSCloudFormationType() string { + return "AWS::Lambda::Function.TracingConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_TracingConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_TracingConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_TracingConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_TracingConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_TracingConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_TracingConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-lambda-function_vpcconfig.go b/cloudformation/lambda/aws-lambda-function_vpcconfig.go similarity index 75% rename from cloudformation/resources/aws-lambda-function_vpcconfig.go rename to cloudformation/lambda/aws-lambda-function_vpcconfig.go index 725c677656..747dc02016 100644 --- a/cloudformation/resources/aws-lambda-function_vpcconfig.go +++ b/cloudformation/lambda/aws-lambda-function_vpcconfig.go @@ -1,10 +1,12 @@ -package resources +package lambda -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLambdaFunction_VpcConfig AWS CloudFormation Resource (AWS::Lambda::Function.VpcConfig) +// Function_VpcConfig AWS CloudFormation Resource (AWS::Lambda::Function.VpcConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html -type AWSLambdaFunction_VpcConfig struct { +type Function_VpcConfig struct { // SecurityGroupIds AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSLambdaFunction_VpcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction_VpcConfig) AWSCloudFormationType() string { +func (r *Function_VpcConfig) AWSCloudFormationType() string { return "AWS::Lambda::Function.VpcConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_VpcConfig) DependsOn() []string { +func (r *Function_VpcConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_VpcConfig) SetDependsOn(dependencies []string) { +func (r *Function_VpcConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_VpcConfig) Metadata() map[string]interface{} { +func (r *Function_VpcConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_VpcConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Function_VpcConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_VpcConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Function_VpcConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lambda-layerversion.go b/cloudformation/lambda/aws-lambda-layerversion.go similarity index 81% rename from cloudformation/resources/aws-lambda-layerversion.go rename to cloudformation/lambda/aws-lambda-layerversion.go index ec894d0cc1..a22ae2238a 100644 --- a/cloudformation/resources/aws-lambda-layerversion.go +++ b/cloudformation/lambda/aws-lambda-layerversion.go @@ -1,15 +1,16 @@ -package resources +package lambda import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLambdaLayerVersion AWS CloudFormation Resource (AWS::Lambda::LayerVersion) +// LayerVersion AWS CloudFormation Resource (AWS::Lambda::LayerVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html -type AWSLambdaLayerVersion struct { +type LayerVersion struct { // CompatibleRuntimes AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSLambdaLayerVersion struct { // Content AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-content - Content *AWSLambdaLayerVersion_Content `json:"Content,omitempty"` + Content *LayerVersion_Content `json:"Content,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSLambdaLayerVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaLayerVersion) AWSCloudFormationType() string { +func (r *LayerVersion) AWSCloudFormationType() string { return "AWS::Lambda::LayerVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaLayerVersion) DependsOn() []string { +func (r *LayerVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaLayerVersion) SetDependsOn(dependencies []string) { +func (r *LayerVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaLayerVersion) Metadata() map[string]interface{} { +func (r *LayerVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaLayerVersion) SetMetadata(metadata map[string]interface{}) { +func (r *LayerVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaLayerVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *LayerVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaLayerVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LayerVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLambdaLayerVersion) MarshalJSON() ([]byte, error) { - type Properties AWSLambdaLayerVersion +func (r LayerVersion) MarshalJSON() ([]byte, error) { + type Properties LayerVersion return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSLambdaLayerVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLambdaLayerVersion) UnmarshalJSON(b []byte) error { - type Properties AWSLambdaLayerVersion +func (r *LayerVersion) UnmarshalJSON(b []byte) error { + type Properties LayerVersion res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSLambdaLayerVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLambdaLayerVersion(*res.Properties) + *r = LayerVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-lambda-layerversion_content.go b/cloudformation/lambda/aws-lambda-layerversion_content.go similarity index 76% rename from cloudformation/resources/aws-lambda-layerversion_content.go rename to cloudformation/lambda/aws-lambda-layerversion_content.go index c6c7920335..fe232c220d 100644 --- a/cloudformation/resources/aws-lambda-layerversion_content.go +++ b/cloudformation/lambda/aws-lambda-layerversion_content.go @@ -1,10 +1,12 @@ -package resources +package lambda -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLambdaLayerVersion_Content AWS CloudFormation Resource (AWS::Lambda::LayerVersion.Content) +// LayerVersion_Content AWS CloudFormation Resource (AWS::Lambda::LayerVersion.Content) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html -type AWSLambdaLayerVersion_Content struct { +type LayerVersion_Content struct { // S3Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSLambdaLayerVersion_Content struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaLayerVersion_Content) AWSCloudFormationType() string { +func (r *LayerVersion_Content) AWSCloudFormationType() string { return "AWS::Lambda::LayerVersion.Content" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaLayerVersion_Content) DependsOn() []string { +func (r *LayerVersion_Content) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaLayerVersion_Content) SetDependsOn(dependencies []string) { +func (r *LayerVersion_Content) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaLayerVersion_Content) Metadata() map[string]interface{} { +func (r *LayerVersion_Content) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaLayerVersion_Content) SetMetadata(metadata map[string]interface{}) { +func (r *LayerVersion_Content) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaLayerVersion_Content) DeletionPolicy() policies.DeletionPolicy { +func (r *LayerVersion_Content) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaLayerVersion_Content) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LayerVersion_Content) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lambda-layerversionpermission.go b/cloudformation/lambda/aws-lambda-layerversionpermission.go similarity index 80% rename from cloudformation/resources/aws-lambda-layerversionpermission.go rename to cloudformation/lambda/aws-lambda-layerversionpermission.go index 534af06027..21d2c1df2a 100644 --- a/cloudformation/resources/aws-lambda-layerversionpermission.go +++ b/cloudformation/lambda/aws-lambda-layerversionpermission.go @@ -1,15 +1,16 @@ -package resources +package lambda import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLambdaLayerVersionPermission AWS CloudFormation Resource (AWS::Lambda::LayerVersionPermission) +// LayerVersionPermission AWS CloudFormation Resource (AWS::Lambda::LayerVersionPermission) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html -type AWSLambdaLayerVersionPermission struct { +type LayerVersionPermission struct { // Action AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSLambdaLayerVersionPermission struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaLayerVersionPermission) AWSCloudFormationType() string { +func (r *LayerVersionPermission) AWSCloudFormationType() string { return "AWS::Lambda::LayerVersionPermission" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaLayerVersionPermission) DependsOn() []string { +func (r *LayerVersionPermission) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaLayerVersionPermission) SetDependsOn(dependencies []string) { +func (r *LayerVersionPermission) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaLayerVersionPermission) Metadata() map[string]interface{} { +func (r *LayerVersionPermission) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaLayerVersionPermission) SetMetadata(metadata map[string]interface{}) { +func (r *LayerVersionPermission) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaLayerVersionPermission) DeletionPolicy() policies.DeletionPolicy { +func (r *LayerVersionPermission) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaLayerVersionPermission) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LayerVersionPermission) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLambdaLayerVersionPermission) MarshalJSON() ([]byte, error) { - type Properties AWSLambdaLayerVersionPermission +func (r LayerVersionPermission) MarshalJSON() ([]byte, error) { + type Properties LayerVersionPermission return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSLambdaLayerVersionPermission) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLambdaLayerVersionPermission) UnmarshalJSON(b []byte) error { - type Properties AWSLambdaLayerVersionPermission +func (r *LayerVersionPermission) UnmarshalJSON(b []byte) error { + type Properties LayerVersionPermission res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSLambdaLayerVersionPermission) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLambdaLayerVersionPermission(*res.Properties) + *r = LayerVersionPermission(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-lambda-permission.go b/cloudformation/lambda/aws-lambda-permission.go similarity index 84% rename from cloudformation/resources/aws-lambda-permission.go rename to cloudformation/lambda/aws-lambda-permission.go index af0089018a..cdb52e5c13 100644 --- a/cloudformation/resources/aws-lambda-permission.go +++ b/cloudformation/lambda/aws-lambda-permission.go @@ -1,15 +1,16 @@ -package resources +package lambda import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLambdaPermission AWS CloudFormation Resource (AWS::Lambda::Permission) +// Permission AWS CloudFormation Resource (AWS::Lambda::Permission) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html -type AWSLambdaPermission struct { +type Permission struct { // Action AWS CloudFormation Property // Required: true @@ -52,50 +53,50 @@ type AWSLambdaPermission struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaPermission) AWSCloudFormationType() string { +func (r *Permission) AWSCloudFormationType() string { return "AWS::Lambda::Permission" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaPermission) DependsOn() []string { +func (r *Permission) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaPermission) SetDependsOn(dependencies []string) { +func (r *Permission) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaPermission) Metadata() map[string]interface{} { +func (r *Permission) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaPermission) SetMetadata(metadata map[string]interface{}) { +func (r *Permission) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaPermission) DeletionPolicy() policies.DeletionPolicy { +func (r *Permission) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaPermission) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Permission) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLambdaPermission) MarshalJSON() ([]byte, error) { - type Properties AWSLambdaPermission +func (r Permission) MarshalJSON() ([]byte, error) { + type Properties Permission return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSLambdaPermission) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLambdaPermission) UnmarshalJSON(b []byte) error { - type Properties AWSLambdaPermission +func (r *Permission) UnmarshalJSON(b []byte) error { + type Properties Permission res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSLambdaPermission) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLambdaPermission(*res.Properties) + *r = Permission(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-lambda-version.go b/cloudformation/lambda/aws-lambda-version.go similarity index 82% rename from cloudformation/resources/aws-lambda-version.go rename to cloudformation/lambda/aws-lambda-version.go index ca69d235d3..da0f707ab4 100644 --- a/cloudformation/resources/aws-lambda-version.go +++ b/cloudformation/lambda/aws-lambda-version.go @@ -1,15 +1,16 @@ -package resources +package lambda import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLambdaVersion AWS CloudFormation Resource (AWS::Lambda::Version) +// Version AWS CloudFormation Resource (AWS::Lambda::Version) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html -type AWSLambdaVersion struct { +type Version struct { // CodeSha256 AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSLambdaVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaVersion) AWSCloudFormationType() string { +func (r *Version) AWSCloudFormationType() string { return "AWS::Lambda::Version" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaVersion) DependsOn() []string { +func (r *Version) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaVersion) SetDependsOn(dependencies []string) { +func (r *Version) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaVersion) Metadata() map[string]interface{} { +func (r *Version) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaVersion) SetMetadata(metadata map[string]interface{}) { +func (r *Version) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *Version) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Version) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLambdaVersion) MarshalJSON() ([]byte, error) { - type Properties AWSLambdaVersion +func (r Version) MarshalJSON() ([]byte, error) { + type Properties Version return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSLambdaVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLambdaVersion) UnmarshalJSON(b []byte) error { - type Properties AWSLambdaVersion +func (r *Version) UnmarshalJSON(b []byte) error { + type Properties Version res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSLambdaVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLambdaVersion(*res.Properties) + *r = Version(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-logs-destination.go b/cloudformation/logs/aws-logs-destination.go similarity index 82% rename from cloudformation/resources/aws-logs-destination.go rename to cloudformation/logs/aws-logs-destination.go index 38ed6ed744..e897bdc519 100644 --- a/cloudformation/resources/aws-logs-destination.go +++ b/cloudformation/logs/aws-logs-destination.go @@ -1,15 +1,16 @@ -package resources +package logs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLogsDestination AWS CloudFormation Resource (AWS::Logs::Destination) +// Destination AWS CloudFormation Resource (AWS::Logs::Destination) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html -type AWSLogsDestination struct { +type Destination struct { // DestinationName AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSLogsDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLogsDestination) AWSCloudFormationType() string { +func (r *Destination) AWSCloudFormationType() string { return "AWS::Logs::Destination" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsDestination) DependsOn() []string { +func (r *Destination) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsDestination) SetDependsOn(dependencies []string) { +func (r *Destination) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsDestination) Metadata() map[string]interface{} { +func (r *Destination) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsDestination) SetMetadata(metadata map[string]interface{}) { +func (r *Destination) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsDestination) DeletionPolicy() policies.DeletionPolicy { +func (r *Destination) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Destination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLogsDestination) MarshalJSON() ([]byte, error) { - type Properties AWSLogsDestination +func (r Destination) MarshalJSON() ([]byte, error) { + type Properties Destination return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSLogsDestination) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLogsDestination) UnmarshalJSON(b []byte) error { - type Properties AWSLogsDestination +func (r *Destination) UnmarshalJSON(b []byte) error { + type Properties Destination res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSLogsDestination) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLogsDestination(*res.Properties) + *r = Destination(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-logs-loggroup.go b/cloudformation/logs/aws-logs-loggroup.go similarity index 81% rename from cloudformation/resources/aws-logs-loggroup.go rename to cloudformation/logs/aws-logs-loggroup.go index d015886b29..0024b53cd0 100644 --- a/cloudformation/resources/aws-logs-loggroup.go +++ b/cloudformation/logs/aws-logs-loggroup.go @@ -1,15 +1,16 @@ -package resources +package logs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLogsLogGroup AWS CloudFormation Resource (AWS::Logs::LogGroup) +// LogGroup AWS CloudFormation Resource (AWS::Logs::LogGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html -type AWSLogsLogGroup struct { +type LogGroup struct { // LogGroupName AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSLogsLogGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLogsLogGroup) AWSCloudFormationType() string { +func (r *LogGroup) AWSCloudFormationType() string { return "AWS::Logs::LogGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsLogGroup) DependsOn() []string { +func (r *LogGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsLogGroup) SetDependsOn(dependencies []string) { +func (r *LogGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsLogGroup) Metadata() map[string]interface{} { +func (r *LogGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsLogGroup) SetMetadata(metadata map[string]interface{}) { +func (r *LogGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsLogGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *LogGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsLogGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LogGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLogsLogGroup) MarshalJSON() ([]byte, error) { - type Properties AWSLogsLogGroup +func (r LogGroup) MarshalJSON() ([]byte, error) { + type Properties LogGroup return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSLogsLogGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLogsLogGroup) UnmarshalJSON(b []byte) error { - type Properties AWSLogsLogGroup +func (r *LogGroup) UnmarshalJSON(b []byte) error { + type Properties LogGroup res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSLogsLogGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLogsLogGroup(*res.Properties) + *r = LogGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-logs-logstream.go b/cloudformation/logs/aws-logs-logstream.go similarity index 81% rename from cloudformation/resources/aws-logs-logstream.go rename to cloudformation/logs/aws-logs-logstream.go index c19a490e04..fdb223a892 100644 --- a/cloudformation/resources/aws-logs-logstream.go +++ b/cloudformation/logs/aws-logs-logstream.go @@ -1,15 +1,16 @@ -package resources +package logs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLogsLogStream AWS CloudFormation Resource (AWS::Logs::LogStream) +// LogStream AWS CloudFormation Resource (AWS::Logs::LogStream) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html -type AWSLogsLogStream struct { +type LogStream struct { // LogGroupName AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSLogsLogStream struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLogsLogStream) AWSCloudFormationType() string { +func (r *LogStream) AWSCloudFormationType() string { return "AWS::Logs::LogStream" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsLogStream) DependsOn() []string { +func (r *LogStream) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsLogStream) SetDependsOn(dependencies []string) { +func (r *LogStream) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsLogStream) Metadata() map[string]interface{} { +func (r *LogStream) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsLogStream) SetMetadata(metadata map[string]interface{}) { +func (r *LogStream) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsLogStream) DeletionPolicy() policies.DeletionPolicy { +func (r *LogStream) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsLogStream) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LogStream) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLogsLogStream) MarshalJSON() ([]byte, error) { - type Properties AWSLogsLogStream +func (r LogStream) MarshalJSON() ([]byte, error) { + type Properties LogStream return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSLogsLogStream) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLogsLogStream) UnmarshalJSON(b []byte) error { - type Properties AWSLogsLogStream +func (r *LogStream) UnmarshalJSON(b []byte) error { + type Properties LogStream res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSLogsLogStream) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLogsLogStream(*res.Properties) + *r = LogStream(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-logs-metricfilter.go b/cloudformation/logs/aws-logs-metricfilter.go similarity index 79% rename from cloudformation/resources/aws-logs-metricfilter.go rename to cloudformation/logs/aws-logs-metricfilter.go index 69c5d5f952..caa7810f06 100644 --- a/cloudformation/resources/aws-logs-metricfilter.go +++ b/cloudformation/logs/aws-logs-metricfilter.go @@ -1,15 +1,16 @@ -package resources +package logs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLogsMetricFilter AWS CloudFormation Resource (AWS::Logs::MetricFilter) +// MetricFilter AWS CloudFormation Resource (AWS::Logs::MetricFilter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html -type AWSLogsMetricFilter struct { +type MetricFilter struct { // FilterPattern AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSLogsMetricFilter struct { // MetricTransformations AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-metrictransformations - MetricTransformations []AWSLogsMetricFilter_MetricTransformation `json:"MetricTransformations,omitempty"` + MetricTransformations []MetricFilter_MetricTransformation `json:"MetricTransformations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSLogsMetricFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLogsMetricFilter) AWSCloudFormationType() string { +func (r *MetricFilter) AWSCloudFormationType() string { return "AWS::Logs::MetricFilter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsMetricFilter) DependsOn() []string { +func (r *MetricFilter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsMetricFilter) SetDependsOn(dependencies []string) { +func (r *MetricFilter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsMetricFilter) Metadata() map[string]interface{} { +func (r *MetricFilter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsMetricFilter) SetMetadata(metadata map[string]interface{}) { +func (r *MetricFilter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsMetricFilter) DeletionPolicy() policies.DeletionPolicy { +func (r *MetricFilter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsMetricFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MetricFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLogsMetricFilter) MarshalJSON() ([]byte, error) { - type Properties AWSLogsMetricFilter +func (r MetricFilter) MarshalJSON() ([]byte, error) { + type Properties MetricFilter return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSLogsMetricFilter) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLogsMetricFilter) UnmarshalJSON(b []byte) error { - type Properties AWSLogsMetricFilter +func (r *MetricFilter) UnmarshalJSON(b []byte) error { + type Properties MetricFilter res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSLogsMetricFilter) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLogsMetricFilter(*res.Properties) + *r = MetricFilter(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-logs-metricfilter_metrictransformation.go b/cloudformation/logs/aws-logs-metricfilter_metrictransformation.go similarity index 77% rename from cloudformation/resources/aws-logs-metricfilter_metrictransformation.go rename to cloudformation/logs/aws-logs-metricfilter_metrictransformation.go index 4af97f161b..0234e2c4a2 100644 --- a/cloudformation/resources/aws-logs-metricfilter_metrictransformation.go +++ b/cloudformation/logs/aws-logs-metricfilter_metrictransformation.go @@ -1,10 +1,12 @@ -package resources +package logs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLogsMetricFilter_MetricTransformation AWS CloudFormation Resource (AWS::Logs::MetricFilter.MetricTransformation) +// MetricFilter_MetricTransformation AWS CloudFormation Resource (AWS::Logs::MetricFilter.MetricTransformation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html -type AWSLogsMetricFilter_MetricTransformation struct { +type MetricFilter_MetricTransformation struct { // DefaultValue AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSLogsMetricFilter_MetricTransformation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLogsMetricFilter_MetricTransformation) AWSCloudFormationType() string { +func (r *MetricFilter_MetricTransformation) AWSCloudFormationType() string { return "AWS::Logs::MetricFilter.MetricTransformation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsMetricFilter_MetricTransformation) DependsOn() []string { +func (r *MetricFilter_MetricTransformation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsMetricFilter_MetricTransformation) SetDependsOn(dependencies []string) { +func (r *MetricFilter_MetricTransformation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsMetricFilter_MetricTransformation) Metadata() map[string]interface{} { +func (r *MetricFilter_MetricTransformation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsMetricFilter_MetricTransformation) SetMetadata(metadata map[string]interface{}) { +func (r *MetricFilter_MetricTransformation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsMetricFilter_MetricTransformation) DeletionPolicy() policies.DeletionPolicy { +func (r *MetricFilter_MetricTransformation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsMetricFilter_MetricTransformation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MetricFilter_MetricTransformation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-logs-subscriptionfilter.go b/cloudformation/logs/aws-logs-subscriptionfilter.go similarity index 81% rename from cloudformation/resources/aws-logs-subscriptionfilter.go rename to cloudformation/logs/aws-logs-subscriptionfilter.go index da2dc0e9d2..40866698ec 100644 --- a/cloudformation/resources/aws-logs-subscriptionfilter.go +++ b/cloudformation/logs/aws-logs-subscriptionfilter.go @@ -1,15 +1,16 @@ -package resources +package logs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSLogsSubscriptionFilter AWS CloudFormation Resource (AWS::Logs::SubscriptionFilter) +// SubscriptionFilter AWS CloudFormation Resource (AWS::Logs::SubscriptionFilter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html -type AWSLogsSubscriptionFilter struct { +type SubscriptionFilter struct { // DestinationArn AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSLogsSubscriptionFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLogsSubscriptionFilter) AWSCloudFormationType() string { +func (r *SubscriptionFilter) AWSCloudFormationType() string { return "AWS::Logs::SubscriptionFilter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsSubscriptionFilter) DependsOn() []string { +func (r *SubscriptionFilter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLogsSubscriptionFilter) SetDependsOn(dependencies []string) { +func (r *SubscriptionFilter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsSubscriptionFilter) Metadata() map[string]interface{} { +func (r *SubscriptionFilter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLogsSubscriptionFilter) SetMetadata(metadata map[string]interface{}) { +func (r *SubscriptionFilter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsSubscriptionFilter) DeletionPolicy() policies.DeletionPolicy { +func (r *SubscriptionFilter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLogsSubscriptionFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubscriptionFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSLogsSubscriptionFilter) MarshalJSON() ([]byte, error) { - type Properties AWSLogsSubscriptionFilter +func (r SubscriptionFilter) MarshalJSON() ([]byte, error) { + type Properties SubscriptionFilter return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSLogsSubscriptionFilter) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSLogsSubscriptionFilter) UnmarshalJSON(b []byte) error { - type Properties AWSLogsSubscriptionFilter +func (r *SubscriptionFilter) UnmarshalJSON(b []byte) error { + type Properties SubscriptionFilter res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSLogsSubscriptionFilter) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSLogsSubscriptionFilter(*res.Properties) + *r = SubscriptionFilter(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-managedblockchain-member.go b/cloudformation/managedblockchain/aws-managedblockchain-member.go similarity index 77% rename from cloudformation/resources/aws-managedblockchain-member.go rename to cloudformation/managedblockchain/aws-managedblockchain-member.go index 9cf0e462ad..a29b03215b 100644 --- a/cloudformation/resources/aws-managedblockchain-member.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member.go @@ -1,15 +1,16 @@ -package resources +package managedblockchain import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSManagedBlockchainMember AWS CloudFormation Resource (AWS::ManagedBlockchain::Member) +// Member AWS CloudFormation Resource (AWS::ManagedBlockchain::Member) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html -type AWSManagedBlockchainMember struct { +type Member struct { // InvitationId AWS CloudFormation Property // Required: false @@ -19,12 +20,12 @@ type AWSManagedBlockchainMember struct { // MemberConfiguration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-memberconfiguration - MemberConfiguration *AWSManagedBlockchainMember_MemberConfiguration `json:"MemberConfiguration,omitempty"` + MemberConfiguration *Member_MemberConfiguration `json:"MemberConfiguration,omitempty"` // NetworkConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-networkconfiguration - NetworkConfiguration *AWSManagedBlockchainMember_NetworkConfiguration `json:"NetworkConfiguration,omitempty"` + NetworkConfiguration *Member_NetworkConfiguration `json:"NetworkConfiguration,omitempty"` // NetworkId AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSManagedBlockchainMember struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember) AWSCloudFormationType() string { +func (r *Member) AWSCloudFormationType() string { return "AWS::ManagedBlockchain::Member" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember) DependsOn() []string { +func (r *Member) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember) SetDependsOn(dependencies []string) { +func (r *Member) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember) Metadata() map[string]interface{} { +func (r *Member) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember) SetMetadata(metadata map[string]interface{}) { +func (r *Member) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember) DeletionPolicy() policies.DeletionPolicy { +func (r *Member) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Member) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSManagedBlockchainMember) MarshalJSON() ([]byte, error) { - type Properties AWSManagedBlockchainMember +func (r Member) MarshalJSON() ([]byte, error) { + type Properties Member return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSManagedBlockchainMember) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSManagedBlockchainMember) UnmarshalJSON(b []byte) error { - type Properties AWSManagedBlockchainMember +func (r *Member) UnmarshalJSON(b []byte) error { + type Properties Member res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSManagedBlockchainMember) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSManagedBlockchainMember(*res.Properties) + *r = Member(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/managedblockchain/aws-managedblockchain-member_approvalthresholdpolicy.go b/cloudformation/managedblockchain/aws-managedblockchain-member_approvalthresholdpolicy.go new file mode 100644 index 0000000000..936c4dd794 --- /dev/null +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_approvalthresholdpolicy.go @@ -0,0 +1,75 @@ +package managedblockchain + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Member_ApprovalThresholdPolicy AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.ApprovalThresholdPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html +type Member_ApprovalThresholdPolicy struct { + + // ProposalDurationInHours AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-proposaldurationinhours + ProposalDurationInHours int `json:"ProposalDurationInHours,omitempty"` + + // ThresholdComparator AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-thresholdcomparator + ThresholdComparator string `json:"ThresholdComparator,omitempty"` + + // ThresholdPercentage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-thresholdpercentage + ThresholdPercentage int `json:"ThresholdPercentage,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Member_ApprovalThresholdPolicy) AWSCloudFormationType() string { + return "AWS::ManagedBlockchain::Member.ApprovalThresholdPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_ApprovalThresholdPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_ApprovalThresholdPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_ApprovalThresholdPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_ApprovalThresholdPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_ApprovalThresholdPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_ApprovalThresholdPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/managedblockchain/aws-managedblockchain-member_memberconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_memberconfiguration.go new file mode 100644 index 0000000000..4d0f4aa204 --- /dev/null +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_memberconfiguration.go @@ -0,0 +1,75 @@ +package managedblockchain + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Member_MemberConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html +type Member_MemberConfiguration struct { + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-description + Description string `json:"Description,omitempty"` + + // MemberFrameworkConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-memberframeworkconfiguration + MemberFrameworkConfiguration *Member_MemberFrameworkConfiguration `json:"MemberFrameworkConfiguration,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Member_MemberConfiguration) AWSCloudFormationType() string { + return "AWS::ManagedBlockchain::Member.MemberConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_MemberConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_MemberConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_MemberConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_MemberConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_MemberConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_MemberConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/managedblockchain/aws-managedblockchain-member_memberfabricconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_memberfabricconfiguration.go new file mode 100644 index 0000000000..fb3b9bd90e --- /dev/null +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_memberfabricconfiguration.go @@ -0,0 +1,70 @@ +package managedblockchain + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Member_MemberFabricConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberFabricConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html +type Member_MemberFabricConfiguration struct { + + // AdminPassword AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html#cfn-managedblockchain-member-memberfabricconfiguration-adminpassword + AdminPassword string `json:"AdminPassword,omitempty"` + + // AdminUsername AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html#cfn-managedblockchain-member-memberfabricconfiguration-adminusername + AdminUsername string `json:"AdminUsername,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Member_MemberFabricConfiguration) AWSCloudFormationType() string { + return "AWS::ManagedBlockchain::Member.MemberFabricConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_MemberFabricConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_MemberFabricConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_MemberFabricConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_MemberFabricConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_MemberFabricConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_MemberFabricConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/managedblockchain/aws-managedblockchain-member_memberframeworkconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_memberframeworkconfiguration.go new file mode 100644 index 0000000000..2581d96bb1 --- /dev/null +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_memberframeworkconfiguration.go @@ -0,0 +1,65 @@ +package managedblockchain + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Member_MemberFrameworkConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberFrameworkConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberframeworkconfiguration.html +type Member_MemberFrameworkConfiguration struct { + + // MemberFabricConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberframeworkconfiguration.html#cfn-managedblockchain-member-memberframeworkconfiguration-memberfabricconfiguration + MemberFabricConfiguration *Member_MemberFabricConfiguration `json:"MemberFabricConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Member_MemberFrameworkConfiguration) AWSCloudFormationType() string { + return "AWS::ManagedBlockchain::Member.MemberFrameworkConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_MemberFrameworkConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_MemberFrameworkConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_MemberFrameworkConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_MemberFrameworkConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_MemberFrameworkConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_MemberFrameworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-managedblockchain-member_networkconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_networkconfiguration.go similarity index 75% rename from cloudformation/resources/aws-managedblockchain-member_networkconfiguration.go rename to cloudformation/managedblockchain/aws-managedblockchain-member_networkconfiguration.go index 319d7b03a0..872c8953fe 100644 --- a/cloudformation/resources/aws-managedblockchain-member_networkconfiguration.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_networkconfiguration.go @@ -1,10 +1,12 @@ -package resources +package managedblockchain -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSManagedBlockchainMember_NetworkConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.NetworkConfiguration) +// Member_NetworkConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.NetworkConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html -type AWSManagedBlockchainMember_NetworkConfiguration struct { +type Member_NetworkConfiguration struct { // Description AWS CloudFormation Property // Required: false @@ -29,12 +31,12 @@ type AWSManagedBlockchainMember_NetworkConfiguration struct { // NetworkFrameworkConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-networkframeworkconfiguration - NetworkFrameworkConfiguration *AWSManagedBlockchainMember_NetworkFrameworkConfiguration `json:"NetworkFrameworkConfiguration,omitempty"` + NetworkFrameworkConfiguration *Member_NetworkFrameworkConfiguration `json:"NetworkFrameworkConfiguration,omitempty"` // VotingPolicy AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-votingpolicy - VotingPolicy *AWSManagedBlockchainMember_VotingPolicy `json:"VotingPolicy,omitempty"` + VotingPolicy *Member_VotingPolicy `json:"VotingPolicy,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,42 +49,42 @@ type AWSManagedBlockchainMember_NetworkConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_NetworkConfiguration) AWSCloudFormationType() string { +func (r *Member_NetworkConfiguration) AWSCloudFormationType() string { return "AWS::ManagedBlockchain::Member.NetworkConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_NetworkConfiguration) DependsOn() []string { +func (r *Member_NetworkConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_NetworkConfiguration) SetDependsOn(dependencies []string) { +func (r *Member_NetworkConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_NetworkConfiguration) Metadata() map[string]interface{} { +func (r *Member_NetworkConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_NetworkConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Member_NetworkConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_NetworkConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Member_NetworkConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Member_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/managedblockchain/aws-managedblockchain-member_networkfabricconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_networkfabricconfiguration.go new file mode 100644 index 0000000000..20b548e5bf --- /dev/null +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_networkfabricconfiguration.go @@ -0,0 +1,65 @@ +package managedblockchain + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Member_NetworkFabricConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.NetworkFabricConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkfabricconfiguration.html +type Member_NetworkFabricConfiguration struct { + + // Edition AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkfabricconfiguration.html#cfn-managedblockchain-member-networkfabricconfiguration-edition + Edition string `json:"Edition,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Member_NetworkFabricConfiguration) AWSCloudFormationType() string { + return "AWS::ManagedBlockchain::Member.NetworkFabricConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_NetworkFabricConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_NetworkFabricConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_NetworkFabricConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_NetworkFabricConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_NetworkFabricConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_NetworkFabricConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/managedblockchain/aws-managedblockchain-member_networkframeworkconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_networkframeworkconfiguration.go new file mode 100644 index 0000000000..ef30e49602 --- /dev/null +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_networkframeworkconfiguration.go @@ -0,0 +1,65 @@ +package managedblockchain + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Member_NetworkFrameworkConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.NetworkFrameworkConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkframeworkconfiguration.html +type Member_NetworkFrameworkConfiguration struct { + + // NetworkFabricConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkframeworkconfiguration.html#cfn-managedblockchain-member-networkframeworkconfiguration-networkfabricconfiguration + NetworkFabricConfiguration *Member_NetworkFabricConfiguration `json:"NetworkFabricConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Member_NetworkFrameworkConfiguration) AWSCloudFormationType() string { + return "AWS::ManagedBlockchain::Member.NetworkFrameworkConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_NetworkFrameworkConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_NetworkFrameworkConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_NetworkFrameworkConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_NetworkFrameworkConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_NetworkFrameworkConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_NetworkFrameworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/managedblockchain/aws-managedblockchain-member_votingpolicy.go b/cloudformation/managedblockchain/aws-managedblockchain-member_votingpolicy.go new file mode 100644 index 0000000000..db5d13d0cd --- /dev/null +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_votingpolicy.go @@ -0,0 +1,65 @@ +package managedblockchain + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Member_VotingPolicy AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.VotingPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-votingpolicy.html +type Member_VotingPolicy struct { + + // ApprovalThresholdPolicy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-votingpolicy.html#cfn-managedblockchain-member-votingpolicy-approvalthresholdpolicy + ApprovalThresholdPolicy *Member_ApprovalThresholdPolicy `json:"ApprovalThresholdPolicy,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Member_VotingPolicy) AWSCloudFormationType() string { + return "AWS::ManagedBlockchain::Member.VotingPolicy" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_VotingPolicy) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Member_VotingPolicy) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_VotingPolicy) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Member_VotingPolicy) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_VotingPolicy) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Member_VotingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-managedblockchain-node.go b/cloudformation/managedblockchain/aws-managedblockchain-node.go similarity index 78% rename from cloudformation/resources/aws-managedblockchain-node.go rename to cloudformation/managedblockchain/aws-managedblockchain-node.go index 032f79bf17..6bd04f70d2 100644 --- a/cloudformation/resources/aws-managedblockchain-node.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-node.go @@ -1,15 +1,16 @@ -package resources +package managedblockchain import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSManagedBlockchainNode AWS CloudFormation Resource (AWS::ManagedBlockchain::Node) +// Node AWS CloudFormation Resource (AWS::ManagedBlockchain::Node) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html -type AWSManagedBlockchainNode struct { +type Node struct { // MemberId AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSManagedBlockchainNode struct { // NodeConfiguration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html#cfn-managedblockchain-node-nodeconfiguration - NodeConfiguration *AWSManagedBlockchainNode_NodeConfiguration `json:"NodeConfiguration,omitempty"` + NodeConfiguration *Node_NodeConfiguration `json:"NodeConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSManagedBlockchainNode struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainNode) AWSCloudFormationType() string { +func (r *Node) AWSCloudFormationType() string { return "AWS::ManagedBlockchain::Node" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainNode) DependsOn() []string { +func (r *Node) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainNode) SetDependsOn(dependencies []string) { +func (r *Node) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainNode) Metadata() map[string]interface{} { +func (r *Node) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainNode) SetMetadata(metadata map[string]interface{}) { +func (r *Node) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainNode) DeletionPolicy() policies.DeletionPolicy { +func (r *Node) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainNode) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Node) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSManagedBlockchainNode) MarshalJSON() ([]byte, error) { - type Properties AWSManagedBlockchainNode +func (r Node) MarshalJSON() ([]byte, error) { + type Properties Node return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSManagedBlockchainNode) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSManagedBlockchainNode) UnmarshalJSON(b []byte) error { - type Properties AWSManagedBlockchainNode +func (r *Node) UnmarshalJSON(b []byte) error { + type Properties Node res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSManagedBlockchainNode) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSManagedBlockchainNode(*res.Properties) + *r = Node(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/managedblockchain/aws-managedblockchain-node_nodeconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-node_nodeconfiguration.go new file mode 100644 index 0000000000..86d39ed284 --- /dev/null +++ b/cloudformation/managedblockchain/aws-managedblockchain-node_nodeconfiguration.go @@ -0,0 +1,70 @@ +package managedblockchain + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Node_NodeConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Node.NodeConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html +type Node_NodeConfiguration struct { + + // AvailabilityZone AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html#cfn-managedblockchain-node-nodeconfiguration-availabilityzone + AvailabilityZone string `json:"AvailabilityZone,omitempty"` + + // InstanceType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html#cfn-managedblockchain-node-nodeconfiguration-instancetype + InstanceType string `json:"InstanceType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Node_NodeConfiguration) AWSCloudFormationType() string { + return "AWS::ManagedBlockchain::Node.NodeConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Node_NodeConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Node_NodeConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Node_NodeConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Node_NodeConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Node_NodeConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Node_NodeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-medialive-channel.go b/cloudformation/medialive/aws-medialive-channel.go similarity index 82% rename from cloudformation/resources/aws-medialive-channel.go rename to cloudformation/medialive/aws-medialive-channel.go index dd314120c6..cec4ad95fd 100644 --- a/cloudformation/resources/aws-medialive-channel.go +++ b/cloudformation/medialive/aws-medialive-channel.go @@ -1,15 +1,16 @@ -package resources +package medialive import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSMediaLiveChannel AWS CloudFormation Resource (AWS::MediaLive::Channel) +// Channel AWS CloudFormation Resource (AWS::MediaLive::Channel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html -type AWSMediaLiveChannel struct { +type Channel struct { // ChannelClass AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSMediaLiveChannel struct { // Destinations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-destinations - Destinations []AWSMediaLiveChannel_OutputDestination `json:"Destinations,omitempty"` + Destinations []Channel_OutputDestination `json:"Destinations,omitempty"` // EncoderSettings AWS CloudFormation Property // Required: false @@ -29,12 +30,12 @@ type AWSMediaLiveChannel struct { // InputAttachments AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-inputattachments - InputAttachments []AWSMediaLiveChannel_InputAttachment `json:"InputAttachments,omitempty"` + InputAttachments []Channel_InputAttachment `json:"InputAttachments,omitempty"` // InputSpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-inputspecification - InputSpecification *AWSMediaLiveChannel_InputSpecification `json:"InputSpecification,omitempty"` + InputSpecification *Channel_InputSpecification `json:"InputSpecification,omitempty"` // LogLevel AWS CloudFormation Property // Required: false @@ -67,50 +68,50 @@ type AWSMediaLiveChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel) AWSCloudFormationType() string { +func (r *Channel) AWSCloudFormationType() string { return "AWS::MediaLive::Channel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel) DependsOn() []string { +func (r *Channel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel) SetDependsOn(dependencies []string) { +func (r *Channel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel) Metadata() map[string]interface{} { +func (r *Channel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel) SetMetadata(metadata map[string]interface{}) { +func (r *Channel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *Channel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSMediaLiveChannel) MarshalJSON() ([]byte, error) { - type Properties AWSMediaLiveChannel +func (r Channel) MarshalJSON() ([]byte, error) { + type Properties Channel return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSMediaLiveChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSMediaLiveChannel) UnmarshalJSON(b []byte) error { - type Properties AWSMediaLiveChannel +func (r *Channel) UnmarshalJSON(b []byte) error { + type Properties Channel res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSMediaLiveChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSMediaLiveChannel(*res.Properties) + *r = Channel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/medialive/aws-medialive-channel_aribsourcesettings.go b/cloudformation/medialive/aws-medialive-channel_aribsourcesettings.go new file mode 100644 index 0000000000..56f15267d1 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_aribsourcesettings.go @@ -0,0 +1,60 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_AribSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.AribSourceSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aribsourcesettings.html +type Channel_AribSourceSettings struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_AribSourceSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.AribSourceSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AribSourceSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AribSourceSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AribSourceSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AribSourceSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AribSourceSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AribSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_audiolanguageselection.go b/cloudformation/medialive/aws-medialive-channel_audiolanguageselection.go new file mode 100644 index 0000000000..42c31f6740 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_audiolanguageselection.go @@ -0,0 +1,70 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_AudioLanguageSelection AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioLanguageSelection) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html +type Channel_AudioLanguageSelection struct { + + // LanguageCode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html#cfn-medialive-channel-audiolanguageselection-languagecode + LanguageCode string `json:"LanguageCode,omitempty"` + + // LanguageSelectionPolicy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html#cfn-medialive-channel-audiolanguageselection-languageselectionpolicy + LanguageSelectionPolicy string `json:"LanguageSelectionPolicy,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_AudioLanguageSelection) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.AudioLanguageSelection" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AudioLanguageSelection) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AudioLanguageSelection) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AudioLanguageSelection) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AudioLanguageSelection) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AudioLanguageSelection) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AudioLanguageSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_audiopidselection.go b/cloudformation/medialive/aws-medialive-channel_audiopidselection.go new file mode 100644 index 0000000000..952051f54a --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_audiopidselection.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_AudioPidSelection AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioPidSelection) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiopidselection.html +type Channel_AudioPidSelection struct { + + // Pid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiopidselection.html#cfn-medialive-channel-audiopidselection-pid + Pid int `json:"Pid,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_AudioPidSelection) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.AudioPidSelection" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AudioPidSelection) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AudioPidSelection) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AudioPidSelection) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AudioPidSelection) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AudioPidSelection) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AudioPidSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_audioselector.go b/cloudformation/medialive/aws-medialive-channel_audioselector.go new file mode 100644 index 0000000000..34aa991be3 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_audioselector.go @@ -0,0 +1,70 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_AudioSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioSelector) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html +type Channel_AudioSelector struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html#cfn-medialive-channel-audioselector-name + Name string `json:"Name,omitempty"` + + // SelectorSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html#cfn-medialive-channel-audioselector-selectorsettings + SelectorSettings *Channel_AudioSelectorSettings `json:"SelectorSettings,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_AudioSelector) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.AudioSelector" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AudioSelector) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AudioSelector) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AudioSelector) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AudioSelector) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AudioSelector) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AudioSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_audioselectorsettings.go b/cloudformation/medialive/aws-medialive-channel_audioselectorsettings.go new file mode 100644 index 0000000000..a1c905e28f --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_audioselectorsettings.go @@ -0,0 +1,70 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_AudioSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioSelectorSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html +type Channel_AudioSelectorSettings struct { + + // AudioLanguageSelection AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiolanguageselection + AudioLanguageSelection *Channel_AudioLanguageSelection `json:"AudioLanguageSelection,omitempty"` + + // AudioPidSelection AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiopidselection + AudioPidSelection *Channel_AudioPidSelection `json:"AudioPidSelection,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_AudioSelectorSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.AudioSelectorSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AudioSelectorSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_AudioSelectorSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AudioSelectorSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_AudioSelectorSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AudioSelectorSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_AudioSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_captionselector.go b/cloudformation/medialive/aws-medialive-channel_captionselector.go new file mode 100644 index 0000000000..71317f0401 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_captionselector.go @@ -0,0 +1,75 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_CaptionSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.CaptionSelector) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html +type Channel_CaptionSelector struct { + + // LanguageCode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-languagecode + LanguageCode string `json:"LanguageCode,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-name + Name string `json:"Name,omitempty"` + + // SelectorSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-selectorsettings + SelectorSettings *Channel_CaptionSelectorSettings `json:"SelectorSettings,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_CaptionSelector) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.CaptionSelector" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_CaptionSelector) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_CaptionSelector) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_CaptionSelector) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_CaptionSelector) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_CaptionSelector) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_CaptionSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_captionselectorsettings.go b/cloudformation/medialive/aws-medialive-channel_captionselectorsettings.go new file mode 100644 index 0000000000..c4aeffbda5 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_captionselectorsettings.go @@ -0,0 +1,90 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_CaptionSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.CaptionSelectorSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html +type Channel_CaptionSelectorSettings struct { + + // AribSourceSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-aribsourcesettings + AribSourceSettings *Channel_AribSourceSettings `json:"AribSourceSettings,omitempty"` + + // DvbSubSourceSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-dvbsubsourcesettings + DvbSubSourceSettings *Channel_DvbSubSourceSettings `json:"DvbSubSourceSettings,omitempty"` + + // EmbeddedSourceSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-embeddedsourcesettings + EmbeddedSourceSettings *Channel_EmbeddedSourceSettings `json:"EmbeddedSourceSettings,omitempty"` + + // Scte20SourceSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-scte20sourcesettings + Scte20SourceSettings *Channel_Scte20SourceSettings `json:"Scte20SourceSettings,omitempty"` + + // Scte27SourceSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-scte27sourcesettings + Scte27SourceSettings *Channel_Scte27SourceSettings `json:"Scte27SourceSettings,omitempty"` + + // TeletextSourceSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-teletextsourcesettings + TeletextSourceSettings *Channel_TeletextSourceSettings `json:"TeletextSourceSettings,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_CaptionSelectorSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.CaptionSelectorSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_CaptionSelectorSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_CaptionSelectorSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_CaptionSelectorSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_CaptionSelectorSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_CaptionSelectorSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_CaptionSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_dvbsubsourcesettings.go b/cloudformation/medialive/aws-medialive-channel_dvbsubsourcesettings.go new file mode 100644 index 0000000000..4c5adaa8e6 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_dvbsubsourcesettings.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_DvbSubSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.DvbSubSourceSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubsourcesettings.html +type Channel_DvbSubSourceSettings struct { + + // Pid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubsourcesettings.html#cfn-medialive-channel-dvbsubsourcesettings-pid + Pid int `json:"Pid,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_DvbSubSourceSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.DvbSubSourceSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_DvbSubSourceSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_DvbSubSourceSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_DvbSubSourceSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_DvbSubSourceSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_DvbSubSourceSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_DvbSubSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-medialive-channel_embeddedsourcesettings.go b/cloudformation/medialive/aws-medialive-channel_embeddedsourcesettings.go similarity index 77% rename from cloudformation/resources/aws-medialive-channel_embeddedsourcesettings.go rename to cloudformation/medialive/aws-medialive-channel_embeddedsourcesettings.go index f39583fad1..1256c49482 100644 --- a/cloudformation/resources/aws-medialive-channel_embeddedsourcesettings.go +++ b/cloudformation/medialive/aws-medialive-channel_embeddedsourcesettings.go @@ -1,10 +1,12 @@ -package resources +package medialive -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaLiveChannel_EmbeddedSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.EmbeddedSourceSettings) +// Channel_EmbeddedSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.EmbeddedSourceSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html -type AWSMediaLiveChannel_EmbeddedSourceSettings struct { +type Channel_EmbeddedSourceSettings struct { // Convert608To708 AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSMediaLiveChannel_EmbeddedSourceSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_EmbeddedSourceSettings) AWSCloudFormationType() string { +func (r *Channel_EmbeddedSourceSettings) AWSCloudFormationType() string { return "AWS::MediaLive::Channel.EmbeddedSourceSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_EmbeddedSourceSettings) DependsOn() []string { +func (r *Channel_EmbeddedSourceSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_EmbeddedSourceSettings) SetDependsOn(dependencies []string) { +func (r *Channel_EmbeddedSourceSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_EmbeddedSourceSettings) Metadata() map[string]interface{} { +func (r *Channel_EmbeddedSourceSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_EmbeddedSourceSettings) SetMetadata(metadata map[string]interface{}) { +func (r *Channel_EmbeddedSourceSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_EmbeddedSourceSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *Channel_EmbeddedSourceSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_EmbeddedSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_EmbeddedSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_hlsinputsettings.go b/cloudformation/medialive/aws-medialive-channel_hlsinputsettings.go similarity index 77% rename from cloudformation/resources/aws-medialive-channel_hlsinputsettings.go rename to cloudformation/medialive/aws-medialive-channel_hlsinputsettings.go index 7d077c7905..8b6e402d1e 100644 --- a/cloudformation/resources/aws-medialive-channel_hlsinputsettings.go +++ b/cloudformation/medialive/aws-medialive-channel_hlsinputsettings.go @@ -1,10 +1,12 @@ -package resources +package medialive -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaLiveChannel_HlsInputSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.HlsInputSettings) +// Channel_HlsInputSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.HlsInputSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html -type AWSMediaLiveChannel_HlsInputSettings struct { +type Channel_HlsInputSettings struct { // Bandwidth AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSMediaLiveChannel_HlsInputSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_HlsInputSettings) AWSCloudFormationType() string { +func (r *Channel_HlsInputSettings) AWSCloudFormationType() string { return "AWS::MediaLive::Channel.HlsInputSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_HlsInputSettings) DependsOn() []string { +func (r *Channel_HlsInputSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_HlsInputSettings) SetDependsOn(dependencies []string) { +func (r *Channel_HlsInputSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_HlsInputSettings) Metadata() map[string]interface{} { +func (r *Channel_HlsInputSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_HlsInputSettings) SetMetadata(metadata map[string]interface{}) { +func (r *Channel_HlsInputSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_HlsInputSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *Channel_HlsInputSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_HlsInputSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_HlsInputSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/medialive/aws-medialive-channel_inputattachment.go b/cloudformation/medialive/aws-medialive-channel_inputattachment.go new file mode 100644 index 0000000000..ac7386d92c --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_inputattachment.go @@ -0,0 +1,75 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_InputAttachment AWS CloudFormation Resource (AWS::MediaLive::Channel.InputAttachment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html +type Channel_InputAttachment struct { + + // InputAttachmentName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputattachmentname + InputAttachmentName string `json:"InputAttachmentName,omitempty"` + + // InputId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputid + InputId string `json:"InputId,omitempty"` + + // InputSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputsettings + InputSettings *Channel_InputSettings `json:"InputSettings,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_InputAttachment) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.InputAttachment" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_InputAttachment) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_InputAttachment) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_InputAttachment) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_InputAttachment) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_InputAttachment) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_InputAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-medialive-channel_inputsettings.go b/cloudformation/medialive/aws-medialive-channel_inputsettings.go similarity index 78% rename from cloudformation/resources/aws-medialive-channel_inputsettings.go rename to cloudformation/medialive/aws-medialive-channel_inputsettings.go index 4907e4bc76..caea05cbe4 100644 --- a/cloudformation/resources/aws-medialive-channel_inputsettings.go +++ b/cloudformation/medialive/aws-medialive-channel_inputsettings.go @@ -1,20 +1,22 @@ -package resources +package medialive -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaLiveChannel_InputSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.InputSettings) +// Channel_InputSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.InputSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html -type AWSMediaLiveChannel_InputSettings struct { +type Channel_InputSettings struct { // AudioSelectors AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-audioselectors - AudioSelectors []AWSMediaLiveChannel_AudioSelector `json:"AudioSelectors,omitempty"` + AudioSelectors []Channel_AudioSelector `json:"AudioSelectors,omitempty"` // CaptionSelectors AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-captionselectors - CaptionSelectors []AWSMediaLiveChannel_CaptionSelector `json:"CaptionSelectors,omitempty"` + CaptionSelectors []Channel_CaptionSelector `json:"CaptionSelectors,omitempty"` // DeblockFilter AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSMediaLiveChannel_InputSettings struct { // NetworkInputSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-networkinputsettings - NetworkInputSettings *AWSMediaLiveChannel_NetworkInputSettings `json:"NetworkInputSettings,omitempty"` + NetworkInputSettings *Channel_NetworkInputSettings `json:"NetworkInputSettings,omitempty"` // SourceEndBehavior AWS CloudFormation Property // Required: false @@ -49,7 +51,7 @@ type AWSMediaLiveChannel_InputSettings struct { // VideoSelector AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-videoselector - VideoSelector *AWSMediaLiveChannel_VideoSelector `json:"VideoSelector,omitempty"` + VideoSelector *Channel_VideoSelector `json:"VideoSelector,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -62,42 +64,42 @@ type AWSMediaLiveChannel_InputSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_InputSettings) AWSCloudFormationType() string { +func (r *Channel_InputSettings) AWSCloudFormationType() string { return "AWS::MediaLive::Channel.InputSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_InputSettings) DependsOn() []string { +func (r *Channel_InputSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_InputSettings) SetDependsOn(dependencies []string) { +func (r *Channel_InputSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_InputSettings) Metadata() map[string]interface{} { +func (r *Channel_InputSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_InputSettings) SetMetadata(metadata map[string]interface{}) { +func (r *Channel_InputSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_InputSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *Channel_InputSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_InputSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_InputSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_inputspecification.go b/cloudformation/medialive/aws-medialive-channel_inputspecification.go similarity index 75% rename from cloudformation/resources/aws-medialive-channel_inputspecification.go rename to cloudformation/medialive/aws-medialive-channel_inputspecification.go index 282f6cc3f2..a2bf46e6ae 100644 --- a/cloudformation/resources/aws-medialive-channel_inputspecification.go +++ b/cloudformation/medialive/aws-medialive-channel_inputspecification.go @@ -1,10 +1,12 @@ -package resources +package medialive -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaLiveChannel_InputSpecification AWS CloudFormation Resource (AWS::MediaLive::Channel.InputSpecification) +// Channel_InputSpecification AWS CloudFormation Resource (AWS::MediaLive::Channel.InputSpecification) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html -type AWSMediaLiveChannel_InputSpecification struct { +type Channel_InputSpecification struct { // Codec AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSMediaLiveChannel_InputSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_InputSpecification) AWSCloudFormationType() string { +func (r *Channel_InputSpecification) AWSCloudFormationType() string { return "AWS::MediaLive::Channel.InputSpecification" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_InputSpecification) DependsOn() []string { +func (r *Channel_InputSpecification) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_InputSpecification) SetDependsOn(dependencies []string) { +func (r *Channel_InputSpecification) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_InputSpecification) Metadata() map[string]interface{} { +func (r *Channel_InputSpecification) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_InputSpecification) SetMetadata(metadata map[string]interface{}) { +func (r *Channel_InputSpecification) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_InputSpecification) DeletionPolicy() policies.DeletionPolicy { +func (r *Channel_InputSpecification) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_InputSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_InputSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/medialive/aws-medialive-channel_mediapackageoutputdestinationsettings.go b/cloudformation/medialive/aws-medialive-channel_mediapackageoutputdestinationsettings.go new file mode 100644 index 0000000000..f159a140f2 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_mediapackageoutputdestinationsettings.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_MediaPackageOutputDestinationSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.MediaPackageOutputDestinationSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputdestinationsettings.html +type Channel_MediaPackageOutputDestinationSettings struct { + + // ChannelId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputdestinationsettings.html#cfn-medialive-channel-mediapackageoutputdestinationsettings-channelid + ChannelId string `json:"ChannelId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_MediaPackageOutputDestinationSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.MediaPackageOutputDestinationSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_MediaPackageOutputDestinationSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_MediaPackageOutputDestinationSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_MediaPackageOutputDestinationSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_MediaPackageOutputDestinationSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_MediaPackageOutputDestinationSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_MediaPackageOutputDestinationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_networkinputsettings.go b/cloudformation/medialive/aws-medialive-channel_networkinputsettings.go new file mode 100644 index 0000000000..d3917ce52b --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_networkinputsettings.go @@ -0,0 +1,70 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_NetworkInputSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.NetworkInputSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html +type Channel_NetworkInputSettings struct { + + // HlsInputSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html#cfn-medialive-channel-networkinputsettings-hlsinputsettings + HlsInputSettings *Channel_HlsInputSettings `json:"HlsInputSettings,omitempty"` + + // ServerValidation AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html#cfn-medialive-channel-networkinputsettings-servervalidation + ServerValidation string `json:"ServerValidation,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_NetworkInputSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.NetworkInputSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_NetworkInputSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_NetworkInputSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_NetworkInputSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_NetworkInputSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_NetworkInputSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_NetworkInputSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_outputdestination.go b/cloudformation/medialive/aws-medialive-channel_outputdestination.go new file mode 100644 index 0000000000..ba8f68a243 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_outputdestination.go @@ -0,0 +1,75 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_OutputDestination AWS CloudFormation Resource (AWS::MediaLive::Channel.OutputDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html +type Channel_OutputDestination struct { + + // Id AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-id + Id string `json:"Id,omitempty"` + + // MediaPackageSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-mediapackagesettings + MediaPackageSettings []Channel_MediaPackageOutputDestinationSettings `json:"MediaPackageSettings,omitempty"` + + // Settings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-settings + Settings []Channel_OutputDestinationSettings `json:"Settings,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_OutputDestination) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.OutputDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_OutputDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_OutputDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_OutputDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_OutputDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_OutputDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_OutputDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-medialive-channel_outputdestinationsettings.go b/cloudformation/medialive/aws-medialive-channel_outputdestinationsettings.go similarity index 76% rename from cloudformation/resources/aws-medialive-channel_outputdestinationsettings.go rename to cloudformation/medialive/aws-medialive-channel_outputdestinationsettings.go index bd302f02ab..9bcc33090a 100644 --- a/cloudformation/resources/aws-medialive-channel_outputdestinationsettings.go +++ b/cloudformation/medialive/aws-medialive-channel_outputdestinationsettings.go @@ -1,10 +1,12 @@ -package resources +package medialive -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaLiveChannel_OutputDestinationSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.OutputDestinationSettings) +// Channel_OutputDestinationSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.OutputDestinationSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html -type AWSMediaLiveChannel_OutputDestinationSettings struct { +type Channel_OutputDestinationSettings struct { // PasswordParam AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSMediaLiveChannel_OutputDestinationSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_OutputDestinationSettings) AWSCloudFormationType() string { +func (r *Channel_OutputDestinationSettings) AWSCloudFormationType() string { return "AWS::MediaLive::Channel.OutputDestinationSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_OutputDestinationSettings) DependsOn() []string { +func (r *Channel_OutputDestinationSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_OutputDestinationSettings) SetDependsOn(dependencies []string) { +func (r *Channel_OutputDestinationSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_OutputDestinationSettings) Metadata() map[string]interface{} { +func (r *Channel_OutputDestinationSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_OutputDestinationSettings) SetMetadata(metadata map[string]interface{}) { +func (r *Channel_OutputDestinationSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_OutputDestinationSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *Channel_OutputDestinationSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_OutputDestinationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_OutputDestinationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/medialive/aws-medialive-channel_scte20sourcesettings.go b/cloudformation/medialive/aws-medialive-channel_scte20sourcesettings.go new file mode 100644 index 0000000000..ebe354dd3e --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_scte20sourcesettings.go @@ -0,0 +1,70 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_Scte20SourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.Scte20SourceSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html +type Channel_Scte20SourceSettings struct { + + // Convert608To708 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html#cfn-medialive-channel-scte20sourcesettings-convert608to708 + Convert608To708 string `json:"Convert608To708,omitempty"` + + // Source608ChannelNumber AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html#cfn-medialive-channel-scte20sourcesettings-source608channelnumber + Source608ChannelNumber int `json:"Source608ChannelNumber,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_Scte20SourceSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.Scte20SourceSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_Scte20SourceSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_Scte20SourceSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_Scte20SourceSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_Scte20SourceSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_Scte20SourceSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_Scte20SourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_scte27sourcesettings.go b/cloudformation/medialive/aws-medialive-channel_scte27sourcesettings.go new file mode 100644 index 0000000000..395e437af5 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_scte27sourcesettings.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_Scte27SourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.Scte27SourceSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27sourcesettings.html +type Channel_Scte27SourceSettings struct { + + // Pid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27sourcesettings.html#cfn-medialive-channel-scte27sourcesettings-pid + Pid int `json:"Pid,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_Scte27SourceSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.Scte27SourceSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_Scte27SourceSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_Scte27SourceSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_Scte27SourceSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_Scte27SourceSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_Scte27SourceSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_Scte27SourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_teletextsourcesettings.go b/cloudformation/medialive/aws-medialive-channel_teletextsourcesettings.go new file mode 100644 index 0000000000..8d56b3b704 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_teletextsourcesettings.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_TeletextSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.TeletextSourceSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextsourcesettings.html +type Channel_TeletextSourceSettings struct { + + // PageNumber AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextsourcesettings.html#cfn-medialive-channel-teletextsourcesettings-pagenumber + PageNumber string `json:"PageNumber,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_TeletextSourceSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.TeletextSourceSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_TeletextSourceSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_TeletextSourceSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_TeletextSourceSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_TeletextSourceSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_TeletextSourceSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_TeletextSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_videoselector.go b/cloudformation/medialive/aws-medialive-channel_videoselector.go new file mode 100644 index 0000000000..91263bc887 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_videoselector.go @@ -0,0 +1,75 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_VideoSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelector) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html +type Channel_VideoSelector struct { + + // ColorSpace AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-colorspace + ColorSpace string `json:"ColorSpace,omitempty"` + + // ColorSpaceUsage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-colorspaceusage + ColorSpaceUsage string `json:"ColorSpaceUsage,omitempty"` + + // SelectorSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-selectorsettings + SelectorSettings *Channel_VideoSelectorSettings `json:"SelectorSettings,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_VideoSelector) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.VideoSelector" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_VideoSelector) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_VideoSelector) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_VideoSelector) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_VideoSelector) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_VideoSelector) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_VideoSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_videoselectorpid.go b/cloudformation/medialive/aws-medialive-channel_videoselectorpid.go new file mode 100644 index 0000000000..6970cff46a --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_videoselectorpid.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_VideoSelectorPid AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorPid) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorpid.html +type Channel_VideoSelectorPid struct { + + // Pid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorpid.html#cfn-medialive-channel-videoselectorpid-pid + Pid int `json:"Pid,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_VideoSelectorPid) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.VideoSelectorPid" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_VideoSelectorPid) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_VideoSelectorPid) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_VideoSelectorPid) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_VideoSelectorPid) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_VideoSelectorPid) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_VideoSelectorPid) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_videoselectorprogramid.go b/cloudformation/medialive/aws-medialive-channel_videoselectorprogramid.go new file mode 100644 index 0000000000..59c1ff1f1c --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_videoselectorprogramid.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_VideoSelectorProgramId AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorProgramId) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorprogramid.html +type Channel_VideoSelectorProgramId struct { + + // ProgramId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorprogramid.html#cfn-medialive-channel-videoselectorprogramid-programid + ProgramId int `json:"ProgramId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_VideoSelectorProgramId) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.VideoSelectorProgramId" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_VideoSelectorProgramId) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_VideoSelectorProgramId) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_VideoSelectorProgramId) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_VideoSelectorProgramId) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_VideoSelectorProgramId) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_VideoSelectorProgramId) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-channel_videoselectorsettings.go b/cloudformation/medialive/aws-medialive-channel_videoselectorsettings.go new file mode 100644 index 0000000000..f46c1db983 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-channel_videoselectorsettings.go @@ -0,0 +1,70 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Channel_VideoSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html +type Channel_VideoSelectorSettings struct { + + // VideoSelectorPid AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html#cfn-medialive-channel-videoselectorsettings-videoselectorpid + VideoSelectorPid *Channel_VideoSelectorPid `json:"VideoSelectorPid,omitempty"` + + // VideoSelectorProgramId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html#cfn-medialive-channel-videoselectorsettings-videoselectorprogramid + VideoSelectorProgramId *Channel_VideoSelectorProgramId `json:"VideoSelectorProgramId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Channel_VideoSelectorSettings) AWSCloudFormationType() string { + return "AWS::MediaLive::Channel.VideoSelectorSettings" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_VideoSelectorSettings) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Channel_VideoSelectorSettings) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_VideoSelectorSettings) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Channel_VideoSelectorSettings) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_VideoSelectorSettings) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Channel_VideoSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-medialive-input.go b/cloudformation/medialive/aws-medialive-input.go similarity index 81% rename from cloudformation/resources/aws-medialive-input.go rename to cloudformation/medialive/aws-medialive-input.go index b45683276e..052413f87d 100644 --- a/cloudformation/resources/aws-medialive-input.go +++ b/cloudformation/medialive/aws-medialive-input.go @@ -1,20 +1,21 @@ -package resources +package medialive import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSMediaLiveInput AWS CloudFormation Resource (AWS::MediaLive::Input) +// Input AWS CloudFormation Resource (AWS::MediaLive::Input) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html -type AWSMediaLiveInput struct { +type Input struct { // Destinations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-destinations - Destinations []AWSMediaLiveInput_InputDestinationRequest `json:"Destinations,omitempty"` + Destinations []Input_InputDestinationRequest `json:"Destinations,omitempty"` // InputSecurityGroups AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSMediaLiveInput struct { // MediaConnectFlows AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-mediaconnectflows - MediaConnectFlows []AWSMediaLiveInput_MediaConnectFlowRequest `json:"MediaConnectFlows,omitempty"` + MediaConnectFlows []Input_MediaConnectFlowRequest `json:"MediaConnectFlows,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -39,7 +40,7 @@ type AWSMediaLiveInput struct { // Sources AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-sources - Sources []AWSMediaLiveInput_InputSourceRequest `json:"Sources,omitempty"` + Sources []Input_InputSourceRequest `json:"Sources,omitempty"` // Tags AWS CloudFormation Property // Required: false @@ -54,7 +55,7 @@ type AWSMediaLiveInput struct { // Vpc AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-vpc - Vpc *AWSMediaLiveInput_InputVpcRequest `json:"Vpc,omitempty"` + Vpc *Input_InputVpcRequest `json:"Vpc,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -67,50 +68,50 @@ type AWSMediaLiveInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInput) AWSCloudFormationType() string { +func (r *Input) AWSCloudFormationType() string { return "AWS::MediaLive::Input" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput) DependsOn() []string { +func (r *Input) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput) SetDependsOn(dependencies []string) { +func (r *Input) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput) Metadata() map[string]interface{} { +func (r *Input) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput) SetMetadata(metadata map[string]interface{}) { +func (r *Input) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput) DeletionPolicy() policies.DeletionPolicy { +func (r *Input) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Input) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSMediaLiveInput) MarshalJSON() ([]byte, error) { - type Properties AWSMediaLiveInput +func (r Input) MarshalJSON() ([]byte, error) { + type Properties Input return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSMediaLiveInput) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSMediaLiveInput) UnmarshalJSON(b []byte) error { - type Properties AWSMediaLiveInput +func (r *Input) UnmarshalJSON(b []byte) error { + type Properties Input res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSMediaLiveInput) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSMediaLiveInput(*res.Properties) + *r = Input(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/medialive/aws-medialive-input_inputdestinationrequest.go b/cloudformation/medialive/aws-medialive-input_inputdestinationrequest.go new file mode 100644 index 0000000000..ab477bf04a --- /dev/null +++ b/cloudformation/medialive/aws-medialive-input_inputdestinationrequest.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Input_InputDestinationRequest AWS CloudFormation Resource (AWS::MediaLive::Input.InputDestinationRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdestinationrequest.html +type Input_InputDestinationRequest struct { + + // StreamName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdestinationrequest.html#cfn-medialive-input-inputdestinationrequest-streamname + StreamName string `json:"StreamName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Input_InputDestinationRequest) AWSCloudFormationType() string { + return "AWS::MediaLive::Input.InputDestinationRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_InputDestinationRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_InputDestinationRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_InputDestinationRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_InputDestinationRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_InputDestinationRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_InputDestinationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-medialive-input_inputsourcerequest.go b/cloudformation/medialive/aws-medialive-input_inputsourcerequest.go similarity index 75% rename from cloudformation/resources/aws-medialive-input_inputsourcerequest.go rename to cloudformation/medialive/aws-medialive-input_inputsourcerequest.go index cca1103c65..69ae17d227 100644 --- a/cloudformation/resources/aws-medialive-input_inputsourcerequest.go +++ b/cloudformation/medialive/aws-medialive-input_inputsourcerequest.go @@ -1,10 +1,12 @@ -package resources +package medialive -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaLiveInput_InputSourceRequest AWS CloudFormation Resource (AWS::MediaLive::Input.InputSourceRequest) +// Input_InputSourceRequest AWS CloudFormation Resource (AWS::MediaLive::Input.InputSourceRequest) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html -type AWSMediaLiveInput_InputSourceRequest struct { +type Input_InputSourceRequest struct { // PasswordParam AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSMediaLiveInput_InputSourceRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInput_InputSourceRequest) AWSCloudFormationType() string { +func (r *Input_InputSourceRequest) AWSCloudFormationType() string { return "AWS::MediaLive::Input.InputSourceRequest" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput_InputSourceRequest) DependsOn() []string { +func (r *Input_InputSourceRequest) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput_InputSourceRequest) SetDependsOn(dependencies []string) { +func (r *Input_InputSourceRequest) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput_InputSourceRequest) Metadata() map[string]interface{} { +func (r *Input_InputSourceRequest) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput_InputSourceRequest) SetMetadata(metadata map[string]interface{}) { +func (r *Input_InputSourceRequest) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput_InputSourceRequest) DeletionPolicy() policies.DeletionPolicy { +func (r *Input_InputSourceRequest) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput_InputSourceRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Input_InputSourceRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/medialive/aws-medialive-input_inputvpcrequest.go b/cloudformation/medialive/aws-medialive-input_inputvpcrequest.go new file mode 100644 index 0000000000..316a5d0d91 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-input_inputvpcrequest.go @@ -0,0 +1,70 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Input_InputVpcRequest AWS CloudFormation Resource (AWS::MediaLive::Input.InputVpcRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html +type Input_InputVpcRequest struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html#cfn-medialive-input-inputvpcrequest-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` + + // SubnetIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html#cfn-medialive-input-inputvpcrequest-subnetids + SubnetIds []string `json:"SubnetIds,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Input_InputVpcRequest) AWSCloudFormationType() string { + return "AWS::MediaLive::Input.InputVpcRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_InputVpcRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_InputVpcRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_InputVpcRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_InputVpcRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_InputVpcRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_InputVpcRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/medialive/aws-medialive-input_mediaconnectflowrequest.go b/cloudformation/medialive/aws-medialive-input_mediaconnectflowrequest.go new file mode 100644 index 0000000000..4e38546736 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-input_mediaconnectflowrequest.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Input_MediaConnectFlowRequest AWS CloudFormation Resource (AWS::MediaLive::Input.MediaConnectFlowRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-mediaconnectflowrequest.html +type Input_MediaConnectFlowRequest struct { + + // FlowArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-mediaconnectflowrequest.html#cfn-medialive-input-mediaconnectflowrequest-flowarn + FlowArn string `json:"FlowArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Input_MediaConnectFlowRequest) AWSCloudFormationType() string { + return "AWS::MediaLive::Input.MediaConnectFlowRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_MediaConnectFlowRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Input_MediaConnectFlowRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_MediaConnectFlowRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Input_MediaConnectFlowRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_MediaConnectFlowRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Input_MediaConnectFlowRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-medialive-inputsecuritygroup.go b/cloudformation/medialive/aws-medialive-inputsecuritygroup.go similarity index 76% rename from cloudformation/resources/aws-medialive-inputsecuritygroup.go rename to cloudformation/medialive/aws-medialive-inputsecuritygroup.go index f4c19961f2..7703b9ee16 100644 --- a/cloudformation/resources/aws-medialive-inputsecuritygroup.go +++ b/cloudformation/medialive/aws-medialive-inputsecuritygroup.go @@ -1,15 +1,16 @@ -package resources +package medialive import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSMediaLiveInputSecurityGroup AWS CloudFormation Resource (AWS::MediaLive::InputSecurityGroup) +// InputSecurityGroup AWS CloudFormation Resource (AWS::MediaLive::InputSecurityGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html -type AWSMediaLiveInputSecurityGroup struct { +type InputSecurityGroup struct { // Tags AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSMediaLiveInputSecurityGroup struct { // WhitelistRules AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html#cfn-medialive-inputsecuritygroup-whitelistrules - WhitelistRules []AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr `json:"WhitelistRules,omitempty"` + WhitelistRules []InputSecurityGroup_InputWhitelistRuleCidr `json:"WhitelistRules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSMediaLiveInputSecurityGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInputSecurityGroup) AWSCloudFormationType() string { +func (r *InputSecurityGroup) AWSCloudFormationType() string { return "AWS::MediaLive::InputSecurityGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInputSecurityGroup) DependsOn() []string { +func (r *InputSecurityGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInputSecurityGroup) SetDependsOn(dependencies []string) { +func (r *InputSecurityGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInputSecurityGroup) Metadata() map[string]interface{} { +func (r *InputSecurityGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInputSecurityGroup) SetMetadata(metadata map[string]interface{}) { +func (r *InputSecurityGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInputSecurityGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *InputSecurityGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInputSecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InputSecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSMediaLiveInputSecurityGroup) MarshalJSON() ([]byte, error) { - type Properties AWSMediaLiveInputSecurityGroup +func (r InputSecurityGroup) MarshalJSON() ([]byte, error) { + type Properties InputSecurityGroup return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSMediaLiveInputSecurityGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSMediaLiveInputSecurityGroup) UnmarshalJSON(b []byte) error { - type Properties AWSMediaLiveInputSecurityGroup +func (r *InputSecurityGroup) UnmarshalJSON(b []byte) error { + type Properties InputSecurityGroup res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSMediaLiveInputSecurityGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSMediaLiveInputSecurityGroup(*res.Properties) + *r = InputSecurityGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/medialive/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go b/cloudformation/medialive/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go new file mode 100644 index 0000000000..9f5d013fa3 --- /dev/null +++ b/cloudformation/medialive/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go @@ -0,0 +1,65 @@ +package medialive + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// InputSecurityGroup_InputWhitelistRuleCidr AWS CloudFormation Resource (AWS::MediaLive::InputSecurityGroup.InputWhitelistRuleCidr) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-inputsecuritygroup-inputwhitelistrulecidr.html +type InputSecurityGroup_InputWhitelistRuleCidr struct { + + // Cidr AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-inputsecuritygroup-inputwhitelistrulecidr.html#cfn-medialive-inputsecuritygroup-inputwhitelistrulecidr-cidr + Cidr string `json:"Cidr,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *InputSecurityGroup_InputWhitelistRuleCidr) AWSCloudFormationType() string { + return "AWS::MediaLive::InputSecurityGroup.InputWhitelistRuleCidr" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InputSecurityGroup_InputWhitelistRuleCidr) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *InputSecurityGroup_InputWhitelistRuleCidr) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InputSecurityGroup_InputWhitelistRuleCidr) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *InputSecurityGroup_InputWhitelistRuleCidr) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InputSecurityGroup_InputWhitelistRuleCidr) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *InputSecurityGroup_InputWhitelistRuleCidr) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-mediastore-container.go b/cloudformation/mediastore/aws-mediastore-container.go similarity index 81% rename from cloudformation/resources/aws-mediastore-container.go rename to cloudformation/mediastore/aws-mediastore-container.go index 457b95f55b..e2e96ac157 100644 --- a/cloudformation/resources/aws-mediastore-container.go +++ b/cloudformation/mediastore/aws-mediastore-container.go @@ -1,15 +1,16 @@ -package resources +package mediastore import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSMediaStoreContainer AWS CloudFormation Resource (AWS::MediaStore::Container) +// Container AWS CloudFormation Resource (AWS::MediaStore::Container) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html -type AWSMediaStoreContainer struct { +type Container struct { // AccessLoggingEnabled AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSMediaStoreContainer struct { // CorsPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-corspolicy - CorsPolicy []AWSMediaStoreContainer_CorsRule `json:"CorsPolicy,omitempty"` + CorsPolicy []Container_CorsRule `json:"CorsPolicy,omitempty"` // LifecyclePolicy AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSMediaStoreContainer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaStoreContainer) AWSCloudFormationType() string { +func (r *Container) AWSCloudFormationType() string { return "AWS::MediaStore::Container" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaStoreContainer) DependsOn() []string { +func (r *Container) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaStoreContainer) SetDependsOn(dependencies []string) { +func (r *Container) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaStoreContainer) Metadata() map[string]interface{} { +func (r *Container) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaStoreContainer) SetMetadata(metadata map[string]interface{}) { +func (r *Container) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaStoreContainer) DeletionPolicy() policies.DeletionPolicy { +func (r *Container) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaStoreContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Container) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSMediaStoreContainer) MarshalJSON() ([]byte, error) { - type Properties AWSMediaStoreContainer +func (r Container) MarshalJSON() ([]byte, error) { + type Properties Container return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSMediaStoreContainer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSMediaStoreContainer) UnmarshalJSON(b []byte) error { - type Properties AWSMediaStoreContainer +func (r *Container) UnmarshalJSON(b []byte) error { + type Properties Container res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSMediaStoreContainer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSMediaStoreContainer(*res.Properties) + *r = Container(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-mediastore-container_corsrule.go b/cloudformation/mediastore/aws-mediastore-container_corsrule.go similarity index 80% rename from cloudformation/resources/aws-mediastore-container_corsrule.go rename to cloudformation/mediastore/aws-mediastore-container_corsrule.go index 52b2789c92..5e3b4dff95 100644 --- a/cloudformation/resources/aws-mediastore-container_corsrule.go +++ b/cloudformation/mediastore/aws-mediastore-container_corsrule.go @@ -1,10 +1,12 @@ -package resources +package mediastore -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaStoreContainer_CorsRule AWS CloudFormation Resource (AWS::MediaStore::Container.CorsRule) +// Container_CorsRule AWS CloudFormation Resource (AWS::MediaStore::Container.CorsRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html -type AWSMediaStoreContainer_CorsRule struct { +type Container_CorsRule struct { // AllowedHeaders AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSMediaStoreContainer_CorsRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaStoreContainer_CorsRule) AWSCloudFormationType() string { +func (r *Container_CorsRule) AWSCloudFormationType() string { return "AWS::MediaStore::Container.CorsRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaStoreContainer_CorsRule) DependsOn() []string { +func (r *Container_CorsRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaStoreContainer_CorsRule) SetDependsOn(dependencies []string) { +func (r *Container_CorsRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaStoreContainer_CorsRule) Metadata() map[string]interface{} { +func (r *Container_CorsRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaStoreContainer_CorsRule) SetMetadata(metadata map[string]interface{}) { +func (r *Container_CorsRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaStoreContainer_CorsRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Container_CorsRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaStoreContainer_CorsRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Container_CorsRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-msk-cluster.go b/cloudformation/msk/aws-msk-cluster.go similarity index 81% rename from cloudformation/resources/aws-msk-cluster.go rename to cloudformation/msk/aws-msk-cluster.go index 1b7dfde739..ea1e00f248 100644 --- a/cloudformation/resources/aws-msk-cluster.go +++ b/cloudformation/msk/aws-msk-cluster.go @@ -1,25 +1,26 @@ -package resources +package msk import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSMSKCluster AWS CloudFormation Resource (AWS::MSK::Cluster) +// Cluster AWS CloudFormation Resource (AWS::MSK::Cluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html -type AWSMSKCluster struct { +type Cluster struct { // BrokerNodeGroupInfo AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-brokernodegroupinfo - BrokerNodeGroupInfo *AWSMSKCluster_BrokerNodeGroupInfo `json:"BrokerNodeGroupInfo,omitempty"` + BrokerNodeGroupInfo *Cluster_BrokerNodeGroupInfo `json:"BrokerNodeGroupInfo,omitempty"` // ClientAuthentication AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-clientauthentication - ClientAuthentication *AWSMSKCluster_ClientAuthentication `json:"ClientAuthentication,omitempty"` + ClientAuthentication *Cluster_ClientAuthentication `json:"ClientAuthentication,omitempty"` // ClusterName AWS CloudFormation Property // Required: true @@ -29,12 +30,12 @@ type AWSMSKCluster struct { // ConfigurationInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-configurationinfo - ConfigurationInfo *AWSMSKCluster_ConfigurationInfo `json:"ConfigurationInfo,omitempty"` + ConfigurationInfo *Cluster_ConfigurationInfo `json:"ConfigurationInfo,omitempty"` // EncryptionInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-encryptioninfo - EncryptionInfo *AWSMSKCluster_EncryptionInfo `json:"EncryptionInfo,omitempty"` + EncryptionInfo *Cluster_EncryptionInfo `json:"EncryptionInfo,omitempty"` // EnhancedMonitoring AWS CloudFormation Property // Required: false @@ -67,50 +68,50 @@ type AWSMSKCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster) AWSCloudFormationType() string { +func (r *Cluster) AWSCloudFormationType() string { return "AWS::MSK::Cluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster) DependsOn() []string { +func (r *Cluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster) SetDependsOn(dependencies []string) { +func (r *Cluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster) Metadata() map[string]interface{} { +func (r *Cluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSMSKCluster) MarshalJSON() ([]byte, error) { - type Properties AWSMSKCluster +func (r Cluster) MarshalJSON() ([]byte, error) { + type Properties Cluster return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSMSKCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSMSKCluster) UnmarshalJSON(b []byte) error { - type Properties AWSMSKCluster +func (r *Cluster) UnmarshalJSON(b []byte) error { + type Properties Cluster res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSMSKCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSMSKCluster(*res.Properties) + *r = Cluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-msk-cluster_brokernodegroupinfo.go b/cloudformation/msk/aws-msk-cluster_brokernodegroupinfo.go similarity index 78% rename from cloudformation/resources/aws-msk-cluster_brokernodegroupinfo.go rename to cloudformation/msk/aws-msk-cluster_brokernodegroupinfo.go index 156c0e9f63..d565bd91e4 100644 --- a/cloudformation/resources/aws-msk-cluster_brokernodegroupinfo.go +++ b/cloudformation/msk/aws-msk-cluster_brokernodegroupinfo.go @@ -1,10 +1,12 @@ -package resources +package msk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMSKCluster_BrokerNodeGroupInfo AWS CloudFormation Resource (AWS::MSK::Cluster.BrokerNodeGroupInfo) +// Cluster_BrokerNodeGroupInfo AWS CloudFormation Resource (AWS::MSK::Cluster.BrokerNodeGroupInfo) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html -type AWSMSKCluster_BrokerNodeGroupInfo struct { +type Cluster_BrokerNodeGroupInfo struct { // BrokerAZDistribution AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSMSKCluster_BrokerNodeGroupInfo struct { // StorageInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-storageinfo - StorageInfo *AWSMSKCluster_StorageInfo `json:"StorageInfo,omitempty"` + StorageInfo *Cluster_StorageInfo `json:"StorageInfo,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,42 +44,42 @@ type AWSMSKCluster_BrokerNodeGroupInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_BrokerNodeGroupInfo) AWSCloudFormationType() string { +func (r *Cluster_BrokerNodeGroupInfo) AWSCloudFormationType() string { return "AWS::MSK::Cluster.BrokerNodeGroupInfo" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_BrokerNodeGroupInfo) DependsOn() []string { +func (r *Cluster_BrokerNodeGroupInfo) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_BrokerNodeGroupInfo) SetDependsOn(dependencies []string) { +func (r *Cluster_BrokerNodeGroupInfo) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_BrokerNodeGroupInfo) Metadata() map[string]interface{} { +func (r *Cluster_BrokerNodeGroupInfo) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_BrokerNodeGroupInfo) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_BrokerNodeGroupInfo) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_BrokerNodeGroupInfo) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_BrokerNodeGroupInfo) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_BrokerNodeGroupInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_BrokerNodeGroupInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/msk/aws-msk-cluster_clientauthentication.go b/cloudformation/msk/aws-msk-cluster_clientauthentication.go new file mode 100644 index 0000000000..18d6762556 --- /dev/null +++ b/cloudformation/msk/aws-msk-cluster_clientauthentication.go @@ -0,0 +1,65 @@ +package msk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_ClientAuthentication AWS CloudFormation Resource (AWS::MSK::Cluster.ClientAuthentication) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html +type Cluster_ClientAuthentication struct { + + // Tls AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html#cfn-msk-cluster-clientauthentication-tls + Tls *Cluster_Tls `json:"Tls,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_ClientAuthentication) AWSCloudFormationType() string { + return "AWS::MSK::Cluster.ClientAuthentication" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ClientAuthentication) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ClientAuthentication) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ClientAuthentication) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ClientAuthentication) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ClientAuthentication) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ClientAuthentication) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/msk/aws-msk-cluster_configurationinfo.go b/cloudformation/msk/aws-msk-cluster_configurationinfo.go new file mode 100644 index 0000000000..6dadc1d96c --- /dev/null +++ b/cloudformation/msk/aws-msk-cluster_configurationinfo.go @@ -0,0 +1,70 @@ +package msk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_ConfigurationInfo AWS CloudFormation Resource (AWS::MSK::Cluster.ConfigurationInfo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html +type Cluster_ConfigurationInfo struct { + + // Arn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html#cfn-msk-cluster-configurationinfo-arn + Arn string `json:"Arn,omitempty"` + + // Revision AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html#cfn-msk-cluster-configurationinfo-revision + Revision int `json:"Revision"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_ConfigurationInfo) AWSCloudFormationType() string { + return "AWS::MSK::Cluster.ConfigurationInfo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ConfigurationInfo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_ConfigurationInfo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ConfigurationInfo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_ConfigurationInfo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ConfigurationInfo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_ConfigurationInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/msk/aws-msk-cluster_ebsstorageinfo.go b/cloudformation/msk/aws-msk-cluster_ebsstorageinfo.go new file mode 100644 index 0000000000..c2ea66efc8 --- /dev/null +++ b/cloudformation/msk/aws-msk-cluster_ebsstorageinfo.go @@ -0,0 +1,65 @@ +package msk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_EBSStorageInfo AWS CloudFormation Resource (AWS::MSK::Cluster.EBSStorageInfo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-ebsstorageinfo.html +type Cluster_EBSStorageInfo struct { + + // VolumeSize AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-ebsstorageinfo.html#cfn-msk-cluster-ebsstorageinfo-volumesize + VolumeSize int `json:"VolumeSize,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_EBSStorageInfo) AWSCloudFormationType() string { + return "AWS::MSK::Cluster.EBSStorageInfo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EBSStorageInfo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EBSStorageInfo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EBSStorageInfo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EBSStorageInfo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EBSStorageInfo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EBSStorageInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/msk/aws-msk-cluster_encryptionatrest.go b/cloudformation/msk/aws-msk-cluster_encryptionatrest.go new file mode 100644 index 0000000000..458db53479 --- /dev/null +++ b/cloudformation/msk/aws-msk-cluster_encryptionatrest.go @@ -0,0 +1,65 @@ +package msk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_EncryptionAtRest AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionAtRest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionatrest.html +type Cluster_EncryptionAtRest struct { + + // DataVolumeKMSKeyId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionatrest.html#cfn-msk-cluster-encryptionatrest-datavolumekmskeyid + DataVolumeKMSKeyId string `json:"DataVolumeKMSKeyId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_EncryptionAtRest) AWSCloudFormationType() string { + return "AWS::MSK::Cluster.EncryptionAtRest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EncryptionAtRest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EncryptionAtRest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EncryptionAtRest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EncryptionAtRest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EncryptionAtRest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EncryptionAtRest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/msk/aws-msk-cluster_encryptioninfo.go b/cloudformation/msk/aws-msk-cluster_encryptioninfo.go new file mode 100644 index 0000000000..294a4099a2 --- /dev/null +++ b/cloudformation/msk/aws-msk-cluster_encryptioninfo.go @@ -0,0 +1,70 @@ +package msk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_EncryptionInfo AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionInfo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html +type Cluster_EncryptionInfo struct { + + // EncryptionAtRest AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html#cfn-msk-cluster-encryptioninfo-encryptionatrest + EncryptionAtRest *Cluster_EncryptionAtRest `json:"EncryptionAtRest,omitempty"` + + // EncryptionInTransit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html#cfn-msk-cluster-encryptioninfo-encryptionintransit + EncryptionInTransit *Cluster_EncryptionInTransit `json:"EncryptionInTransit,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_EncryptionInfo) AWSCloudFormationType() string { + return "AWS::MSK::Cluster.EncryptionInfo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EncryptionInfo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EncryptionInfo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EncryptionInfo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EncryptionInfo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EncryptionInfo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EncryptionInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/msk/aws-msk-cluster_encryptionintransit.go b/cloudformation/msk/aws-msk-cluster_encryptionintransit.go new file mode 100644 index 0000000000..90ccdebf80 --- /dev/null +++ b/cloudformation/msk/aws-msk-cluster_encryptionintransit.go @@ -0,0 +1,70 @@ +package msk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_EncryptionInTransit AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionInTransit) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html +type Cluster_EncryptionInTransit struct { + + // ClientBroker AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html#cfn-msk-cluster-encryptionintransit-clientbroker + ClientBroker string `json:"ClientBroker,omitempty"` + + // InCluster AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html#cfn-msk-cluster-encryptionintransit-incluster + InCluster bool `json:"InCluster,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_EncryptionInTransit) AWSCloudFormationType() string { + return "AWS::MSK::Cluster.EncryptionInTransit" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EncryptionInTransit) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_EncryptionInTransit) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EncryptionInTransit) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_EncryptionInTransit) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EncryptionInTransit) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_EncryptionInTransit) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/msk/aws-msk-cluster_storageinfo.go b/cloudformation/msk/aws-msk-cluster_storageinfo.go new file mode 100644 index 0000000000..72452c18d3 --- /dev/null +++ b/cloudformation/msk/aws-msk-cluster_storageinfo.go @@ -0,0 +1,65 @@ +package msk + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_StorageInfo AWS CloudFormation Resource (AWS::MSK::Cluster.StorageInfo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-storageinfo.html +type Cluster_StorageInfo struct { + + // EBSStorageInfo AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-storageinfo.html#cfn-msk-cluster-storageinfo-ebsstorageinfo + EBSStorageInfo *Cluster_EBSStorageInfo `json:"EBSStorageInfo,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_StorageInfo) AWSCloudFormationType() string { + return "AWS::MSK::Cluster.StorageInfo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_StorageInfo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_StorageInfo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_StorageInfo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_StorageInfo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_StorageInfo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_StorageInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-msk-cluster_tls.go b/cloudformation/msk/aws-msk-cluster_tls.go similarity index 75% rename from cloudformation/resources/aws-msk-cluster_tls.go rename to cloudformation/msk/aws-msk-cluster_tls.go index b967398797..01f4773d66 100644 --- a/cloudformation/resources/aws-msk-cluster_tls.go +++ b/cloudformation/msk/aws-msk-cluster_tls.go @@ -1,10 +1,12 @@ -package resources +package msk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMSKCluster_Tls AWS CloudFormation Resource (AWS::MSK::Cluster.Tls) +// Cluster_Tls AWS CloudFormation Resource (AWS::MSK::Cluster.Tls) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-tls.html -type AWSMSKCluster_Tls struct { +type Cluster_Tls struct { // CertificateAuthorityArnList AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMSKCluster_Tls struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_Tls) AWSCloudFormationType() string { +func (r *Cluster_Tls) AWSCloudFormationType() string { return "AWS::MSK::Cluster.Tls" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_Tls) DependsOn() []string { +func (r *Cluster_Tls) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_Tls) SetDependsOn(dependencies []string) { +func (r *Cluster_Tls) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_Tls) Metadata() map[string]interface{} { +func (r *Cluster_Tls) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_Tls) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster_Tls) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_Tls) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster_Tls) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_Tls) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_Tls) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-neptune-dbcluster.go b/cloudformation/neptune/aws-neptune-dbcluster.go similarity index 89% rename from cloudformation/resources/aws-neptune-dbcluster.go rename to cloudformation/neptune/aws-neptune-dbcluster.go index 2ec951e323..df8751e815 100644 --- a/cloudformation/resources/aws-neptune-dbcluster.go +++ b/cloudformation/neptune/aws-neptune-dbcluster.go @@ -1,15 +1,17 @@ -package resources +package neptune import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSNeptuneDBCluster AWS CloudFormation Resource (AWS::Neptune::DBCluster) +// DBCluster AWS CloudFormation Resource (AWS::Neptune::DBCluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html -type AWSNeptuneDBCluster struct { +type DBCluster struct { // AvailabilityZones AWS CloudFormation Property // Required: false @@ -79,7 +81,7 @@ type AWSNeptuneDBCluster struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcSecurityGroupIds AWS CloudFormation Property // Required: false @@ -97,50 +99,50 @@ type AWSNeptuneDBCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSNeptuneDBCluster) AWSCloudFormationType() string { +func (r *DBCluster) AWSCloudFormationType() string { return "AWS::Neptune::DBCluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBCluster) DependsOn() []string { +func (r *DBCluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBCluster) SetDependsOn(dependencies []string) { +func (r *DBCluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBCluster) Metadata() map[string]interface{} { +func (r *DBCluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBCluster) SetMetadata(metadata map[string]interface{}) { +func (r *DBCluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *DBCluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSNeptuneDBCluster) MarshalJSON() ([]byte, error) { - type Properties AWSNeptuneDBCluster +func (r DBCluster) MarshalJSON() ([]byte, error) { + type Properties DBCluster return json.Marshal(&struct { Type string Properties Properties @@ -158,8 +160,8 @@ func (r AWSNeptuneDBCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSNeptuneDBCluster) UnmarshalJSON(b []byte) error { - type Properties AWSNeptuneDBCluster +func (r *DBCluster) UnmarshalJSON(b []byte) error { + type Properties DBCluster res := &struct { Type string Properties *Properties @@ -178,7 +180,7 @@ func (r *AWSNeptuneDBCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSNeptuneDBCluster(*res.Properties) + *r = DBCluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-neptune-dbclusterparametergroup.go b/cloudformation/neptune/aws-neptune-dbclusterparametergroup.go similarity index 80% rename from cloudformation/resources/aws-neptune-dbclusterparametergroup.go rename to cloudformation/neptune/aws-neptune-dbclusterparametergroup.go index e6a56125ed..f2d7b8b538 100644 --- a/cloudformation/resources/aws-neptune-dbclusterparametergroup.go +++ b/cloudformation/neptune/aws-neptune-dbclusterparametergroup.go @@ -1,15 +1,17 @@ -package resources +package neptune import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSNeptuneDBClusterParameterGroup AWS CloudFormation Resource (AWS::Neptune::DBClusterParameterGroup) +// DBClusterParameterGroup AWS CloudFormation Resource (AWS::Neptune::DBClusterParameterGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html -type AWSNeptuneDBClusterParameterGroup struct { +type DBClusterParameterGroup struct { // Description AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSNeptuneDBClusterParameterGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSNeptuneDBClusterParameterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSNeptuneDBClusterParameterGroup) AWSCloudFormationType() string { +func (r *DBClusterParameterGroup) AWSCloudFormationType() string { return "AWS::Neptune::DBClusterParameterGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBClusterParameterGroup) DependsOn() []string { +func (r *DBClusterParameterGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBClusterParameterGroup) SetDependsOn(dependencies []string) { +func (r *DBClusterParameterGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBClusterParameterGroup) Metadata() map[string]interface{} { +func (r *DBClusterParameterGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBClusterParameterGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBClusterParameterGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBClusterParameterGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBClusterParameterGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBClusterParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBClusterParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSNeptuneDBClusterParameterGroup) MarshalJSON() ([]byte, error) { - type Properties AWSNeptuneDBClusterParameterGroup +func (r DBClusterParameterGroup) MarshalJSON() ([]byte, error) { + type Properties DBClusterParameterGroup return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSNeptuneDBClusterParameterGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSNeptuneDBClusterParameterGroup) UnmarshalJSON(b []byte) error { - type Properties AWSNeptuneDBClusterParameterGroup +func (r *DBClusterParameterGroup) UnmarshalJSON(b []byte) error { + type Properties DBClusterParameterGroup res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSNeptuneDBClusterParameterGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSNeptuneDBClusterParameterGroup(*res.Properties) + *r = DBClusterParameterGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-neptune-dbinstance.go b/cloudformation/neptune/aws-neptune-dbinstance.go similarity index 86% rename from cloudformation/resources/aws-neptune-dbinstance.go rename to cloudformation/neptune/aws-neptune-dbinstance.go index f54a3ca542..2479d3483c 100644 --- a/cloudformation/resources/aws-neptune-dbinstance.go +++ b/cloudformation/neptune/aws-neptune-dbinstance.go @@ -1,15 +1,17 @@ -package resources +package neptune import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSNeptuneDBInstance AWS CloudFormation Resource (AWS::Neptune::DBInstance) +// DBInstance AWS CloudFormation Resource (AWS::Neptune::DBInstance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html -type AWSNeptuneDBInstance struct { +type DBInstance struct { // AllowMajorVersionUpgrade AWS CloudFormation Property // Required: false @@ -64,7 +66,7 @@ type AWSNeptuneDBInstance struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -77,50 +79,50 @@ type AWSNeptuneDBInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSNeptuneDBInstance) AWSCloudFormationType() string { +func (r *DBInstance) AWSCloudFormationType() string { return "AWS::Neptune::DBInstance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBInstance) DependsOn() []string { +func (r *DBInstance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBInstance) SetDependsOn(dependencies []string) { +func (r *DBInstance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBInstance) Metadata() map[string]interface{} { +func (r *DBInstance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBInstance) SetMetadata(metadata map[string]interface{}) { +func (r *DBInstance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBInstance) DeletionPolicy() policies.DeletionPolicy { +func (r *DBInstance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSNeptuneDBInstance) MarshalJSON() ([]byte, error) { - type Properties AWSNeptuneDBInstance +func (r DBInstance) MarshalJSON() ([]byte, error) { + type Properties DBInstance return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +140,8 @@ func (r AWSNeptuneDBInstance) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSNeptuneDBInstance) UnmarshalJSON(b []byte) error { - type Properties AWSNeptuneDBInstance +func (r *DBInstance) UnmarshalJSON(b []byte) error { + type Properties DBInstance res := &struct { Type string Properties *Properties @@ -158,7 +160,7 @@ func (r *AWSNeptuneDBInstance) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSNeptuneDBInstance(*res.Properties) + *r = DBInstance(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-neptune-dbparametergroup.go b/cloudformation/neptune/aws-neptune-dbparametergroup.go similarity index 81% rename from cloudformation/resources/aws-neptune-dbparametergroup.go rename to cloudformation/neptune/aws-neptune-dbparametergroup.go index 16335377cf..795bbe4bbd 100644 --- a/cloudformation/resources/aws-neptune-dbparametergroup.go +++ b/cloudformation/neptune/aws-neptune-dbparametergroup.go @@ -1,15 +1,17 @@ -package resources +package neptune import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSNeptuneDBParameterGroup AWS CloudFormation Resource (AWS::Neptune::DBParameterGroup) +// DBParameterGroup AWS CloudFormation Resource (AWS::Neptune::DBParameterGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html -type AWSNeptuneDBParameterGroup struct { +type DBParameterGroup struct { // Description AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSNeptuneDBParameterGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSNeptuneDBParameterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSNeptuneDBParameterGroup) AWSCloudFormationType() string { +func (r *DBParameterGroup) AWSCloudFormationType() string { return "AWS::Neptune::DBParameterGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBParameterGroup) DependsOn() []string { +func (r *DBParameterGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBParameterGroup) SetDependsOn(dependencies []string) { +func (r *DBParameterGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBParameterGroup) Metadata() map[string]interface{} { +func (r *DBParameterGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBParameterGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBParameterGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBParameterGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBParameterGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSNeptuneDBParameterGroup) MarshalJSON() ([]byte, error) { - type Properties AWSNeptuneDBParameterGroup +func (r DBParameterGroup) MarshalJSON() ([]byte, error) { + type Properties DBParameterGroup return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSNeptuneDBParameterGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSNeptuneDBParameterGroup) UnmarshalJSON(b []byte) error { - type Properties AWSNeptuneDBParameterGroup +func (r *DBParameterGroup) UnmarshalJSON(b []byte) error { + type Properties DBParameterGroup res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSNeptuneDBParameterGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSNeptuneDBParameterGroup(*res.Properties) + *r = DBParameterGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-neptune-dbsubnetgroup.go b/cloudformation/neptune/aws-neptune-dbsubnetgroup.go similarity index 81% rename from cloudformation/resources/aws-neptune-dbsubnetgroup.go rename to cloudformation/neptune/aws-neptune-dbsubnetgroup.go index d4f051e61a..6c6e9cf889 100644 --- a/cloudformation/resources/aws-neptune-dbsubnetgroup.go +++ b/cloudformation/neptune/aws-neptune-dbsubnetgroup.go @@ -1,15 +1,17 @@ -package resources +package neptune import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSNeptuneDBSubnetGroup AWS CloudFormation Resource (AWS::Neptune::DBSubnetGroup) +// DBSubnetGroup AWS CloudFormation Resource (AWS::Neptune::DBSubnetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html -type AWSNeptuneDBSubnetGroup struct { +type DBSubnetGroup struct { // DBSubnetGroupDescription AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSNeptuneDBSubnetGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSNeptuneDBSubnetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSNeptuneDBSubnetGroup) AWSCloudFormationType() string { +func (r *DBSubnetGroup) AWSCloudFormationType() string { return "AWS::Neptune::DBSubnetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBSubnetGroup) DependsOn() []string { +func (r *DBSubnetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSNeptuneDBSubnetGroup) SetDependsOn(dependencies []string) { +func (r *DBSubnetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBSubnetGroup) Metadata() map[string]interface{} { +func (r *DBSubnetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSNeptuneDBSubnetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBSubnetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBSubnetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBSubnetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSNeptuneDBSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSNeptuneDBSubnetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSNeptuneDBSubnetGroup +func (r DBSubnetGroup) MarshalJSON() ([]byte, error) { + type Properties DBSubnetGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSNeptuneDBSubnetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSNeptuneDBSubnetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSNeptuneDBSubnetGroup +func (r *DBSubnetGroup) UnmarshalJSON(b []byte) error { + type Properties DBSubnetGroup res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSNeptuneDBSubnetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSNeptuneDBSubnetGroup(*res.Properties) + *r = DBSubnetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-opsworks-app.go b/cloudformation/opsworks/aws-opsworks-app.go similarity index 83% rename from cloudformation/resources/aws-opsworks-app.go rename to cloudformation/opsworks/aws-opsworks-app.go index 915a6081e1..9427dfd5a8 100644 --- a/cloudformation/resources/aws-opsworks-app.go +++ b/cloudformation/opsworks/aws-opsworks-app.go @@ -1,20 +1,21 @@ -package resources +package opsworks import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSOpsWorksApp AWS CloudFormation Resource (AWS::OpsWorks::App) +// App AWS CloudFormation Resource (AWS::OpsWorks::App) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html -type AWSOpsWorksApp struct { +type App struct { // AppSource AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-appsource - AppSource *AWSOpsWorksApp_Source `json:"AppSource,omitempty"` + AppSource *App_Source `json:"AppSource,omitempty"` // Attributes AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSOpsWorksApp struct { // DataSources AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-datasources - DataSources []AWSOpsWorksApp_DataSource `json:"DataSources,omitempty"` + DataSources []App_DataSource `json:"DataSources,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -44,7 +45,7 @@ type AWSOpsWorksApp struct { // Environment AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-environment - Environment []AWSOpsWorksApp_EnvironmentVariable `json:"Environment,omitempty"` + Environment []App_EnvironmentVariable `json:"Environment,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -59,7 +60,7 @@ type AWSOpsWorksApp struct { // SslConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-sslconfiguration - SslConfiguration *AWSOpsWorksApp_SslConfiguration `json:"SslConfiguration,omitempty"` + SslConfiguration *App_SslConfiguration `json:"SslConfiguration,omitempty"` // StackId AWS CloudFormation Property // Required: true @@ -82,50 +83,50 @@ type AWSOpsWorksApp struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksApp) AWSCloudFormationType() string { +func (r *App) AWSCloudFormationType() string { return "AWS::OpsWorks::App" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp) DependsOn() []string { +func (r *App) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp) SetDependsOn(dependencies []string) { +func (r *App) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp) Metadata() map[string]interface{} { +func (r *App) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp) SetMetadata(metadata map[string]interface{}) { +func (r *App) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp) DeletionPolicy() policies.DeletionPolicy { +func (r *App) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSOpsWorksApp) MarshalJSON() ([]byte, error) { - type Properties AWSOpsWorksApp +func (r App) MarshalJSON() ([]byte, error) { + type Properties App return json.Marshal(&struct { Type string Properties Properties @@ -143,8 +144,8 @@ func (r AWSOpsWorksApp) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSOpsWorksApp) UnmarshalJSON(b []byte) error { - type Properties AWSOpsWorksApp +func (r *App) UnmarshalJSON(b []byte) error { + type Properties App res := &struct { Type string Properties *Properties @@ -163,7 +164,7 @@ func (r *AWSOpsWorksApp) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSOpsWorksApp(*res.Properties) + *r = App(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-opsworks-app_datasource.go b/cloudformation/opsworks/aws-opsworks-app_datasource.go similarity index 77% rename from cloudformation/resources/aws-opsworks-app_datasource.go rename to cloudformation/opsworks/aws-opsworks-app_datasource.go index 0d86707e93..256dcc8ce2 100644 --- a/cloudformation/resources/aws-opsworks-app_datasource.go +++ b/cloudformation/opsworks/aws-opsworks-app_datasource.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksApp_DataSource AWS CloudFormation Resource (AWS::OpsWorks::App.DataSource) +// App_DataSource AWS CloudFormation Resource (AWS::OpsWorks::App.DataSource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html -type AWSOpsWorksApp_DataSource struct { +type App_DataSource struct { // Arn AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSOpsWorksApp_DataSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksApp_DataSource) AWSCloudFormationType() string { +func (r *App_DataSource) AWSCloudFormationType() string { return "AWS::OpsWorks::App.DataSource" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp_DataSource) DependsOn() []string { +func (r *App_DataSource) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp_DataSource) SetDependsOn(dependencies []string) { +func (r *App_DataSource) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp_DataSource) Metadata() map[string]interface{} { +func (r *App_DataSource) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp_DataSource) SetMetadata(metadata map[string]interface{}) { +func (r *App_DataSource) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp_DataSource) DeletionPolicy() policies.DeletionPolicy { +func (r *App_DataSource) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp_DataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App_DataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-app_environmentvariable.go b/cloudformation/opsworks/aws-opsworks-app_environmentvariable.go similarity index 75% rename from cloudformation/resources/aws-opsworks-app_environmentvariable.go rename to cloudformation/opsworks/aws-opsworks-app_environmentvariable.go index b40ef9f914..6646752cd0 100644 --- a/cloudformation/resources/aws-opsworks-app_environmentvariable.go +++ b/cloudformation/opsworks/aws-opsworks-app_environmentvariable.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksApp_EnvironmentVariable AWS CloudFormation Resource (AWS::OpsWorks::App.EnvironmentVariable) +// App_EnvironmentVariable AWS CloudFormation Resource (AWS::OpsWorks::App.EnvironmentVariable) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html -type AWSOpsWorksApp_EnvironmentVariable struct { +type App_EnvironmentVariable struct { // Key AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSOpsWorksApp_EnvironmentVariable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksApp_EnvironmentVariable) AWSCloudFormationType() string { +func (r *App_EnvironmentVariable) AWSCloudFormationType() string { return "AWS::OpsWorks::App.EnvironmentVariable" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp_EnvironmentVariable) DependsOn() []string { +func (r *App_EnvironmentVariable) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp_EnvironmentVariable) SetDependsOn(dependencies []string) { +func (r *App_EnvironmentVariable) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp_EnvironmentVariable) Metadata() map[string]interface{} { +func (r *App_EnvironmentVariable) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { +func (r *App_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { +func (r *App_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-app_source.go b/cloudformation/opsworks/aws-opsworks-app_source.go similarity index 82% rename from cloudformation/resources/aws-opsworks-app_source.go rename to cloudformation/opsworks/aws-opsworks-app_source.go index 7aaeea00e5..b240e748f4 100644 --- a/cloudformation/resources/aws-opsworks-app_source.go +++ b/cloudformation/opsworks/aws-opsworks-app_source.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksApp_Source AWS CloudFormation Resource (AWS::OpsWorks::App.Source) +// App_Source AWS CloudFormation Resource (AWS::OpsWorks::App.Source) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html -type AWSOpsWorksApp_Source struct { +type App_Source struct { // Password AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSOpsWorksApp_Source struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksApp_Source) AWSCloudFormationType() string { +func (r *App_Source) AWSCloudFormationType() string { return "AWS::OpsWorks::App.Source" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp_Source) DependsOn() []string { +func (r *App_Source) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp_Source) SetDependsOn(dependencies []string) { +func (r *App_Source) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp_Source) Metadata() map[string]interface{} { +func (r *App_Source) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp_Source) SetMetadata(metadata map[string]interface{}) { +func (r *App_Source) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp_Source) DeletionPolicy() policies.DeletionPolicy { +func (r *App_Source) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp_Source) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App_Source) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-app_sslconfiguration.go b/cloudformation/opsworks/aws-opsworks-app_sslconfiguration.go similarity index 76% rename from cloudformation/resources/aws-opsworks-app_sslconfiguration.go rename to cloudformation/opsworks/aws-opsworks-app_sslconfiguration.go index caf8152d13..090fbf53df 100644 --- a/cloudformation/resources/aws-opsworks-app_sslconfiguration.go +++ b/cloudformation/opsworks/aws-opsworks-app_sslconfiguration.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksApp_SslConfiguration AWS CloudFormation Resource (AWS::OpsWorks::App.SslConfiguration) +// App_SslConfiguration AWS CloudFormation Resource (AWS::OpsWorks::App.SslConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html -type AWSOpsWorksApp_SslConfiguration struct { +type App_SslConfiguration struct { // Certificate AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSOpsWorksApp_SslConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksApp_SslConfiguration) AWSCloudFormationType() string { +func (r *App_SslConfiguration) AWSCloudFormationType() string { return "AWS::OpsWorks::App.SslConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp_SslConfiguration) DependsOn() []string { +func (r *App_SslConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksApp_SslConfiguration) SetDependsOn(dependencies []string) { +func (r *App_SslConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp_SslConfiguration) Metadata() map[string]interface{} { +func (r *App_SslConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksApp_SslConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *App_SslConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp_SslConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *App_SslConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksApp_SslConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App_SslConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-elasticloadbalancerattachment.go b/cloudformation/opsworks/aws-opsworks-elasticloadbalancerattachment.go similarity index 75% rename from cloudformation/resources/aws-opsworks-elasticloadbalancerattachment.go rename to cloudformation/opsworks/aws-opsworks-elasticloadbalancerattachment.go index 23ecaab4f7..461973af1c 100644 --- a/cloudformation/resources/aws-opsworks-elasticloadbalancerattachment.go +++ b/cloudformation/opsworks/aws-opsworks-elasticloadbalancerattachment.go @@ -1,15 +1,16 @@ -package resources +package opsworks import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSOpsWorksElasticLoadBalancerAttachment AWS CloudFormation Resource (AWS::OpsWorks::ElasticLoadBalancerAttachment) +// ElasticLoadBalancerAttachment AWS CloudFormation Resource (AWS::OpsWorks::ElasticLoadBalancerAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html -type AWSOpsWorksElasticLoadBalancerAttachment struct { +type ElasticLoadBalancerAttachment struct { // ElasticLoadBalancerName AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSOpsWorksElasticLoadBalancerAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksElasticLoadBalancerAttachment) AWSCloudFormationType() string { +func (r *ElasticLoadBalancerAttachment) AWSCloudFormationType() string { return "AWS::OpsWorks::ElasticLoadBalancerAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksElasticLoadBalancerAttachment) DependsOn() []string { +func (r *ElasticLoadBalancerAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksElasticLoadBalancerAttachment) SetDependsOn(dependencies []string) { +func (r *ElasticLoadBalancerAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksElasticLoadBalancerAttachment) Metadata() map[string]interface{} { +func (r *ElasticLoadBalancerAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksElasticLoadBalancerAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *ElasticLoadBalancerAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksElasticLoadBalancerAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *ElasticLoadBalancerAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksElasticLoadBalancerAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ElasticLoadBalancerAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSOpsWorksElasticLoadBalancerAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSOpsWorksElasticLoadBalancerAttachment +func (r ElasticLoadBalancerAttachment) MarshalJSON() ([]byte, error) { + type Properties ElasticLoadBalancerAttachment return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSOpsWorksElasticLoadBalancerAttachment) MarshalJSON() ([]byte, error) // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSOpsWorksElasticLoadBalancerAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSOpsWorksElasticLoadBalancerAttachment +func (r *ElasticLoadBalancerAttachment) UnmarshalJSON(b []byte) error { + type Properties ElasticLoadBalancerAttachment res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSOpsWorksElasticLoadBalancerAttachment) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSOpsWorksElasticLoadBalancerAttachment(*res.Properties) + *r = ElasticLoadBalancerAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-opsworks-instance.go b/cloudformation/opsworks/aws-opsworks-instance.go similarity index 88% rename from cloudformation/resources/aws-opsworks-instance.go rename to cloudformation/opsworks/aws-opsworks-instance.go index 9d2827bc5a..cc8feb3c33 100644 --- a/cloudformation/resources/aws-opsworks-instance.go +++ b/cloudformation/opsworks/aws-opsworks-instance.go @@ -1,15 +1,16 @@ -package resources +package opsworks import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSOpsWorksInstance AWS CloudFormation Resource (AWS::OpsWorks::Instance) +// Instance AWS CloudFormation Resource (AWS::OpsWorks::Instance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html -type AWSOpsWorksInstance struct { +type Instance struct { // AgentVersion AWS CloudFormation Property // Required: false @@ -39,7 +40,7 @@ type AWSOpsWorksInstance struct { // BlockDeviceMappings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-blockdevicemappings - BlockDeviceMappings []AWSOpsWorksInstance_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` + BlockDeviceMappings []Instance_BlockDeviceMapping `json:"BlockDeviceMappings,omitempty"` // EbsOptimized AWS CloudFormation Property // Required: false @@ -104,7 +105,7 @@ type AWSOpsWorksInstance struct { // TimeBasedAutoScaling AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-timebasedautoscaling - TimeBasedAutoScaling *AWSOpsWorksInstance_TimeBasedAutoScaling `json:"TimeBasedAutoScaling,omitempty"` + TimeBasedAutoScaling *Instance_TimeBasedAutoScaling `json:"TimeBasedAutoScaling,omitempty"` // VirtualizationType AWS CloudFormation Property // Required: false @@ -127,50 +128,50 @@ type AWSOpsWorksInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksInstance) AWSCloudFormationType() string { +func (r *Instance) AWSCloudFormationType() string { return "AWS::OpsWorks::Instance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksInstance) DependsOn() []string { +func (r *Instance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksInstance) SetDependsOn(dependencies []string) { +func (r *Instance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksInstance) Metadata() map[string]interface{} { +func (r *Instance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksInstance) SetMetadata(metadata map[string]interface{}) { +func (r *Instance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksInstance) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSOpsWorksInstance) MarshalJSON() ([]byte, error) { - type Properties AWSOpsWorksInstance +func (r Instance) MarshalJSON() ([]byte, error) { + type Properties Instance return json.Marshal(&struct { Type string Properties Properties @@ -188,8 +189,8 @@ func (r AWSOpsWorksInstance) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSOpsWorksInstance) UnmarshalJSON(b []byte) error { - type Properties AWSOpsWorksInstance +func (r *Instance) UnmarshalJSON(b []byte) error { + type Properties Instance res := &struct { Type string Properties *Properties @@ -208,7 +209,7 @@ func (r *AWSOpsWorksInstance) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSOpsWorksInstance(*res.Properties) + *r = Instance(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-opsworks-instance_blockdevicemapping.go b/cloudformation/opsworks/aws-opsworks-instance_blockdevicemapping.go similarity index 75% rename from cloudformation/resources/aws-opsworks-instance_blockdevicemapping.go rename to cloudformation/opsworks/aws-opsworks-instance_blockdevicemapping.go index 2f8d2f74c9..43f4ac2305 100644 --- a/cloudformation/resources/aws-opsworks-instance_blockdevicemapping.go +++ b/cloudformation/opsworks/aws-opsworks-instance_blockdevicemapping.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksInstance_BlockDeviceMapping AWS CloudFormation Resource (AWS::OpsWorks::Instance.BlockDeviceMapping) +// Instance_BlockDeviceMapping AWS CloudFormation Resource (AWS::OpsWorks::Instance.BlockDeviceMapping) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html -type AWSOpsWorksInstance_BlockDeviceMapping struct { +type Instance_BlockDeviceMapping struct { // DeviceName AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSOpsWorksInstance_BlockDeviceMapping struct { // Ebs AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-ebs - Ebs *AWSOpsWorksInstance_EbsBlockDevice `json:"Ebs,omitempty"` + Ebs *Instance_EbsBlockDevice `json:"Ebs,omitempty"` // NoDevice AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSOpsWorksInstance_BlockDeviceMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksInstance_BlockDeviceMapping) AWSCloudFormationType() string { +func (r *Instance_BlockDeviceMapping) AWSCloudFormationType() string { return "AWS::OpsWorks::Instance.BlockDeviceMapping" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksInstance_BlockDeviceMapping) DependsOn() []string { +func (r *Instance_BlockDeviceMapping) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksInstance_BlockDeviceMapping) SetDependsOn(dependencies []string) { +func (r *Instance_BlockDeviceMapping) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksInstance_BlockDeviceMapping) Metadata() map[string]interface{} { +func (r *Instance_BlockDeviceMapping) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksInstance_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { +func (r *Instance_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksInstance_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksInstance_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-instance_ebsblockdevice.go b/cloudformation/opsworks/aws-opsworks-instance_ebsblockdevice.go similarity index 79% rename from cloudformation/resources/aws-opsworks-instance_ebsblockdevice.go rename to cloudformation/opsworks/aws-opsworks-instance_ebsblockdevice.go index e834a7f112..51e0c22abc 100644 --- a/cloudformation/resources/aws-opsworks-instance_ebsblockdevice.go +++ b/cloudformation/opsworks/aws-opsworks-instance_ebsblockdevice.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksInstance_EbsBlockDevice AWS CloudFormation Resource (AWS::OpsWorks::Instance.EbsBlockDevice) +// Instance_EbsBlockDevice AWS CloudFormation Resource (AWS::OpsWorks::Instance.EbsBlockDevice) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html -type AWSOpsWorksInstance_EbsBlockDevice struct { +type Instance_EbsBlockDevice struct { // DeleteOnTermination AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSOpsWorksInstance_EbsBlockDevice struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksInstance_EbsBlockDevice) AWSCloudFormationType() string { +func (r *Instance_EbsBlockDevice) AWSCloudFormationType() string { return "AWS::OpsWorks::Instance.EbsBlockDevice" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksInstance_EbsBlockDevice) DependsOn() []string { +func (r *Instance_EbsBlockDevice) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksInstance_EbsBlockDevice) SetDependsOn(dependencies []string) { +func (r *Instance_EbsBlockDevice) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksInstance_EbsBlockDevice) Metadata() map[string]interface{} { +func (r *Instance_EbsBlockDevice) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksInstance_EbsBlockDevice) SetMetadata(metadata map[string]interface{}) { +func (r *Instance_EbsBlockDevice) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksInstance_EbsBlockDevice) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance_EbsBlockDevice) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksInstance_EbsBlockDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_EbsBlockDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-instance_timebasedautoscaling.go b/cloudformation/opsworks/aws-opsworks-instance_timebasedautoscaling.go similarity index 81% rename from cloudformation/resources/aws-opsworks-instance_timebasedautoscaling.go rename to cloudformation/opsworks/aws-opsworks-instance_timebasedautoscaling.go index 490c1d262e..e78c794dad 100644 --- a/cloudformation/resources/aws-opsworks-instance_timebasedautoscaling.go +++ b/cloudformation/opsworks/aws-opsworks-instance_timebasedautoscaling.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksInstance_TimeBasedAutoScaling AWS CloudFormation Resource (AWS::OpsWorks::Instance.TimeBasedAutoScaling) +// Instance_TimeBasedAutoScaling AWS CloudFormation Resource (AWS::OpsWorks::Instance.TimeBasedAutoScaling) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html -type AWSOpsWorksInstance_TimeBasedAutoScaling struct { +type Instance_TimeBasedAutoScaling struct { // Friday AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSOpsWorksInstance_TimeBasedAutoScaling struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksInstance_TimeBasedAutoScaling) AWSCloudFormationType() string { +func (r *Instance_TimeBasedAutoScaling) AWSCloudFormationType() string { return "AWS::OpsWorks::Instance.TimeBasedAutoScaling" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksInstance_TimeBasedAutoScaling) DependsOn() []string { +func (r *Instance_TimeBasedAutoScaling) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksInstance_TimeBasedAutoScaling) SetDependsOn(dependencies []string) { +func (r *Instance_TimeBasedAutoScaling) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksInstance_TimeBasedAutoScaling) Metadata() map[string]interface{} { +func (r *Instance_TimeBasedAutoScaling) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksInstance_TimeBasedAutoScaling) SetMetadata(metadata map[string]interface{}) { +func (r *Instance_TimeBasedAutoScaling) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksInstance_TimeBasedAutoScaling) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance_TimeBasedAutoScaling) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksInstance_TimeBasedAutoScaling) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_TimeBasedAutoScaling) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-layer.go b/cloudformation/opsworks/aws-opsworks-layer.go similarity index 86% rename from cloudformation/resources/aws-opsworks-layer.go rename to cloudformation/opsworks/aws-opsworks-layer.go index b8dbb05b82..76bfdadf0e 100644 --- a/cloudformation/resources/aws-opsworks-layer.go +++ b/cloudformation/opsworks/aws-opsworks-layer.go @@ -1,15 +1,17 @@ -package resources +package opsworks import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSOpsWorksLayer AWS CloudFormation Resource (AWS::OpsWorks::Layer) +// Layer AWS CloudFormation Resource (AWS::OpsWorks::Layer) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html -type AWSOpsWorksLayer struct { +type Layer struct { // Attributes AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSOpsWorksLayer struct { // CustomRecipes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customrecipes - CustomRecipes *AWSOpsWorksLayer_Recipes `json:"CustomRecipes,omitempty"` + CustomRecipes *Layer_Recipes `json:"CustomRecipes,omitempty"` // CustomSecurityGroupIds AWS CloudFormation Property // Required: false @@ -59,12 +61,12 @@ type AWSOpsWorksLayer struct { // LifecycleEventConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-lifecycleeventconfiguration - LifecycleEventConfiguration *AWSOpsWorksLayer_LifecycleEventConfiguration `json:"LifecycleEventConfiguration,omitempty"` + LifecycleEventConfiguration *Layer_LifecycleEventConfiguration `json:"LifecycleEventConfiguration,omitempty"` // LoadBasedAutoScaling AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-loadbasedautoscaling - LoadBasedAutoScaling *AWSOpsWorksLayer_LoadBasedAutoScaling `json:"LoadBasedAutoScaling,omitempty"` + LoadBasedAutoScaling *Layer_LoadBasedAutoScaling `json:"LoadBasedAutoScaling,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -89,7 +91,7 @@ type AWSOpsWorksLayer struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -104,7 +106,7 @@ type AWSOpsWorksLayer struct { // VolumeConfigurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-volumeconfigurations - VolumeConfigurations []AWSOpsWorksLayer_VolumeConfiguration `json:"VolumeConfigurations,omitempty"` + VolumeConfigurations []Layer_VolumeConfiguration `json:"VolumeConfigurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -117,50 +119,50 @@ type AWSOpsWorksLayer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer) AWSCloudFormationType() string { +func (r *Layer) AWSCloudFormationType() string { return "AWS::OpsWorks::Layer" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer) DependsOn() []string { +func (r *Layer) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer) SetDependsOn(dependencies []string) { +func (r *Layer) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer) Metadata() map[string]interface{} { +func (r *Layer) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer) SetMetadata(metadata map[string]interface{}) { +func (r *Layer) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer) DeletionPolicy() policies.DeletionPolicy { +func (r *Layer) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Layer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSOpsWorksLayer) MarshalJSON() ([]byte, error) { - type Properties AWSOpsWorksLayer +func (r Layer) MarshalJSON() ([]byte, error) { + type Properties Layer return json.Marshal(&struct { Type string Properties Properties @@ -178,8 +180,8 @@ func (r AWSOpsWorksLayer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSOpsWorksLayer) UnmarshalJSON(b []byte) error { - type Properties AWSOpsWorksLayer +func (r *Layer) UnmarshalJSON(b []byte) error { + type Properties Layer res := &struct { Type string Properties *Properties @@ -198,7 +200,7 @@ func (r *AWSOpsWorksLayer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSOpsWorksLayer(*res.Properties) + *r = Layer(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-opsworks-layer_autoscalingthresholds.go b/cloudformation/opsworks/aws-opsworks-layer_autoscalingthresholds.go similarity index 81% rename from cloudformation/resources/aws-opsworks-layer_autoscalingthresholds.go rename to cloudformation/opsworks/aws-opsworks-layer_autoscalingthresholds.go index f3c05daedb..ae50c59779 100644 --- a/cloudformation/resources/aws-opsworks-layer_autoscalingthresholds.go +++ b/cloudformation/opsworks/aws-opsworks-layer_autoscalingthresholds.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksLayer_AutoScalingThresholds AWS CloudFormation Resource (AWS::OpsWorks::Layer.AutoScalingThresholds) +// Layer_AutoScalingThresholds AWS CloudFormation Resource (AWS::OpsWorks::Layer.AutoScalingThresholds) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html -type AWSOpsWorksLayer_AutoScalingThresholds struct { +type Layer_AutoScalingThresholds struct { // CpuThreshold AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSOpsWorksLayer_AutoScalingThresholds struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_AutoScalingThresholds) AWSCloudFormationType() string { +func (r *Layer_AutoScalingThresholds) AWSCloudFormationType() string { return "AWS::OpsWorks::Layer.AutoScalingThresholds" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_AutoScalingThresholds) DependsOn() []string { +func (r *Layer_AutoScalingThresholds) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_AutoScalingThresholds) SetDependsOn(dependencies []string) { +func (r *Layer_AutoScalingThresholds) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_AutoScalingThresholds) Metadata() map[string]interface{} { +func (r *Layer_AutoScalingThresholds) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_AutoScalingThresholds) SetMetadata(metadata map[string]interface{}) { +func (r *Layer_AutoScalingThresholds) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_AutoScalingThresholds) DeletionPolicy() policies.DeletionPolicy { +func (r *Layer_AutoScalingThresholds) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_AutoScalingThresholds) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Layer_AutoScalingThresholds) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/opsworks/aws-opsworks-layer_lifecycleeventconfiguration.go b/cloudformation/opsworks/aws-opsworks-layer_lifecycleeventconfiguration.go new file mode 100644 index 0000000000..aa69bd1309 --- /dev/null +++ b/cloudformation/opsworks/aws-opsworks-layer_lifecycleeventconfiguration.go @@ -0,0 +1,65 @@ +package opsworks + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Layer_LifecycleEventConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Layer.LifecycleEventConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html +type Layer_LifecycleEventConfiguration struct { + + // ShutdownEventConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration + ShutdownEventConfiguration *Layer_ShutdownEventConfiguration `json:"ShutdownEventConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Layer_LifecycleEventConfiguration) AWSCloudFormationType() string { + return "AWS::OpsWorks::Layer.LifecycleEventConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Layer_LifecycleEventConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Layer_LifecycleEventConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Layer_LifecycleEventConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Layer_LifecycleEventConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Layer_LifecycleEventConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Layer_LifecycleEventConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/opsworks/aws-opsworks-layer_loadbasedautoscaling.go b/cloudformation/opsworks/aws-opsworks-layer_loadbasedautoscaling.go new file mode 100644 index 0000000000..a791b7c303 --- /dev/null +++ b/cloudformation/opsworks/aws-opsworks-layer_loadbasedautoscaling.go @@ -0,0 +1,75 @@ +package opsworks + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Layer_LoadBasedAutoScaling AWS CloudFormation Resource (AWS::OpsWorks::Layer.LoadBasedAutoScaling) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html +type Layer_LoadBasedAutoScaling struct { + + // DownScaling AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-downscaling + DownScaling *Layer_AutoScalingThresholds `json:"DownScaling,omitempty"` + + // Enable AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-enable + Enable bool `json:"Enable,omitempty"` + + // UpScaling AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-upscaling + UpScaling *Layer_AutoScalingThresholds `json:"UpScaling,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Layer_LoadBasedAutoScaling) AWSCloudFormationType() string { + return "AWS::OpsWorks::Layer.LoadBasedAutoScaling" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Layer_LoadBasedAutoScaling) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Layer_LoadBasedAutoScaling) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Layer_LoadBasedAutoScaling) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Layer_LoadBasedAutoScaling) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Layer_LoadBasedAutoScaling) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Layer_LoadBasedAutoScaling) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-opsworks-layer_recipes.go b/cloudformation/opsworks/aws-opsworks-layer_recipes.go similarity index 80% rename from cloudformation/resources/aws-opsworks-layer_recipes.go rename to cloudformation/opsworks/aws-opsworks-layer_recipes.go index ae95124fa6..6ebea2d211 100644 --- a/cloudformation/resources/aws-opsworks-layer_recipes.go +++ b/cloudformation/opsworks/aws-opsworks-layer_recipes.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksLayer_Recipes AWS CloudFormation Resource (AWS::OpsWorks::Layer.Recipes) +// Layer_Recipes AWS CloudFormation Resource (AWS::OpsWorks::Layer.Recipes) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html -type AWSOpsWorksLayer_Recipes struct { +type Layer_Recipes struct { // Configure AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSOpsWorksLayer_Recipes struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_Recipes) AWSCloudFormationType() string { +func (r *Layer_Recipes) AWSCloudFormationType() string { return "AWS::OpsWorks::Layer.Recipes" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_Recipes) DependsOn() []string { +func (r *Layer_Recipes) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_Recipes) SetDependsOn(dependencies []string) { +func (r *Layer_Recipes) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_Recipes) Metadata() map[string]interface{} { +func (r *Layer_Recipes) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_Recipes) SetMetadata(metadata map[string]interface{}) { +func (r *Layer_Recipes) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_Recipes) DeletionPolicy() policies.DeletionPolicy { +func (r *Layer_Recipes) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_Recipes) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Layer_Recipes) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/opsworks/aws-opsworks-layer_shutdowneventconfiguration.go b/cloudformation/opsworks/aws-opsworks-layer_shutdowneventconfiguration.go new file mode 100644 index 0000000000..f7164e1cef --- /dev/null +++ b/cloudformation/opsworks/aws-opsworks-layer_shutdowneventconfiguration.go @@ -0,0 +1,70 @@ +package opsworks + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Layer_ShutdownEventConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Layer.ShutdownEventConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html +type Layer_ShutdownEventConfiguration struct { + + // DelayUntilElbConnectionsDrained AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-delayuntilelbconnectionsdrained + DelayUntilElbConnectionsDrained bool `json:"DelayUntilElbConnectionsDrained,omitempty"` + + // ExecutionTimeout AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-executiontimeout + ExecutionTimeout int `json:"ExecutionTimeout,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Layer_ShutdownEventConfiguration) AWSCloudFormationType() string { + return "AWS::OpsWorks::Layer.ShutdownEventConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Layer_ShutdownEventConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Layer_ShutdownEventConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Layer_ShutdownEventConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Layer_ShutdownEventConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Layer_ShutdownEventConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Layer_ShutdownEventConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-opsworks-layer_volumeconfiguration.go b/cloudformation/opsworks/aws-opsworks-layer_volumeconfiguration.go similarity index 81% rename from cloudformation/resources/aws-opsworks-layer_volumeconfiguration.go rename to cloudformation/opsworks/aws-opsworks-layer_volumeconfiguration.go index cb90e27dde..7415039591 100644 --- a/cloudformation/resources/aws-opsworks-layer_volumeconfiguration.go +++ b/cloudformation/opsworks/aws-opsworks-layer_volumeconfiguration.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksLayer_VolumeConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Layer.VolumeConfiguration) +// Layer_VolumeConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Layer.VolumeConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html -type AWSOpsWorksLayer_VolumeConfiguration struct { +type Layer_VolumeConfiguration struct { // Encrypted AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSOpsWorksLayer_VolumeConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_VolumeConfiguration) AWSCloudFormationType() string { +func (r *Layer_VolumeConfiguration) AWSCloudFormationType() string { return "AWS::OpsWorks::Layer.VolumeConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_VolumeConfiguration) DependsOn() []string { +func (r *Layer_VolumeConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_VolumeConfiguration) SetDependsOn(dependencies []string) { +func (r *Layer_VolumeConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_VolumeConfiguration) Metadata() map[string]interface{} { +func (r *Layer_VolumeConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_VolumeConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Layer_VolumeConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_VolumeConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Layer_VolumeConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_VolumeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Layer_VolumeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-stack.go b/cloudformation/opsworks/aws-opsworks-stack.go similarity index 87% rename from cloudformation/resources/aws-opsworks-stack.go rename to cloudformation/opsworks/aws-opsworks-stack.go index 86b443289f..35a399d3b6 100644 --- a/cloudformation/resources/aws-opsworks-stack.go +++ b/cloudformation/opsworks/aws-opsworks-stack.go @@ -1,15 +1,17 @@ -package resources +package opsworks import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSOpsWorksStack AWS CloudFormation Resource (AWS::OpsWorks::Stack) +// Stack AWS CloudFormation Resource (AWS::OpsWorks::Stack) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html -type AWSOpsWorksStack struct { +type Stack struct { // AgentVersion AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSOpsWorksStack struct { // ChefConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-chefconfiguration - ChefConfiguration *AWSOpsWorksStack_ChefConfiguration `json:"ChefConfiguration,omitempty"` + ChefConfiguration *Stack_ChefConfiguration `json:"ChefConfiguration,omitempty"` // CloneAppIds AWS CloudFormation Property // Required: false @@ -39,12 +41,12 @@ type AWSOpsWorksStack struct { // ConfigurationManager AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-configmanager - ConfigurationManager *AWSOpsWorksStack_StackConfigurationManager `json:"ConfigurationManager,omitempty"` + ConfigurationManager *Stack_StackConfigurationManager `json:"ConfigurationManager,omitempty"` // CustomCookbooksSource AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-custcookbooksource - CustomCookbooksSource *AWSOpsWorksStack_Source `json:"CustomCookbooksSource,omitempty"` + CustomCookbooksSource *Stack_Source `json:"CustomCookbooksSource,omitempty"` // CustomJson AWS CloudFormation Property // Required: false @@ -89,7 +91,7 @@ type AWSOpsWorksStack struct { // ElasticIps AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-elasticips - ElasticIps []AWSOpsWorksStack_ElasticIp `json:"ElasticIps,omitempty"` + ElasticIps []Stack_ElasticIp `json:"ElasticIps,omitempty"` // HostnameTheme AWS CloudFormation Property // Required: false @@ -104,7 +106,7 @@ type AWSOpsWorksStack struct { // RdsDbInstances AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-rdsdbinstances - RdsDbInstances []AWSOpsWorksStack_RdsDbInstance `json:"RdsDbInstances,omitempty"` + RdsDbInstances []Stack_RdsDbInstance `json:"RdsDbInstances,omitempty"` // ServiceRoleArn AWS CloudFormation Property // Required: true @@ -119,7 +121,7 @@ type AWSOpsWorksStack struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // UseCustomCookbooks AWS CloudFormation Property // Required: false @@ -147,50 +149,50 @@ type AWSOpsWorksStack struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksStack) AWSCloudFormationType() string { +func (r *Stack) AWSCloudFormationType() string { return "AWS::OpsWorks::Stack" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack) DependsOn() []string { +func (r *Stack) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack) SetDependsOn(dependencies []string) { +func (r *Stack) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack) Metadata() map[string]interface{} { +func (r *Stack) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack) SetMetadata(metadata map[string]interface{}) { +func (r *Stack) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack) DeletionPolicy() policies.DeletionPolicy { +func (r *Stack) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stack) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSOpsWorksStack) MarshalJSON() ([]byte, error) { - type Properties AWSOpsWorksStack +func (r Stack) MarshalJSON() ([]byte, error) { + type Properties Stack return json.Marshal(&struct { Type string Properties Properties @@ -208,8 +210,8 @@ func (r AWSOpsWorksStack) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSOpsWorksStack) UnmarshalJSON(b []byte) error { - type Properties AWSOpsWorksStack +func (r *Stack) UnmarshalJSON(b []byte) error { + type Properties Stack res := &struct { Type string Properties *Properties @@ -228,7 +230,7 @@ func (r *AWSOpsWorksStack) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSOpsWorksStack(*res.Properties) + *r = Stack(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/opsworks/aws-opsworks-stack_chefconfiguration.go b/cloudformation/opsworks/aws-opsworks-stack_chefconfiguration.go new file mode 100644 index 0000000000..eb3c0cf4c6 --- /dev/null +++ b/cloudformation/opsworks/aws-opsworks-stack_chefconfiguration.go @@ -0,0 +1,70 @@ +package opsworks + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Stack_ChefConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Stack.ChefConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html +type Stack_ChefConfiguration struct { + + // BerkshelfVersion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion + BerkshelfVersion string `json:"BerkshelfVersion,omitempty"` + + // ManageBerkshelf AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion + ManageBerkshelf bool `json:"ManageBerkshelf,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Stack_ChefConfiguration) AWSCloudFormationType() string { + return "AWS::OpsWorks::Stack.ChefConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stack_ChefConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stack_ChefConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stack_ChefConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stack_ChefConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stack_ChefConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stack_ChefConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-opsworks-stack_elasticip.go b/cloudformation/opsworks/aws-opsworks-stack_elasticip.go similarity index 75% rename from cloudformation/resources/aws-opsworks-stack_elasticip.go rename to cloudformation/opsworks/aws-opsworks-stack_elasticip.go index 9e9ada5e80..d3f361e41b 100644 --- a/cloudformation/resources/aws-opsworks-stack_elasticip.go +++ b/cloudformation/opsworks/aws-opsworks-stack_elasticip.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksStack_ElasticIp AWS CloudFormation Resource (AWS::OpsWorks::Stack.ElasticIp) +// Stack_ElasticIp AWS CloudFormation Resource (AWS::OpsWorks::Stack.ElasticIp) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html -type AWSOpsWorksStack_ElasticIp struct { +type Stack_ElasticIp struct { // Ip AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSOpsWorksStack_ElasticIp struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksStack_ElasticIp) AWSCloudFormationType() string { +func (r *Stack_ElasticIp) AWSCloudFormationType() string { return "AWS::OpsWorks::Stack.ElasticIp" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_ElasticIp) DependsOn() []string { +func (r *Stack_ElasticIp) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_ElasticIp) SetDependsOn(dependencies []string) { +func (r *Stack_ElasticIp) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_ElasticIp) Metadata() map[string]interface{} { +func (r *Stack_ElasticIp) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_ElasticIp) SetMetadata(metadata map[string]interface{}) { +func (r *Stack_ElasticIp) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_ElasticIp) DeletionPolicy() policies.DeletionPolicy { +func (r *Stack_ElasticIp) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_ElasticIp) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stack_ElasticIp) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-stack_rdsdbinstance.go b/cloudformation/opsworks/aws-opsworks-stack_rdsdbinstance.go similarity index 76% rename from cloudformation/resources/aws-opsworks-stack_rdsdbinstance.go rename to cloudformation/opsworks/aws-opsworks-stack_rdsdbinstance.go index 05219d8b0d..23b7384ee6 100644 --- a/cloudformation/resources/aws-opsworks-stack_rdsdbinstance.go +++ b/cloudformation/opsworks/aws-opsworks-stack_rdsdbinstance.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksStack_RdsDbInstance AWS CloudFormation Resource (AWS::OpsWorks::Stack.RdsDbInstance) +// Stack_RdsDbInstance AWS CloudFormation Resource (AWS::OpsWorks::Stack.RdsDbInstance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html -type AWSOpsWorksStack_RdsDbInstance struct { +type Stack_RdsDbInstance struct { // DbPassword AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSOpsWorksStack_RdsDbInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksStack_RdsDbInstance) AWSCloudFormationType() string { +func (r *Stack_RdsDbInstance) AWSCloudFormationType() string { return "AWS::OpsWorks::Stack.RdsDbInstance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_RdsDbInstance) DependsOn() []string { +func (r *Stack_RdsDbInstance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_RdsDbInstance) SetDependsOn(dependencies []string) { +func (r *Stack_RdsDbInstance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_RdsDbInstance) Metadata() map[string]interface{} { +func (r *Stack_RdsDbInstance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_RdsDbInstance) SetMetadata(metadata map[string]interface{}) { +func (r *Stack_RdsDbInstance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_RdsDbInstance) DeletionPolicy() policies.DeletionPolicy { +func (r *Stack_RdsDbInstance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_RdsDbInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stack_RdsDbInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-stack_source.go b/cloudformation/opsworks/aws-opsworks-stack_source.go similarity index 82% rename from cloudformation/resources/aws-opsworks-stack_source.go rename to cloudformation/opsworks/aws-opsworks-stack_source.go index 8be130151b..6af026588a 100644 --- a/cloudformation/resources/aws-opsworks-stack_source.go +++ b/cloudformation/opsworks/aws-opsworks-stack_source.go @@ -1,10 +1,12 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksStack_Source AWS CloudFormation Resource (AWS::OpsWorks::Stack.Source) +// Stack_Source AWS CloudFormation Resource (AWS::OpsWorks::Stack.Source) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html -type AWSOpsWorksStack_Source struct { +type Stack_Source struct { // Password AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSOpsWorksStack_Source struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksStack_Source) AWSCloudFormationType() string { +func (r *Stack_Source) AWSCloudFormationType() string { return "AWS::OpsWorks::Stack.Source" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_Source) DependsOn() []string { +func (r *Stack_Source) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_Source) SetDependsOn(dependencies []string) { +func (r *Stack_Source) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_Source) Metadata() map[string]interface{} { +func (r *Stack_Source) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_Source) SetMetadata(metadata map[string]interface{}) { +func (r *Stack_Source) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_Source) DeletionPolicy() policies.DeletionPolicy { +func (r *Stack_Source) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_Source) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Stack_Source) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/opsworks/aws-opsworks-stack_stackconfigurationmanager.go b/cloudformation/opsworks/aws-opsworks-stack_stackconfigurationmanager.go new file mode 100644 index 0000000000..20eeb2de59 --- /dev/null +++ b/cloudformation/opsworks/aws-opsworks-stack_stackconfigurationmanager.go @@ -0,0 +1,70 @@ +package opsworks + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Stack_StackConfigurationManager AWS CloudFormation Resource (AWS::OpsWorks::Stack.StackConfigurationManager) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html +type Stack_StackConfigurationManager struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-name + Name string `json:"Name,omitempty"` + + // Version AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Stack_StackConfigurationManager) AWSCloudFormationType() string { + return "AWS::OpsWorks::Stack.StackConfigurationManager" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stack_StackConfigurationManager) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Stack_StackConfigurationManager) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stack_StackConfigurationManager) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Stack_StackConfigurationManager) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stack_StackConfigurationManager) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Stack_StackConfigurationManager) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-opsworks-userprofile.go b/cloudformation/opsworks/aws-opsworks-userprofile.go similarity index 82% rename from cloudformation/resources/aws-opsworks-userprofile.go rename to cloudformation/opsworks/aws-opsworks-userprofile.go index 6a145449cb..6635fa3b1e 100644 --- a/cloudformation/resources/aws-opsworks-userprofile.go +++ b/cloudformation/opsworks/aws-opsworks-userprofile.go @@ -1,15 +1,16 @@ -package resources +package opsworks import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSOpsWorksUserProfile AWS CloudFormation Resource (AWS::OpsWorks::UserProfile) +// UserProfile AWS CloudFormation Resource (AWS::OpsWorks::UserProfile) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html -type AWSOpsWorksUserProfile struct { +type UserProfile struct { // AllowSelfManagement AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSOpsWorksUserProfile struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksUserProfile) AWSCloudFormationType() string { +func (r *UserProfile) AWSCloudFormationType() string { return "AWS::OpsWorks::UserProfile" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksUserProfile) DependsOn() []string { +func (r *UserProfile) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksUserProfile) SetDependsOn(dependencies []string) { +func (r *UserProfile) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksUserProfile) Metadata() map[string]interface{} { +func (r *UserProfile) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksUserProfile) SetMetadata(metadata map[string]interface{}) { +func (r *UserProfile) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksUserProfile) DeletionPolicy() policies.DeletionPolicy { +func (r *UserProfile) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksUserProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSOpsWorksUserProfile) MarshalJSON() ([]byte, error) { - type Properties AWSOpsWorksUserProfile +func (r UserProfile) MarshalJSON() ([]byte, error) { + type Properties UserProfile return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSOpsWorksUserProfile) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSOpsWorksUserProfile) UnmarshalJSON(b []byte) error { - type Properties AWSOpsWorksUserProfile +func (r *UserProfile) UnmarshalJSON(b []byte) error { + type Properties UserProfile res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSOpsWorksUserProfile) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSOpsWorksUserProfile(*res.Properties) + *r = UserProfile(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-opsworks-volume.go b/cloudformation/opsworks/aws-opsworks-volume.go similarity index 82% rename from cloudformation/resources/aws-opsworks-volume.go rename to cloudformation/opsworks/aws-opsworks-volume.go index f8f7609878..ebe8d50d52 100644 --- a/cloudformation/resources/aws-opsworks-volume.go +++ b/cloudformation/opsworks/aws-opsworks-volume.go @@ -1,15 +1,16 @@ -package resources +package opsworks import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSOpsWorksVolume AWS CloudFormation Resource (AWS::OpsWorks::Volume) +// Volume AWS CloudFormation Resource (AWS::OpsWorks::Volume) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html -type AWSOpsWorksVolume struct { +type Volume struct { // Ec2VolumeId AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSOpsWorksVolume struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksVolume) AWSCloudFormationType() string { +func (r *Volume) AWSCloudFormationType() string { return "AWS::OpsWorks::Volume" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksVolume) DependsOn() []string { +func (r *Volume) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksVolume) SetDependsOn(dependencies []string) { +func (r *Volume) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksVolume) Metadata() map[string]interface{} { +func (r *Volume) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksVolume) SetMetadata(metadata map[string]interface{}) { +func (r *Volume) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksVolume) DeletionPolicy() policies.DeletionPolicy { +func (r *Volume) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksVolume) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Volume) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSOpsWorksVolume) MarshalJSON() ([]byte, error) { - type Properties AWSOpsWorksVolume +func (r Volume) MarshalJSON() ([]byte, error) { + type Properties Volume return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSOpsWorksVolume) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSOpsWorksVolume) UnmarshalJSON(b []byte) error { - type Properties AWSOpsWorksVolume +func (r *Volume) UnmarshalJSON(b []byte) error { + type Properties Volume res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSOpsWorksVolume) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSOpsWorksVolume(*res.Properties) + *r = Volume(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-opsworkscm-server.go b/cloudformation/opsworkscm/aws-opsworkscm-server.go similarity index 88% rename from cloudformation/resources/aws-opsworkscm-server.go rename to cloudformation/opsworkscm/aws-opsworkscm-server.go index d319d39a5e..0c182b8778 100644 --- a/cloudformation/resources/aws-opsworkscm-server.go +++ b/cloudformation/opsworkscm/aws-opsworkscm-server.go @@ -1,15 +1,16 @@ -package resources +package opsworkscm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSOpsWorksCMServer AWS CloudFormation Resource (AWS::OpsWorksCM::Server) +// Server AWS CloudFormation Resource (AWS::OpsWorksCM::Server) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html -type AWSOpsWorksCMServer struct { +type Server struct { // AssociatePublicIpAddress AWS CloudFormation Property // Required: false @@ -39,7 +40,7 @@ type AWSOpsWorksCMServer struct { // EngineAttributes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-engineattributes - EngineAttributes []AWSOpsWorksCMServer_EngineAttribute `json:"EngineAttributes,omitempty"` + EngineAttributes []Server_EngineAttribute `json:"EngineAttributes,omitempty"` // EngineModel AWS CloudFormation Property // Required: false @@ -107,50 +108,50 @@ type AWSOpsWorksCMServer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksCMServer) AWSCloudFormationType() string { +func (r *Server) AWSCloudFormationType() string { return "AWS::OpsWorksCM::Server" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksCMServer) DependsOn() []string { +func (r *Server) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksCMServer) SetDependsOn(dependencies []string) { +func (r *Server) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksCMServer) Metadata() map[string]interface{} { +func (r *Server) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksCMServer) SetMetadata(metadata map[string]interface{}) { +func (r *Server) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksCMServer) DeletionPolicy() policies.DeletionPolicy { +func (r *Server) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksCMServer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Server) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSOpsWorksCMServer) MarshalJSON() ([]byte, error) { - type Properties AWSOpsWorksCMServer +func (r Server) MarshalJSON() ([]byte, error) { + type Properties Server return json.Marshal(&struct { Type string Properties Properties @@ -168,8 +169,8 @@ func (r AWSOpsWorksCMServer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSOpsWorksCMServer) UnmarshalJSON(b []byte) error { - type Properties AWSOpsWorksCMServer +func (r *Server) UnmarshalJSON(b []byte) error { + type Properties Server res := &struct { Type string Properties *Properties @@ -188,7 +189,7 @@ func (r *AWSOpsWorksCMServer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSOpsWorksCMServer(*res.Properties) + *r = Server(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/opsworkscm/aws-opsworkscm-server_engineattribute.go b/cloudformation/opsworkscm/aws-opsworkscm-server_engineattribute.go new file mode 100644 index 0000000000..431b35931f --- /dev/null +++ b/cloudformation/opsworkscm/aws-opsworkscm-server_engineattribute.go @@ -0,0 +1,70 @@ +package opsworkscm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Server_EngineAttribute AWS CloudFormation Resource (AWS::OpsWorksCM::Server.EngineAttribute) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html +type Server_EngineAttribute struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html#cfn-opsworkscm-server-engineattribute-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html#cfn-opsworkscm-server-engineattribute-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Server_EngineAttribute) AWSCloudFormationType() string { + return "AWS::OpsWorksCM::Server.EngineAttribute" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Server_EngineAttribute) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Server_EngineAttribute) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Server_EngineAttribute) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Server_EngineAttribute) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Server_EngineAttribute) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Server_EngineAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-admchannel.go b/cloudformation/pinpoint/aws-pinpoint-admchannel.go similarity index 82% rename from cloudformation/resources/aws-pinpoint-admchannel.go rename to cloudformation/pinpoint/aws-pinpoint-admchannel.go index 2fa31b52c4..5dc46e325d 100644 --- a/cloudformation/resources/aws-pinpoint-admchannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-admchannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointADMChannel AWS CloudFormation Resource (AWS::Pinpoint::ADMChannel) +// ADMChannel AWS CloudFormation Resource (AWS::Pinpoint::ADMChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html -type AWSPinpointADMChannel struct { +type ADMChannel struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSPinpointADMChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointADMChannel) AWSCloudFormationType() string { +func (r *ADMChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::ADMChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointADMChannel) DependsOn() []string { +func (r *ADMChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointADMChannel) SetDependsOn(dependencies []string) { +func (r *ADMChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointADMChannel) Metadata() map[string]interface{} { +func (r *ADMChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointADMChannel) SetMetadata(metadata map[string]interface{}) { +func (r *ADMChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointADMChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *ADMChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointADMChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ADMChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointADMChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointADMChannel +func (r ADMChannel) MarshalJSON() ([]byte, error) { + type Properties ADMChannel return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSPinpointADMChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointADMChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointADMChannel +func (r *ADMChannel) UnmarshalJSON(b []byte) error { + type Properties ADMChannel res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSPinpointADMChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointADMChannel(*res.Properties) + *r = ADMChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-apnschannel.go b/cloudformation/pinpoint/aws-pinpoint-apnschannel.go similarity index 85% rename from cloudformation/resources/aws-pinpoint-apnschannel.go rename to cloudformation/pinpoint/aws-pinpoint-apnschannel.go index 3d340ab9ff..5d25ac41fd 100644 --- a/cloudformation/resources/aws-pinpoint-apnschannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-apnschannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointAPNSChannel AWS CloudFormation Resource (AWS::Pinpoint::APNSChannel) +// APNSChannel AWS CloudFormation Resource (AWS::Pinpoint::APNSChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html -type AWSPinpointAPNSChannel struct { +type APNSChannel struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -67,50 +68,50 @@ type AWSPinpointAPNSChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointAPNSChannel) AWSCloudFormationType() string { +func (r *APNSChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::APNSChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointAPNSChannel) DependsOn() []string { +func (r *APNSChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointAPNSChannel) SetDependsOn(dependencies []string) { +func (r *APNSChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointAPNSChannel) Metadata() map[string]interface{} { +func (r *APNSChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointAPNSChannel) SetMetadata(metadata map[string]interface{}) { +func (r *APNSChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointAPNSChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *APNSChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointAPNSChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *APNSChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointAPNSChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointAPNSChannel +func (r APNSChannel) MarshalJSON() ([]byte, error) { + type Properties APNSChannel return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSPinpointAPNSChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointAPNSChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointAPNSChannel +func (r *APNSChannel) UnmarshalJSON(b []byte) error { + type Properties APNSChannel res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSPinpointAPNSChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointAPNSChannel(*res.Properties) + *r = APNSChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-apnssandboxchannel.go b/cloudformation/pinpoint/aws-pinpoint-apnssandboxchannel.go similarity index 84% rename from cloudformation/resources/aws-pinpoint-apnssandboxchannel.go rename to cloudformation/pinpoint/aws-pinpoint-apnssandboxchannel.go index 9e2a18a4ad..c37be7a931 100644 --- a/cloudformation/resources/aws-pinpoint-apnssandboxchannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-apnssandboxchannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointAPNSSandboxChannel AWS CloudFormation Resource (AWS::Pinpoint::APNSSandboxChannel) +// APNSSandboxChannel AWS CloudFormation Resource (AWS::Pinpoint::APNSSandboxChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html -type AWSPinpointAPNSSandboxChannel struct { +type APNSSandboxChannel struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -67,50 +68,50 @@ type AWSPinpointAPNSSandboxChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointAPNSSandboxChannel) AWSCloudFormationType() string { +func (r *APNSSandboxChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::APNSSandboxChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointAPNSSandboxChannel) DependsOn() []string { +func (r *APNSSandboxChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointAPNSSandboxChannel) SetDependsOn(dependencies []string) { +func (r *APNSSandboxChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointAPNSSandboxChannel) Metadata() map[string]interface{} { +func (r *APNSSandboxChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointAPNSSandboxChannel) SetMetadata(metadata map[string]interface{}) { +func (r *APNSSandboxChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointAPNSSandboxChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *APNSSandboxChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointAPNSSandboxChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *APNSSandboxChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointAPNSSandboxChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointAPNSSandboxChannel +func (r APNSSandboxChannel) MarshalJSON() ([]byte, error) { + type Properties APNSSandboxChannel return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSPinpointAPNSSandboxChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointAPNSSandboxChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointAPNSSandboxChannel +func (r *APNSSandboxChannel) UnmarshalJSON(b []byte) error { + type Properties APNSSandboxChannel res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSPinpointAPNSSandboxChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointAPNSSandboxChannel(*res.Properties) + *r = APNSSandboxChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-apnsvoipchannel.go b/cloudformation/pinpoint/aws-pinpoint-apnsvoipchannel.go similarity index 84% rename from cloudformation/resources/aws-pinpoint-apnsvoipchannel.go rename to cloudformation/pinpoint/aws-pinpoint-apnsvoipchannel.go index c2c4f74e1a..d6b83b1454 100644 --- a/cloudformation/resources/aws-pinpoint-apnsvoipchannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-apnsvoipchannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointAPNSVoipChannel AWS CloudFormation Resource (AWS::Pinpoint::APNSVoipChannel) +// APNSVoipChannel AWS CloudFormation Resource (AWS::Pinpoint::APNSVoipChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html -type AWSPinpointAPNSVoipChannel struct { +type APNSVoipChannel struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -67,50 +68,50 @@ type AWSPinpointAPNSVoipChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointAPNSVoipChannel) AWSCloudFormationType() string { +func (r *APNSVoipChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::APNSVoipChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointAPNSVoipChannel) DependsOn() []string { +func (r *APNSVoipChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointAPNSVoipChannel) SetDependsOn(dependencies []string) { +func (r *APNSVoipChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointAPNSVoipChannel) Metadata() map[string]interface{} { +func (r *APNSVoipChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointAPNSVoipChannel) SetMetadata(metadata map[string]interface{}) { +func (r *APNSVoipChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointAPNSVoipChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *APNSVoipChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointAPNSVoipChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *APNSVoipChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointAPNSVoipChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointAPNSVoipChannel +func (r APNSVoipChannel) MarshalJSON() ([]byte, error) { + type Properties APNSVoipChannel return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSPinpointAPNSVoipChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointAPNSVoipChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointAPNSVoipChannel +func (r *APNSVoipChannel) UnmarshalJSON(b []byte) error { + type Properties APNSVoipChannel res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSPinpointAPNSVoipChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointAPNSVoipChannel(*res.Properties) + *r = APNSVoipChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-apnsvoipsandboxchannel.go b/cloudformation/pinpoint/aws-pinpoint-apnsvoipsandboxchannel.go similarity index 84% rename from cloudformation/resources/aws-pinpoint-apnsvoipsandboxchannel.go rename to cloudformation/pinpoint/aws-pinpoint-apnsvoipsandboxchannel.go index 38bfb28745..13270137a0 100644 --- a/cloudformation/resources/aws-pinpoint-apnsvoipsandboxchannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-apnsvoipsandboxchannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointAPNSVoipSandboxChannel AWS CloudFormation Resource (AWS::Pinpoint::APNSVoipSandboxChannel) +// APNSVoipSandboxChannel AWS CloudFormation Resource (AWS::Pinpoint::APNSVoipSandboxChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html -type AWSPinpointAPNSVoipSandboxChannel struct { +type APNSVoipSandboxChannel struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -67,50 +68,50 @@ type AWSPinpointAPNSVoipSandboxChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointAPNSVoipSandboxChannel) AWSCloudFormationType() string { +func (r *APNSVoipSandboxChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::APNSVoipSandboxChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointAPNSVoipSandboxChannel) DependsOn() []string { +func (r *APNSVoipSandboxChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointAPNSVoipSandboxChannel) SetDependsOn(dependencies []string) { +func (r *APNSVoipSandboxChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointAPNSVoipSandboxChannel) Metadata() map[string]interface{} { +func (r *APNSVoipSandboxChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointAPNSVoipSandboxChannel) SetMetadata(metadata map[string]interface{}) { +func (r *APNSVoipSandboxChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointAPNSVoipSandboxChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *APNSVoipSandboxChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointAPNSVoipSandboxChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *APNSVoipSandboxChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointAPNSVoipSandboxChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointAPNSVoipSandboxChannel +func (r APNSVoipSandboxChannel) MarshalJSON() ([]byte, error) { + type Properties APNSVoipSandboxChannel return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSPinpointAPNSVoipSandboxChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointAPNSVoipSandboxChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointAPNSVoipSandboxChannel +func (r *APNSVoipSandboxChannel) UnmarshalJSON(b []byte) error { + type Properties APNSVoipSandboxChannel res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSPinpointAPNSVoipSandboxChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointAPNSVoipSandboxChannel(*res.Properties) + *r = APNSVoipSandboxChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-app.go b/cloudformation/pinpoint/aws-pinpoint-app.go similarity index 81% rename from cloudformation/resources/aws-pinpoint-app.go rename to cloudformation/pinpoint/aws-pinpoint-app.go index 3a7b5c1b9a..1cf01a0fb4 100644 --- a/cloudformation/resources/aws-pinpoint-app.go +++ b/cloudformation/pinpoint/aws-pinpoint-app.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointApp AWS CloudFormation Resource (AWS::Pinpoint::App) +// App AWS CloudFormation Resource (AWS::Pinpoint::App) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html -type AWSPinpointApp struct { +type App struct { // Name AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSPinpointApp struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointApp) AWSCloudFormationType() string { +func (r *App) AWSCloudFormationType() string { return "AWS::Pinpoint::App" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApp) DependsOn() []string { +func (r *App) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApp) SetDependsOn(dependencies []string) { +func (r *App) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApp) Metadata() map[string]interface{} { +func (r *App) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApp) SetMetadata(metadata map[string]interface{}) { +func (r *App) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApp) DeletionPolicy() policies.DeletionPolicy { +func (r *App) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApp) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *App) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointApp) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointApp +func (r App) MarshalJSON() ([]byte, error) { + type Properties App return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSPinpointApp) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointApp) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointApp +func (r *App) UnmarshalJSON(b []byte) error { + type Properties App res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSPinpointApp) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointApp(*res.Properties) + *r = App(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-applicationsettings.go b/cloudformation/pinpoint/aws-pinpoint-applicationsettings.go similarity index 77% rename from cloudformation/resources/aws-pinpoint-applicationsettings.go rename to cloudformation/pinpoint/aws-pinpoint-applicationsettings.go index 8e2927faee..d5c082d894 100644 --- a/cloudformation/resources/aws-pinpoint-applicationsettings.go +++ b/cloudformation/pinpoint/aws-pinpoint-applicationsettings.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointApplicationSettings AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings) +// ApplicationSettings AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html -type AWSPinpointApplicationSettings struct { +type ApplicationSettings struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSPinpointApplicationSettings struct { // CampaignHook AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-campaignhook - CampaignHook *AWSPinpointApplicationSettings_CampaignHook `json:"CampaignHook,omitempty"` + CampaignHook *ApplicationSettings_CampaignHook `json:"CampaignHook,omitempty"` // CloudWatchMetricsEnabled AWS CloudFormation Property // Required: false @@ -29,12 +30,12 @@ type AWSPinpointApplicationSettings struct { // Limits AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-limits - Limits *AWSPinpointApplicationSettings_Limits `json:"Limits,omitempty"` + Limits *ApplicationSettings_Limits `json:"Limits,omitempty"` // QuietTime AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-quiettime - QuietTime *AWSPinpointApplicationSettings_QuietTime `json:"QuietTime,omitempty"` + QuietTime *ApplicationSettings_QuietTime `json:"QuietTime,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +48,50 @@ type AWSPinpointApplicationSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointApplicationSettings) AWSCloudFormationType() string { +func (r *ApplicationSettings) AWSCloudFormationType() string { return "AWS::Pinpoint::ApplicationSettings" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApplicationSettings) DependsOn() []string { +func (r *ApplicationSettings) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApplicationSettings) SetDependsOn(dependencies []string) { +func (r *ApplicationSettings) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApplicationSettings) Metadata() map[string]interface{} { +func (r *ApplicationSettings) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApplicationSettings) SetMetadata(metadata map[string]interface{}) { +func (r *ApplicationSettings) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApplicationSettings) DeletionPolicy() policies.DeletionPolicy { +func (r *ApplicationSettings) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApplicationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointApplicationSettings) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointApplicationSettings +func (r ApplicationSettings) MarshalJSON() ([]byte, error) { + type Properties ApplicationSettings return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSPinpointApplicationSettings) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointApplicationSettings) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointApplicationSettings +func (r *ApplicationSettings) UnmarshalJSON(b []byte) error { + type Properties ApplicationSettings res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSPinpointApplicationSettings) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointApplicationSettings(*res.Properties) + *r = ApplicationSettings(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/pinpoint/aws-pinpoint-applicationsettings_campaignhook.go b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_campaignhook.go new file mode 100644 index 0000000000..52cb0399a7 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_campaignhook.go @@ -0,0 +1,75 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationSettings_CampaignHook AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings.CampaignHook) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html +type ApplicationSettings_CampaignHook struct { + + // LambdaFunctionName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-lambdafunctionname + LambdaFunctionName string `json:"LambdaFunctionName,omitempty"` + + // Mode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-mode + Mode string `json:"Mode,omitempty"` + + // WebUrl AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-weburl + WebUrl string `json:"WebUrl,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationSettings_CampaignHook) AWSCloudFormationType() string { + return "AWS::Pinpoint::ApplicationSettings.CampaignHook" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationSettings_CampaignHook) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationSettings_CampaignHook) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationSettings_CampaignHook) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationSettings_CampaignHook) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationSettings_CampaignHook) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationSettings_CampaignHook) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-applicationsettings_limits.go b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_limits.go similarity index 77% rename from cloudformation/resources/aws-pinpoint-applicationsettings_limits.go rename to cloudformation/pinpoint/aws-pinpoint-applicationsettings_limits.go index 2db2027e98..bab2aad9c3 100644 --- a/cloudformation/resources/aws-pinpoint-applicationsettings_limits.go +++ b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_limits.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointApplicationSettings_Limits AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings.Limits) +// ApplicationSettings_Limits AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings.Limits) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html -type AWSPinpointApplicationSettings_Limits struct { +type ApplicationSettings_Limits struct { // Daily AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSPinpointApplicationSettings_Limits struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointApplicationSettings_Limits) AWSCloudFormationType() string { +func (r *ApplicationSettings_Limits) AWSCloudFormationType() string { return "AWS::Pinpoint::ApplicationSettings.Limits" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApplicationSettings_Limits) DependsOn() []string { +func (r *ApplicationSettings_Limits) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApplicationSettings_Limits) SetDependsOn(dependencies []string) { +func (r *ApplicationSettings_Limits) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApplicationSettings_Limits) Metadata() map[string]interface{} { +func (r *ApplicationSettings_Limits) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApplicationSettings_Limits) SetMetadata(metadata map[string]interface{}) { +func (r *ApplicationSettings_Limits) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApplicationSettings_Limits) DeletionPolicy() policies.DeletionPolicy { +func (r *ApplicationSettings_Limits) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApplicationSettings_Limits) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationSettings_Limits) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/pinpoint/aws-pinpoint-applicationsettings_quiettime.go b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_quiettime.go new file mode 100644 index 0000000000..7d33b63446 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_quiettime.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ApplicationSettings_QuietTime AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings.QuietTime) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html +type ApplicationSettings_QuietTime struct { + + // End AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html#cfn-pinpoint-applicationsettings-quiettime-end + End string `json:"End,omitempty"` + + // Start AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html#cfn-pinpoint-applicationsettings-quiettime-start + Start string `json:"Start,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ApplicationSettings_QuietTime) AWSCloudFormationType() string { + return "AWS::Pinpoint::ApplicationSettings.QuietTime" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationSettings_QuietTime) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ApplicationSettings_QuietTime) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationSettings_QuietTime) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ApplicationSettings_QuietTime) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationSettings_QuietTime) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ApplicationSettings_QuietTime) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-baiduchannel.go b/cloudformation/pinpoint/aws-pinpoint-baiduchannel.go similarity index 81% rename from cloudformation/resources/aws-pinpoint-baiduchannel.go rename to cloudformation/pinpoint/aws-pinpoint-baiduchannel.go index cd7f555686..0c29ce5071 100644 --- a/cloudformation/resources/aws-pinpoint-baiduchannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-baiduchannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointBaiduChannel AWS CloudFormation Resource (AWS::Pinpoint::BaiduChannel) +// BaiduChannel AWS CloudFormation Resource (AWS::Pinpoint::BaiduChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html -type AWSPinpointBaiduChannel struct { +type BaiduChannel struct { // ApiKey AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSPinpointBaiduChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointBaiduChannel) AWSCloudFormationType() string { +func (r *BaiduChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::BaiduChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointBaiduChannel) DependsOn() []string { +func (r *BaiduChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointBaiduChannel) SetDependsOn(dependencies []string) { +func (r *BaiduChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointBaiduChannel) Metadata() map[string]interface{} { +func (r *BaiduChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointBaiduChannel) SetMetadata(metadata map[string]interface{}) { +func (r *BaiduChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointBaiduChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *BaiduChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointBaiduChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *BaiduChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointBaiduChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointBaiduChannel +func (r BaiduChannel) MarshalJSON() ([]byte, error) { + type Properties BaiduChannel return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSPinpointBaiduChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointBaiduChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointBaiduChannel +func (r *BaiduChannel) UnmarshalJSON(b []byte) error { + type Properties BaiduChannel res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSPinpointBaiduChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointBaiduChannel(*res.Properties) + *r = BaiduChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-campaign.go b/cloudformation/pinpoint/aws-pinpoint-campaign.go similarity index 83% rename from cloudformation/resources/aws-pinpoint-campaign.go rename to cloudformation/pinpoint/aws-pinpoint-campaign.go index 54aac672ef..115c936356 100644 --- a/cloudformation/resources/aws-pinpoint-campaign.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign.go @@ -1,20 +1,21 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointCampaign AWS CloudFormation Resource (AWS::Pinpoint::Campaign) +// Campaign AWS CloudFormation Resource (AWS::Pinpoint::Campaign) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html -type AWSPinpointCampaign struct { +type Campaign struct { // AdditionalTreatments AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-additionaltreatments - AdditionalTreatments []AWSPinpointCampaign_WriteTreatmentResource `json:"AdditionalTreatments,omitempty"` + AdditionalTreatments []Campaign_WriteTreatmentResource `json:"AdditionalTreatments,omitempty"` // ApplicationId AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSPinpointCampaign struct { // CampaignHook AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-campaignhook - CampaignHook *AWSPinpointCampaign_CampaignHook `json:"CampaignHook,omitempty"` + CampaignHook *Campaign_CampaignHook `json:"CampaignHook,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -44,12 +45,12 @@ type AWSPinpointCampaign struct { // Limits AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-limits - Limits *AWSPinpointCampaign_Limits `json:"Limits,omitempty"` + Limits *Campaign_Limits `json:"Limits,omitempty"` // MessageConfiguration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-messageconfiguration - MessageConfiguration *AWSPinpointCampaign_MessageConfiguration `json:"MessageConfiguration,omitempty"` + MessageConfiguration *Campaign_MessageConfiguration `json:"MessageConfiguration,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -59,7 +60,7 @@ type AWSPinpointCampaign struct { // Schedule AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-schedule - Schedule *AWSPinpointCampaign_Schedule `json:"Schedule,omitempty"` + Schedule *Campaign_Schedule `json:"Schedule,omitempty"` // SegmentId AWS CloudFormation Property // Required: true @@ -97,50 +98,50 @@ type AWSPinpointCampaign struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign) AWSCloudFormationType() string { +func (r *Campaign) AWSCloudFormationType() string { return "AWS::Pinpoint::Campaign" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign) DependsOn() []string { +func (r *Campaign) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign) SetDependsOn(dependencies []string) { +func (r *Campaign) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign) Metadata() map[string]interface{} { +func (r *Campaign) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign) SetMetadata(metadata map[string]interface{}) { +func (r *Campaign) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign) DeletionPolicy() policies.DeletionPolicy { +func (r *Campaign) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointCampaign) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointCampaign +func (r Campaign) MarshalJSON() ([]byte, error) { + type Properties Campaign return json.Marshal(&struct { Type string Properties Properties @@ -158,8 +159,8 @@ func (r AWSPinpointCampaign) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointCampaign) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointCampaign +func (r *Campaign) UnmarshalJSON(b []byte) error { + type Properties Campaign res := &struct { Type string Properties *Properties @@ -178,7 +179,7 @@ func (r *AWSPinpointCampaign) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointCampaign(*res.Properties) + *r = Campaign(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/pinpoint/aws-pinpoint-campaign_attributedimension.go b/cloudformation/pinpoint/aws-pinpoint-campaign_attributedimension.go new file mode 100644 index 0000000000..1085073518 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_attributedimension.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Campaign_AttributeDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.AttributeDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html +type Campaign_AttributeDimension struct { + + // AttributeType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html#cfn-pinpoint-campaign-attributedimension-attributetype + AttributeType string `json:"AttributeType,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html#cfn-pinpoint-campaign-attributedimension-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Campaign_AttributeDimension) AWSCloudFormationType() string { + return "AWS::Pinpoint::Campaign.AttributeDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_AttributeDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_AttributeDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_AttributeDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_AttributeDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_AttributeDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_AttributeDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-campaign_campaignemailmessage.go b/cloudformation/pinpoint/aws-pinpoint-campaign_campaignemailmessage.go similarity index 76% rename from cloudformation/resources/aws-pinpoint-campaign_campaignemailmessage.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_campaignemailmessage.go index b18ed19979..c89097211f 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_campaignemailmessage.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_campaignemailmessage.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_CampaignEmailMessage AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignEmailMessage) +// Campaign_CampaignEmailMessage AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignEmailMessage) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html -type AWSPinpointCampaign_CampaignEmailMessage struct { +type Campaign_CampaignEmailMessage struct { // Body AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSPinpointCampaign_CampaignEmailMessage struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_CampaignEmailMessage) AWSCloudFormationType() string { +func (r *Campaign_CampaignEmailMessage) AWSCloudFormationType() string { return "AWS::Pinpoint::Campaign.CampaignEmailMessage" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_CampaignEmailMessage) DependsOn() []string { +func (r *Campaign_CampaignEmailMessage) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_CampaignEmailMessage) SetDependsOn(dependencies []string) { +func (r *Campaign_CampaignEmailMessage) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_CampaignEmailMessage) Metadata() map[string]interface{} { +func (r *Campaign_CampaignEmailMessage) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_CampaignEmailMessage) SetMetadata(metadata map[string]interface{}) { +func (r *Campaign_CampaignEmailMessage) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_CampaignEmailMessage) DeletionPolicy() policies.DeletionPolicy { +func (r *Campaign_CampaignEmailMessage) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_CampaignEmailMessage) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_CampaignEmailMessage) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/pinpoint/aws-pinpoint-campaign_campaigneventfilter.go b/cloudformation/pinpoint/aws-pinpoint-campaign_campaigneventfilter.go new file mode 100644 index 0000000000..74ba79d936 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_campaigneventfilter.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Campaign_CampaignEventFilter AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignEventFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html +type Campaign_CampaignEventFilter struct { + + // Dimensions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html#cfn-pinpoint-campaign-campaigneventfilter-dimensions + Dimensions *Campaign_EventDimensions `json:"Dimensions,omitempty"` + + // FilterType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html#cfn-pinpoint-campaign-campaigneventfilter-filtertype + FilterType string `json:"FilterType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Campaign_CampaignEventFilter) AWSCloudFormationType() string { + return "AWS::Pinpoint::Campaign.CampaignEventFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_CampaignEventFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_CampaignEventFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_CampaignEventFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_CampaignEventFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_CampaignEventFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_CampaignEventFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-campaign_campaignhook.go b/cloudformation/pinpoint/aws-pinpoint-campaign_campaignhook.go similarity index 76% rename from cloudformation/resources/aws-pinpoint-campaign_campaignhook.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_campaignhook.go index fbf42e17cb..880f8c02b5 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_campaignhook.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_campaignhook.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_CampaignHook AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignHook) +// Campaign_CampaignHook AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignHook) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html -type AWSPinpointCampaign_CampaignHook struct { +type Campaign_CampaignHook struct { // LambdaFunctionName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSPinpointCampaign_CampaignHook struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_CampaignHook) AWSCloudFormationType() string { +func (r *Campaign_CampaignHook) AWSCloudFormationType() string { return "AWS::Pinpoint::Campaign.CampaignHook" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_CampaignHook) DependsOn() []string { +func (r *Campaign_CampaignHook) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_CampaignHook) SetDependsOn(dependencies []string) { +func (r *Campaign_CampaignHook) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_CampaignHook) Metadata() map[string]interface{} { +func (r *Campaign_CampaignHook) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_CampaignHook) SetMetadata(metadata map[string]interface{}) { +func (r *Campaign_CampaignHook) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_CampaignHook) DeletionPolicy() policies.DeletionPolicy { +func (r *Campaign_CampaignHook) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_CampaignHook) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_CampaignHook) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-campaign_campaignsmsmessage.go b/cloudformation/pinpoint/aws-pinpoint-campaign_campaignsmsmessage.go similarity index 75% rename from cloudformation/resources/aws-pinpoint-campaign_campaignsmsmessage.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_campaignsmsmessage.go index 10a370b5c2..215c69442f 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_campaignsmsmessage.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_campaignsmsmessage.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_CampaignSmsMessage AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignSmsMessage) +// Campaign_CampaignSmsMessage AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignSmsMessage) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html -type AWSPinpointCampaign_CampaignSmsMessage struct { +type Campaign_CampaignSmsMessage struct { // Body AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSPinpointCampaign_CampaignSmsMessage struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_CampaignSmsMessage) AWSCloudFormationType() string { +func (r *Campaign_CampaignSmsMessage) AWSCloudFormationType() string { return "AWS::Pinpoint::Campaign.CampaignSmsMessage" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_CampaignSmsMessage) DependsOn() []string { +func (r *Campaign_CampaignSmsMessage) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_CampaignSmsMessage) SetDependsOn(dependencies []string) { +func (r *Campaign_CampaignSmsMessage) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_CampaignSmsMessage) Metadata() map[string]interface{} { +func (r *Campaign_CampaignSmsMessage) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_CampaignSmsMessage) SetMetadata(metadata map[string]interface{}) { +func (r *Campaign_CampaignSmsMessage) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_CampaignSmsMessage) DeletionPolicy() policies.DeletionPolicy { +func (r *Campaign_CampaignSmsMessage) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_CampaignSmsMessage) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_CampaignSmsMessage) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/pinpoint/aws-pinpoint-campaign_eventdimensions.go b/cloudformation/pinpoint/aws-pinpoint-campaign_eventdimensions.go new file mode 100644 index 0000000000..1c6104f397 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_eventdimensions.go @@ -0,0 +1,75 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Campaign_EventDimensions AWS CloudFormation Resource (AWS::Pinpoint::Campaign.EventDimensions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html +type Campaign_EventDimensions struct { + + // Attributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-attributes + Attributes interface{} `json:"Attributes,omitempty"` + + // EventType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-eventtype + EventType *Campaign_SetDimension `json:"EventType,omitempty"` + + // Metrics AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-metrics + Metrics interface{} `json:"Metrics,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Campaign_EventDimensions) AWSCloudFormationType() string { + return "AWS::Pinpoint::Campaign.EventDimensions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_EventDimensions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_EventDimensions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_EventDimensions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_EventDimensions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_EventDimensions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_EventDimensions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-campaign_limits.go b/cloudformation/pinpoint/aws-pinpoint-campaign_limits.go similarity index 79% rename from cloudformation/resources/aws-pinpoint-campaign_limits.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_limits.go index 0f86f63a6d..d3a4317563 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_limits.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_limits.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_Limits AWS CloudFormation Resource (AWS::Pinpoint::Campaign.Limits) +// Campaign_Limits AWS CloudFormation Resource (AWS::Pinpoint::Campaign.Limits) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html -type AWSPinpointCampaign_Limits struct { +type Campaign_Limits struct { // Daily AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSPinpointCampaign_Limits struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_Limits) AWSCloudFormationType() string { +func (r *Campaign_Limits) AWSCloudFormationType() string { return "AWS::Pinpoint::Campaign.Limits" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_Limits) DependsOn() []string { +func (r *Campaign_Limits) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_Limits) SetDependsOn(dependencies []string) { +func (r *Campaign_Limits) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_Limits) Metadata() map[string]interface{} { +func (r *Campaign_Limits) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_Limits) SetMetadata(metadata map[string]interface{}) { +func (r *Campaign_Limits) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_Limits) DeletionPolicy() policies.DeletionPolicy { +func (r *Campaign_Limits) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_Limits) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_Limits) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-campaign_message.go b/cloudformation/pinpoint/aws-pinpoint-campaign_message.go similarity index 86% rename from cloudformation/resources/aws-pinpoint-campaign_message.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_message.go index 6493a45838..2b6515cd23 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_message.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_message.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_Message AWS CloudFormation Resource (AWS::Pinpoint::Campaign.Message) +// Campaign_Message AWS CloudFormation Resource (AWS::Pinpoint::Campaign.Message) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html -type AWSPinpointCampaign_Message struct { +type Campaign_Message struct { // Action AWS CloudFormation Property // Required: false @@ -77,42 +79,42 @@ type AWSPinpointCampaign_Message struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_Message) AWSCloudFormationType() string { +func (r *Campaign_Message) AWSCloudFormationType() string { return "AWS::Pinpoint::Campaign.Message" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_Message) DependsOn() []string { +func (r *Campaign_Message) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_Message) SetDependsOn(dependencies []string) { +func (r *Campaign_Message) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_Message) Metadata() map[string]interface{} { +func (r *Campaign_Message) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_Message) SetMetadata(metadata map[string]interface{}) { +func (r *Campaign_Message) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_Message) DeletionPolicy() policies.DeletionPolicy { +func (r *Campaign_Message) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_Message) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_Message) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/pinpoint/aws-pinpoint-campaign_messageconfiguration.go b/cloudformation/pinpoint/aws-pinpoint-campaign_messageconfiguration.go new file mode 100644 index 0000000000..0e127ff402 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_messageconfiguration.go @@ -0,0 +1,95 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Campaign_MessageConfiguration AWS CloudFormation Resource (AWS::Pinpoint::Campaign.MessageConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html +type Campaign_MessageConfiguration struct { + + // ADMMessage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-admmessage + ADMMessage *Campaign_Message `json:"ADMMessage,omitempty"` + + // APNSMessage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-apnsmessage + APNSMessage *Campaign_Message `json:"APNSMessage,omitempty"` + + // BaiduMessage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-baidumessage + BaiduMessage *Campaign_Message `json:"BaiduMessage,omitempty"` + + // DefaultMessage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-defaultmessage + DefaultMessage *Campaign_Message `json:"DefaultMessage,omitempty"` + + // EmailMessage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-emailmessage + EmailMessage *Campaign_CampaignEmailMessage `json:"EmailMessage,omitempty"` + + // GCMMessage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-gcmmessage + GCMMessage *Campaign_Message `json:"GCMMessage,omitempty"` + + // SMSMessage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-smsmessage + SMSMessage *Campaign_CampaignSmsMessage `json:"SMSMessage,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Campaign_MessageConfiguration) AWSCloudFormationType() string { + return "AWS::Pinpoint::Campaign.MessageConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_MessageConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_MessageConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_MessageConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_MessageConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_MessageConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_MessageConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpoint/aws-pinpoint-campaign_metricdimension.go b/cloudformation/pinpoint/aws-pinpoint-campaign_metricdimension.go new file mode 100644 index 0000000000..4aa383f109 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_metricdimension.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Campaign_MetricDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.MetricDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html +type Campaign_MetricDimension struct { + + // ComparisonOperator AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html#cfn-pinpoint-campaign-metricdimension-comparisonoperator + ComparisonOperator string `json:"ComparisonOperator,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html#cfn-pinpoint-campaign-metricdimension-value + Value float64 `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Campaign_MetricDimension) AWSCloudFormationType() string { + return "AWS::Pinpoint::Campaign.MetricDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_MetricDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_MetricDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_MetricDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_MetricDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_MetricDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpoint/aws-pinpoint-campaign_quiettime.go b/cloudformation/pinpoint/aws-pinpoint-campaign_quiettime.go new file mode 100644 index 0000000000..ba93f26ddf --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_quiettime.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Campaign_QuietTime AWS CloudFormation Resource (AWS::Pinpoint::Campaign.QuietTime) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html +type Campaign_QuietTime struct { + + // End AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html#cfn-pinpoint-campaign-schedule-quiettime-end + End string `json:"End,omitempty"` + + // Start AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html#cfn-pinpoint-campaign-schedule-quiettime-start + Start string `json:"Start,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Campaign_QuietTime) AWSCloudFormationType() string { + return "AWS::Pinpoint::Campaign.QuietTime" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_QuietTime) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_QuietTime) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_QuietTime) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_QuietTime) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_QuietTime) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_QuietTime) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-campaign_schedule.go b/cloudformation/pinpoint/aws-pinpoint-campaign_schedule.go similarity index 79% rename from cloudformation/resources/aws-pinpoint-campaign_schedule.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_schedule.go index 526ea4749f..7b4ae1c305 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_schedule.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_schedule.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_Schedule AWS CloudFormation Resource (AWS::Pinpoint::Campaign.Schedule) +// Campaign_Schedule AWS CloudFormation Resource (AWS::Pinpoint::Campaign.Schedule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html -type AWSPinpointCampaign_Schedule struct { +type Campaign_Schedule struct { // EndTime AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSPinpointCampaign_Schedule struct { // EventFilter AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-eventfilter - EventFilter *AWSPinpointCampaign_CampaignEventFilter `json:"EventFilter,omitempty"` + EventFilter *Campaign_CampaignEventFilter `json:"EventFilter,omitempty"` // Frequency AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSPinpointCampaign_Schedule struct { // QuietTime AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-quiettime - QuietTime *AWSPinpointCampaign_QuietTime `json:"QuietTime,omitempty"` + QuietTime *Campaign_QuietTime `json:"QuietTime,omitempty"` // StartTime AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSPinpointCampaign_Schedule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_Schedule) AWSCloudFormationType() string { +func (r *Campaign_Schedule) AWSCloudFormationType() string { return "AWS::Pinpoint::Campaign.Schedule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_Schedule) DependsOn() []string { +func (r *Campaign_Schedule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_Schedule) SetDependsOn(dependencies []string) { +func (r *Campaign_Schedule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_Schedule) Metadata() map[string]interface{} { +func (r *Campaign_Schedule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_Schedule) SetMetadata(metadata map[string]interface{}) { +func (r *Campaign_Schedule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_Schedule) DeletionPolicy() policies.DeletionPolicy { +func (r *Campaign_Schedule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/pinpoint/aws-pinpoint-campaign_setdimension.go b/cloudformation/pinpoint/aws-pinpoint-campaign_setdimension.go new file mode 100644 index 0000000000..04ed5e7c01 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_setdimension.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Campaign_SetDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.SetDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html +type Campaign_SetDimension struct { + + // DimensionType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html#cfn-pinpoint-campaign-setdimension-dimensiontype + DimensionType string `json:"DimensionType,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html#cfn-pinpoint-campaign-setdimension-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Campaign_SetDimension) AWSCloudFormationType() string { + return "AWS::Pinpoint::Campaign.SetDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_SetDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Campaign_SetDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_SetDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Campaign_SetDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_SetDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Campaign_SetDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-campaign_writetreatmentresource.go b/cloudformation/pinpoint/aws-pinpoint-campaign_writetreatmentresource.go similarity index 75% rename from cloudformation/resources/aws-pinpoint-campaign_writetreatmentresource.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_writetreatmentresource.go index 11720226e4..688fb3f1a1 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_writetreatmentresource.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_writetreatmentresource.go @@ -1,20 +1,22 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_WriteTreatmentResource AWS CloudFormation Resource (AWS::Pinpoint::Campaign.WriteTreatmentResource) +// Campaign_WriteTreatmentResource AWS CloudFormation Resource (AWS::Pinpoint::Campaign.WriteTreatmentResource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html -type AWSPinpointCampaign_WriteTreatmentResource struct { +type Campaign_WriteTreatmentResource struct { // MessageConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-messageconfiguration - MessageConfiguration *AWSPinpointCampaign_MessageConfiguration `json:"MessageConfiguration,omitempty"` + MessageConfiguration *Campaign_MessageConfiguration `json:"MessageConfiguration,omitempty"` // Schedule AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-schedule - Schedule *AWSPinpointCampaign_Schedule `json:"Schedule,omitempty"` + Schedule *Campaign_Schedule `json:"Schedule,omitempty"` // SizePercent AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSPinpointCampaign_WriteTreatmentResource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_WriteTreatmentResource) AWSCloudFormationType() string { +func (r *Campaign_WriteTreatmentResource) AWSCloudFormationType() string { return "AWS::Pinpoint::Campaign.WriteTreatmentResource" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_WriteTreatmentResource) DependsOn() []string { +func (r *Campaign_WriteTreatmentResource) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_WriteTreatmentResource) SetDependsOn(dependencies []string) { +func (r *Campaign_WriteTreatmentResource) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_WriteTreatmentResource) Metadata() map[string]interface{} { +func (r *Campaign_WriteTreatmentResource) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_WriteTreatmentResource) SetMetadata(metadata map[string]interface{}) { +func (r *Campaign_WriteTreatmentResource) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_WriteTreatmentResource) DeletionPolicy() policies.DeletionPolicy { +func (r *Campaign_WriteTreatmentResource) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_WriteTreatmentResource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_WriteTreatmentResource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-emailchannel.go b/cloudformation/pinpoint/aws-pinpoint-emailchannel.go similarity index 83% rename from cloudformation/resources/aws-pinpoint-emailchannel.go rename to cloudformation/pinpoint/aws-pinpoint-emailchannel.go index a7da3b7165..ce1ec6a655 100644 --- a/cloudformation/resources/aws-pinpoint-emailchannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-emailchannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointEmailChannel AWS CloudFormation Resource (AWS::Pinpoint::EmailChannel) +// EmailChannel AWS CloudFormation Resource (AWS::Pinpoint::EmailChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html -type AWSPinpointEmailChannel struct { +type EmailChannel struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -52,50 +53,50 @@ type AWSPinpointEmailChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailChannel) AWSCloudFormationType() string { +func (r *EmailChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::EmailChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailChannel) DependsOn() []string { +func (r *EmailChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailChannel) SetDependsOn(dependencies []string) { +func (r *EmailChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailChannel) Metadata() map[string]interface{} { +func (r *EmailChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailChannel) SetMetadata(metadata map[string]interface{}) { +func (r *EmailChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *EmailChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EmailChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointEmailChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointEmailChannel +func (r EmailChannel) MarshalJSON() ([]byte, error) { + type Properties EmailChannel return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSPinpointEmailChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointEmailChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointEmailChannel +func (r *EmailChannel) UnmarshalJSON(b []byte) error { + type Properties EmailChannel res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSPinpointEmailChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointEmailChannel(*res.Properties) + *r = EmailChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-eventstream.go b/cloudformation/pinpoint/aws-pinpoint-eventstream.go similarity index 81% rename from cloudformation/resources/aws-pinpoint-eventstream.go rename to cloudformation/pinpoint/aws-pinpoint-eventstream.go index 528155cd0d..7e4813f4e3 100644 --- a/cloudformation/resources/aws-pinpoint-eventstream.go +++ b/cloudformation/pinpoint/aws-pinpoint-eventstream.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointEventStream AWS CloudFormation Resource (AWS::Pinpoint::EventStream) +// EventStream AWS CloudFormation Resource (AWS::Pinpoint::EventStream) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html -type AWSPinpointEventStream struct { +type EventStream struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSPinpointEventStream struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEventStream) AWSCloudFormationType() string { +func (r *EventStream) AWSCloudFormationType() string { return "AWS::Pinpoint::EventStream" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEventStream) DependsOn() []string { +func (r *EventStream) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEventStream) SetDependsOn(dependencies []string) { +func (r *EventStream) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEventStream) Metadata() map[string]interface{} { +func (r *EventStream) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEventStream) SetMetadata(metadata map[string]interface{}) { +func (r *EventStream) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEventStream) DeletionPolicy() policies.DeletionPolicy { +func (r *EventStream) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEventStream) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EventStream) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointEventStream) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointEventStream +func (r EventStream) MarshalJSON() ([]byte, error) { + type Properties EventStream return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSPinpointEventStream) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointEventStream) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointEventStream +func (r *EventStream) UnmarshalJSON(b []byte) error { + type Properties EventStream res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSPinpointEventStream) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointEventStream(*res.Properties) + *r = EventStream(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-gcmchannel.go b/cloudformation/pinpoint/aws-pinpoint-gcmchannel.go similarity index 81% rename from cloudformation/resources/aws-pinpoint-gcmchannel.go rename to cloudformation/pinpoint/aws-pinpoint-gcmchannel.go index c1601f1f9b..45f94bfc5d 100644 --- a/cloudformation/resources/aws-pinpoint-gcmchannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-gcmchannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointGCMChannel AWS CloudFormation Resource (AWS::Pinpoint::GCMChannel) +// GCMChannel AWS CloudFormation Resource (AWS::Pinpoint::GCMChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html -type AWSPinpointGCMChannel struct { +type GCMChannel struct { // ApiKey AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSPinpointGCMChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointGCMChannel) AWSCloudFormationType() string { +func (r *GCMChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::GCMChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointGCMChannel) DependsOn() []string { +func (r *GCMChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointGCMChannel) SetDependsOn(dependencies []string) { +func (r *GCMChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointGCMChannel) Metadata() map[string]interface{} { +func (r *GCMChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointGCMChannel) SetMetadata(metadata map[string]interface{}) { +func (r *GCMChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointGCMChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *GCMChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointGCMChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GCMChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointGCMChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointGCMChannel +func (r GCMChannel) MarshalJSON() ([]byte, error) { + type Properties GCMChannel return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSPinpointGCMChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointGCMChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointGCMChannel +func (r *GCMChannel) UnmarshalJSON(b []byte) error { + type Properties GCMChannel res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSPinpointGCMChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointGCMChannel(*res.Properties) + *r = GCMChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-segment.go b/cloudformation/pinpoint/aws-pinpoint-segment.go similarity index 80% rename from cloudformation/resources/aws-pinpoint-segment.go rename to cloudformation/pinpoint/aws-pinpoint-segment.go index 6ce9a02aca..5168bd33f3 100644 --- a/cloudformation/resources/aws-pinpoint-segment.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointSegment AWS CloudFormation Resource (AWS::Pinpoint::Segment) +// Segment AWS CloudFormation Resource (AWS::Pinpoint::Segment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html -type AWSPinpointSegment struct { +type Segment struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSPinpointSegment struct { // Dimensions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-dimensions - Dimensions *AWSPinpointSegment_SegmentDimensions `json:"Dimensions,omitempty"` + Dimensions *Segment_SegmentDimensions `json:"Dimensions,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -29,7 +30,7 @@ type AWSPinpointSegment struct { // SegmentGroups AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-segmentgroups - SegmentGroups *AWSPinpointSegment_SegmentGroups `json:"SegmentGroups,omitempty"` + SegmentGroups *Segment_SegmentGroups `json:"SegmentGroups,omitempty"` // Tags AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSPinpointSegment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment) AWSCloudFormationType() string { +func (r *Segment) AWSCloudFormationType() string { return "AWS::Pinpoint::Segment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment) DependsOn() []string { +func (r *Segment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment) SetDependsOn(dependencies []string) { +func (r *Segment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment) Metadata() map[string]interface{} { +func (r *Segment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment) SetMetadata(metadata map[string]interface{}) { +func (r *Segment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment) DeletionPolicy() policies.DeletionPolicy { +func (r *Segment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointSegment) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointSegment +func (r Segment) MarshalJSON() ([]byte, error) { + type Properties Segment return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSPinpointSegment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointSegment) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointSegment +func (r *Segment) UnmarshalJSON(b []byte) error { + type Properties Segment res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSPinpointSegment) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointSegment(*res.Properties) + *r = Segment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/pinpoint/aws-pinpoint-segment_attributedimension.go b/cloudformation/pinpoint/aws-pinpoint-segment_attributedimension.go new file mode 100644 index 0000000000..a7608822a7 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-segment_attributedimension.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Segment_AttributeDimension AWS CloudFormation Resource (AWS::Pinpoint::Segment.AttributeDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html +type Segment_AttributeDimension struct { + + // AttributeType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html#cfn-pinpoint-segment-attributedimension-attributetype + AttributeType string `json:"AttributeType,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html#cfn-pinpoint-segment-attributedimension-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Segment_AttributeDimension) AWSCloudFormationType() string { + return "AWS::Pinpoint::Segment.AttributeDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_AttributeDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_AttributeDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_AttributeDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_AttributeDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_AttributeDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_AttributeDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpoint/aws-pinpoint-segment_behavior.go b/cloudformation/pinpoint/aws-pinpoint-segment_behavior.go new file mode 100644 index 0000000000..962d09f265 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-segment_behavior.go @@ -0,0 +1,65 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Segment_Behavior AWS CloudFormation Resource (AWS::Pinpoint::Segment.Behavior) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior.html +type Segment_Behavior struct { + + // Recency AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior.html#cfn-pinpoint-segment-segmentdimensions-behavior-recency + Recency *Segment_Recency `json:"Recency,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Segment_Behavior) AWSCloudFormationType() string { + return "AWS::Pinpoint::Segment.Behavior" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_Behavior) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_Behavior) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_Behavior) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_Behavior) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_Behavior) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_Behavior) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-segment_coordinates.go b/cloudformation/pinpoint/aws-pinpoint-segment_coordinates.go similarity index 75% rename from cloudformation/resources/aws-pinpoint-segment_coordinates.go rename to cloudformation/pinpoint/aws-pinpoint-segment_coordinates.go index 057f3d51f5..591003bc31 100644 --- a/cloudformation/resources/aws-pinpoint-segment_coordinates.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_coordinates.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointSegment_Coordinates AWS CloudFormation Resource (AWS::Pinpoint::Segment.Coordinates) +// Segment_Coordinates AWS CloudFormation Resource (AWS::Pinpoint::Segment.Coordinates) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates.html -type AWSPinpointSegment_Coordinates struct { +type Segment_Coordinates struct { // Latitude AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSPinpointSegment_Coordinates struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Coordinates) AWSCloudFormationType() string { +func (r *Segment_Coordinates) AWSCloudFormationType() string { return "AWS::Pinpoint::Segment.Coordinates" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Coordinates) DependsOn() []string { +func (r *Segment_Coordinates) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Coordinates) SetDependsOn(dependencies []string) { +func (r *Segment_Coordinates) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Coordinates) Metadata() map[string]interface{} { +func (r *Segment_Coordinates) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Coordinates) SetMetadata(metadata map[string]interface{}) { +func (r *Segment_Coordinates) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Coordinates) DeletionPolicy() policies.DeletionPolicy { +func (r *Segment_Coordinates) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Coordinates) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment_Coordinates) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/pinpoint/aws-pinpoint-segment_demographic.go b/cloudformation/pinpoint/aws-pinpoint-segment_demographic.go new file mode 100644 index 0000000000..527ef77b16 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-segment_demographic.go @@ -0,0 +1,90 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Segment_Demographic AWS CloudFormation Resource (AWS::Pinpoint::Segment.Demographic) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html +type Segment_Demographic struct { + + // AppVersion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-appversion + AppVersion *Segment_SetDimension `json:"AppVersion,omitempty"` + + // Channel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-channel + Channel *Segment_SetDimension `json:"Channel,omitempty"` + + // DeviceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-devicetype + DeviceType *Segment_SetDimension `json:"DeviceType,omitempty"` + + // Make AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-make + Make *Segment_SetDimension `json:"Make,omitempty"` + + // Model AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-model + Model *Segment_SetDimension `json:"Model,omitempty"` + + // Platform AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-platform + Platform *Segment_SetDimension `json:"Platform,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Segment_Demographic) AWSCloudFormationType() string { + return "AWS::Pinpoint::Segment.Demographic" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_Demographic) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_Demographic) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_Demographic) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_Demographic) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_Demographic) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_Demographic) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpoint/aws-pinpoint-segment_gpspoint.go b/cloudformation/pinpoint/aws-pinpoint-segment_gpspoint.go new file mode 100644 index 0000000000..ec227b72a6 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-segment_gpspoint.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Segment_GPSPoint AWS CloudFormation Resource (AWS::Pinpoint::Segment.GPSPoint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html +type Segment_GPSPoint struct { + + // Coordinates AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates + Coordinates *Segment_Coordinates `json:"Coordinates,omitempty"` + + // RangeInKilometers AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-rangeinkilometers + RangeInKilometers float64 `json:"RangeInKilometers"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Segment_GPSPoint) AWSCloudFormationType() string { + return "AWS::Pinpoint::Segment.GPSPoint" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_GPSPoint) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_GPSPoint) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_GPSPoint) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_GPSPoint) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_GPSPoint) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_GPSPoint) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-segment_groups.go b/cloudformation/pinpoint/aws-pinpoint-segment_groups.go similarity index 75% rename from cloudformation/resources/aws-pinpoint-segment_groups.go rename to cloudformation/pinpoint/aws-pinpoint-segment_groups.go index 93637c2c32..6a744819b7 100644 --- a/cloudformation/resources/aws-pinpoint-segment_groups.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_groups.go @@ -1,20 +1,22 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointSegment_Groups AWS CloudFormation Resource (AWS::Pinpoint::Segment.Groups) +// Segment_Groups AWS CloudFormation Resource (AWS::Pinpoint::Segment.Groups) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html -type AWSPinpointSegment_Groups struct { +type Segment_Groups struct { // Dimensions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-dimensions - Dimensions []AWSPinpointSegment_SegmentDimensions `json:"Dimensions,omitempty"` + Dimensions []Segment_SegmentDimensions `json:"Dimensions,omitempty"` // SourceSegments AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments - SourceSegments []AWSPinpointSegment_SourceSegments `json:"SourceSegments,omitempty"` + SourceSegments []Segment_SourceSegments `json:"SourceSegments,omitempty"` // SourceType AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSPinpointSegment_Groups struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Groups) AWSCloudFormationType() string { +func (r *Segment_Groups) AWSCloudFormationType() string { return "AWS::Pinpoint::Segment.Groups" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Groups) DependsOn() []string { +func (r *Segment_Groups) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Groups) SetDependsOn(dependencies []string) { +func (r *Segment_Groups) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Groups) Metadata() map[string]interface{} { +func (r *Segment_Groups) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Groups) SetMetadata(metadata map[string]interface{}) { +func (r *Segment_Groups) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Groups) DeletionPolicy() policies.DeletionPolicy { +func (r *Segment_Groups) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Groups) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment_Groups) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/pinpoint/aws-pinpoint-segment_location.go b/cloudformation/pinpoint/aws-pinpoint-segment_location.go new file mode 100644 index 0000000000..ce3ef691a9 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-segment_location.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Segment_Location AWS CloudFormation Resource (AWS::Pinpoint::Segment.Location) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html +type Segment_Location struct { + + // Country AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html#cfn-pinpoint-segment-segmentdimensions-location-country + Country *Segment_SetDimension `json:"Country,omitempty"` + + // GPSPoint AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint + GPSPoint *Segment_GPSPoint `json:"GPSPoint,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Segment_Location) AWSCloudFormationType() string { + return "AWS::Pinpoint::Segment.Location" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_Location) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_Location) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_Location) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_Location) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_Location) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_Location) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-segment_recency.go b/cloudformation/pinpoint/aws-pinpoint-segment_recency.go similarity index 76% rename from cloudformation/resources/aws-pinpoint-segment_recency.go rename to cloudformation/pinpoint/aws-pinpoint-segment_recency.go index e0f0bc200d..0e005c411d 100644 --- a/cloudformation/resources/aws-pinpoint-segment_recency.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_recency.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointSegment_Recency AWS CloudFormation Resource (AWS::Pinpoint::Segment.Recency) +// Segment_Recency AWS CloudFormation Resource (AWS::Pinpoint::Segment.Recency) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior-recency.html -type AWSPinpointSegment_Recency struct { +type Segment_Recency struct { // Duration AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSPinpointSegment_Recency struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Recency) AWSCloudFormationType() string { +func (r *Segment_Recency) AWSCloudFormationType() string { return "AWS::Pinpoint::Segment.Recency" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Recency) DependsOn() []string { +func (r *Segment_Recency) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Recency) SetDependsOn(dependencies []string) { +func (r *Segment_Recency) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Recency) Metadata() map[string]interface{} { +func (r *Segment_Recency) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Recency) SetMetadata(metadata map[string]interface{}) { +func (r *Segment_Recency) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Recency) DeletionPolicy() policies.DeletionPolicy { +func (r *Segment_Recency) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Recency) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment_Recency) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-segment_segmentdimensions.go b/cloudformation/pinpoint/aws-pinpoint-segment_segmentdimensions.go similarity index 76% rename from cloudformation/resources/aws-pinpoint-segment_segmentdimensions.go rename to cloudformation/pinpoint/aws-pinpoint-segment_segmentdimensions.go index 3a4d3500c6..7bef9a2d8e 100644 --- a/cloudformation/resources/aws-pinpoint-segment_segmentdimensions.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_segmentdimensions.go @@ -1,10 +1,12 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointSegment_SegmentDimensions AWS CloudFormation Resource (AWS::Pinpoint::Segment.SegmentDimensions) +// Segment_SegmentDimensions AWS CloudFormation Resource (AWS::Pinpoint::Segment.SegmentDimensions) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html -type AWSPinpointSegment_SegmentDimensions struct { +type Segment_SegmentDimensions struct { // Attributes AWS CloudFormation Property // Required: false @@ -14,17 +16,17 @@ type AWSPinpointSegment_SegmentDimensions struct { // Behavior AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-behavior - Behavior *AWSPinpointSegment_Behavior `json:"Behavior,omitempty"` + Behavior *Segment_Behavior `json:"Behavior,omitempty"` // Demographic AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-demographic - Demographic *AWSPinpointSegment_Demographic `json:"Demographic,omitempty"` + Demographic *Segment_Demographic `json:"Demographic,omitempty"` // Location AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-location - Location *AWSPinpointSegment_Location `json:"Location,omitempty"` + Location *Segment_Location `json:"Location,omitempty"` // Metrics AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSPinpointSegment_SegmentDimensions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_SegmentDimensions) AWSCloudFormationType() string { +func (r *Segment_SegmentDimensions) AWSCloudFormationType() string { return "AWS::Pinpoint::Segment.SegmentDimensions" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_SegmentDimensions) DependsOn() []string { +func (r *Segment_SegmentDimensions) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_SegmentDimensions) SetDependsOn(dependencies []string) { +func (r *Segment_SegmentDimensions) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_SegmentDimensions) Metadata() map[string]interface{} { +func (r *Segment_SegmentDimensions) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_SegmentDimensions) SetMetadata(metadata map[string]interface{}) { +func (r *Segment_SegmentDimensions) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_SegmentDimensions) DeletionPolicy() policies.DeletionPolicy { +func (r *Segment_SegmentDimensions) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_SegmentDimensions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment_SegmentDimensions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/pinpoint/aws-pinpoint-segment_segmentgroups.go b/cloudformation/pinpoint/aws-pinpoint-segment_segmentgroups.go new file mode 100644 index 0000000000..976cc23e9d --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-segment_segmentgroups.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Segment_SegmentGroups AWS CloudFormation Resource (AWS::Pinpoint::Segment.SegmentGroups) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html +type Segment_SegmentGroups struct { + + // Groups AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html#cfn-pinpoint-segment-segmentgroups-groups + Groups []Segment_Groups `json:"Groups,omitempty"` + + // Include AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html#cfn-pinpoint-segment-segmentgroups-include + Include string `json:"Include,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Segment_SegmentGroups) AWSCloudFormationType() string { + return "AWS::Pinpoint::Segment.SegmentGroups" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_SegmentGroups) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_SegmentGroups) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_SegmentGroups) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_SegmentGroups) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_SegmentGroups) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_SegmentGroups) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpoint/aws-pinpoint-segment_setdimension.go b/cloudformation/pinpoint/aws-pinpoint-segment_setdimension.go new file mode 100644 index 0000000000..a98c00b134 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-segment_setdimension.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Segment_SetDimension AWS CloudFormation Resource (AWS::Pinpoint::Segment.SetDimension) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html +type Segment_SetDimension struct { + + // DimensionType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html#cfn-pinpoint-segment-setdimension-dimensiontype + DimensionType string `json:"DimensionType,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html#cfn-pinpoint-segment-setdimension-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Segment_SetDimension) AWSCloudFormationType() string { + return "AWS::Pinpoint::Segment.SetDimension" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_SetDimension) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_SetDimension) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_SetDimension) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_SetDimension) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_SetDimension) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_SetDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpoint/aws-pinpoint-segment_sourcesegments.go b/cloudformation/pinpoint/aws-pinpoint-segment_sourcesegments.go new file mode 100644 index 0000000000..e51214eb41 --- /dev/null +++ b/cloudformation/pinpoint/aws-pinpoint-segment_sourcesegments.go @@ -0,0 +1,70 @@ +package pinpoint + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Segment_SourceSegments AWS CloudFormation Resource (AWS::Pinpoint::Segment.SourceSegments) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html +type Segment_SourceSegments struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments-id + Id string `json:"Id,omitempty"` + + // Version AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments-version + Version int `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Segment_SourceSegments) AWSCloudFormationType() string { + return "AWS::Pinpoint::Segment.SourceSegments" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_SourceSegments) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Segment_SourceSegments) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_SourceSegments) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Segment_SourceSegments) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_SourceSegments) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Segment_SourceSegments) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpoint-smschannel.go b/cloudformation/pinpoint/aws-pinpoint-smschannel.go similarity index 82% rename from cloudformation/resources/aws-pinpoint-smschannel.go rename to cloudformation/pinpoint/aws-pinpoint-smschannel.go index 37f52f3224..d6db9d0fc0 100644 --- a/cloudformation/resources/aws-pinpoint-smschannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-smschannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointSMSChannel AWS CloudFormation Resource (AWS::Pinpoint::SMSChannel) +// SMSChannel AWS CloudFormation Resource (AWS::Pinpoint::SMSChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html -type AWSPinpointSMSChannel struct { +type SMSChannel struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -42,50 +43,50 @@ type AWSPinpointSMSChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSMSChannel) AWSCloudFormationType() string { +func (r *SMSChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::SMSChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSMSChannel) DependsOn() []string { +func (r *SMSChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSMSChannel) SetDependsOn(dependencies []string) { +func (r *SMSChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSMSChannel) Metadata() map[string]interface{} { +func (r *SMSChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSMSChannel) SetMetadata(metadata map[string]interface{}) { +func (r *SMSChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSMSChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *SMSChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSMSChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SMSChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointSMSChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointSMSChannel +func (r SMSChannel) MarshalJSON() ([]byte, error) { + type Properties SMSChannel return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSPinpointSMSChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointSMSChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointSMSChannel +func (r *SMSChannel) UnmarshalJSON(b []byte) error { + type Properties SMSChannel res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSPinpointSMSChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointSMSChannel(*res.Properties) + *r = SMSChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpoint-voicechannel.go b/cloudformation/pinpoint/aws-pinpoint-voicechannel.go similarity index 79% rename from cloudformation/resources/aws-pinpoint-voicechannel.go rename to cloudformation/pinpoint/aws-pinpoint-voicechannel.go index cf06591d3f..636230a0d5 100644 --- a/cloudformation/resources/aws-pinpoint-voicechannel.go +++ b/cloudformation/pinpoint/aws-pinpoint-voicechannel.go @@ -1,15 +1,16 @@ -package resources +package pinpoint import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointVoiceChannel AWS CloudFormation Resource (AWS::Pinpoint::VoiceChannel) +// VoiceChannel AWS CloudFormation Resource (AWS::Pinpoint::VoiceChannel) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html -type AWSPinpointVoiceChannel struct { +type VoiceChannel struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSPinpointVoiceChannel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointVoiceChannel) AWSCloudFormationType() string { +func (r *VoiceChannel) AWSCloudFormationType() string { return "AWS::Pinpoint::VoiceChannel" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointVoiceChannel) DependsOn() []string { +func (r *VoiceChannel) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointVoiceChannel) SetDependsOn(dependencies []string) { +func (r *VoiceChannel) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointVoiceChannel) Metadata() map[string]interface{} { +func (r *VoiceChannel) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointVoiceChannel) SetMetadata(metadata map[string]interface{}) { +func (r *VoiceChannel) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointVoiceChannel) DeletionPolicy() policies.DeletionPolicy { +func (r *VoiceChannel) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointVoiceChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VoiceChannel) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointVoiceChannel) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointVoiceChannel +func (r VoiceChannel) MarshalJSON() ([]byte, error) { + type Properties VoiceChannel return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSPinpointVoiceChannel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointVoiceChannel) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointVoiceChannel +func (r *VoiceChannel) UnmarshalJSON(b []byte) error { + type Properties VoiceChannel res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSPinpointVoiceChannel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointVoiceChannel(*res.Properties) + *r = VoiceChannel(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationset.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset.go new file mode 100644 index 0000000000..b1b35fd880 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset.go @@ -0,0 +1,149 @@ +package pinpointemail + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSet AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html +type ConfigurationSet struct { + + // DeliveryOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-deliveryoptions + DeliveryOptions *ConfigurationSet_DeliveryOptions `json:"DeliveryOptions,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-name + Name string `json:"Name,omitempty"` + + // ReputationOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-reputationoptions + ReputationOptions *ConfigurationSet_ReputationOptions `json:"ReputationOptions,omitempty"` + + // SendingOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-sendingoptions + SendingOptions *ConfigurationSet_SendingOptions `json:"SendingOptions,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-tags + Tags []ConfigurationSet_Tags `json:"Tags,omitempty"` + + // TrackingOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-trackingoptions + TrackingOptions *ConfigurationSet_TrackingOptions `json:"TrackingOptions,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSet) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSet" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ConfigurationSet) MarshalJSON() ([]byte, error) { + type Properties ConfigurationSet + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *ConfigurationSet) UnmarshalJSON(b []byte) error { + type Properties ConfigurationSet + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = ConfigurationSet(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationset_deliveryoptions.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_deliveryoptions.go new file mode 100644 index 0000000000..e1305501e2 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_deliveryoptions.go @@ -0,0 +1,65 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSet_DeliveryOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.DeliveryOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-deliveryoptions.html +type ConfigurationSet_DeliveryOptions struct { + + // SendingPoolName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-deliveryoptions.html#cfn-pinpointemail-configurationset-deliveryoptions-sendingpoolname + SendingPoolName string `json:"SendingPoolName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSet_DeliveryOptions) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSet.DeliveryOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_DeliveryOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_DeliveryOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_DeliveryOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_DeliveryOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_DeliveryOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_DeliveryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationset_reputationoptions.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_reputationoptions.go new file mode 100644 index 0000000000..ac942ae561 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_reputationoptions.go @@ -0,0 +1,65 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSet_ReputationOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.ReputationOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-reputationoptions.html +type ConfigurationSet_ReputationOptions struct { + + // ReputationMetricsEnabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-reputationoptions.html#cfn-pinpointemail-configurationset-reputationoptions-reputationmetricsenabled + ReputationMetricsEnabled bool `json:"ReputationMetricsEnabled,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSet_ReputationOptions) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSet.ReputationOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_ReputationOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_ReputationOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_ReputationOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_ReputationOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_ReputationOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_ReputationOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationset_sendingoptions.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_sendingoptions.go new file mode 100644 index 0000000000..955aeb9b38 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_sendingoptions.go @@ -0,0 +1,65 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSet_SendingOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.SendingOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-sendingoptions.html +type ConfigurationSet_SendingOptions struct { + + // SendingEnabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-sendingoptions.html#cfn-pinpointemail-configurationset-sendingoptions-sendingenabled + SendingEnabled bool `json:"SendingEnabled,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSet_SendingOptions) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSet.SendingOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_SendingOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_SendingOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_SendingOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_SendingOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_SendingOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_SendingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationset_tags.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_tags.go new file mode 100644 index 0000000000..ed4b26a027 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_tags.go @@ -0,0 +1,70 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSet_Tags AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.Tags) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html +type ConfigurationSet_Tags struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html#cfn-pinpointemail-configurationset-tags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html#cfn-pinpointemail-configurationset-tags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSet_Tags) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSet.Tags" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_Tags) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_Tags) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_Tags) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_Tags) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_Tags) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationset_trackingoptions.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_trackingoptions.go new file mode 100644 index 0000000000..690f66db04 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_trackingoptions.go @@ -0,0 +1,65 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSet_TrackingOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.TrackingOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-trackingoptions.html +type ConfigurationSet_TrackingOptions struct { + + // CustomRedirectDomain AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-trackingoptions.html#cfn-pinpointemail-configurationset-trackingoptions-customredirectdomain + CustomRedirectDomain string `json:"CustomRedirectDomain,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSet_TrackingOptions) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSet.TrackingOptions" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_TrackingOptions) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSet_TrackingOptions) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_TrackingOptions) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSet_TrackingOptions) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_TrackingOptions) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSet_TrackingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination.go new file mode 100644 index 0000000000..45cd50cc1a --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination.go @@ -0,0 +1,134 @@ +package pinpointemail + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html +type ConfigurationSetEventDestination struct { + + // ConfigurationSetName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-configurationsetname + ConfigurationSetName string `json:"ConfigurationSetName,omitempty"` + + // EventDestination AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination + EventDestination *ConfigurationSetEventDestination_EventDestination `json:"EventDestination,omitempty"` + + // EventDestinationName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestinationname + EventDestinationName string `json:"EventDestinationName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSetEventDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { + type Properties ConfigurationSetEventDestination + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *ConfigurationSetEventDestination) UnmarshalJSON(b []byte) error { + type Properties ConfigurationSetEventDestination + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = ConfigurationSetEventDestination(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go new file mode 100644 index 0000000000..cf7d7f37e7 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go @@ -0,0 +1,65 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_CloudWatchDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.CloudWatchDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-cloudwatchdestination.html +type ConfigurationSetEventDestination_CloudWatchDestination struct { + + // DimensionConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-cloudwatchdestination.html#cfn-pinpointemail-configurationseteventdestination-cloudwatchdestination-dimensionconfigurations + DimensionConfigurations []ConfigurationSetEventDestination_DimensionConfiguration `json:"DimensionConfigurations,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_CloudWatchDestination) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSetEventDestination.CloudWatchDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go new file mode 100644 index 0000000000..eb117d1a93 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go @@ -0,0 +1,75 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_DimensionConfiguration AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.DimensionConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html +type ConfigurationSetEventDestination_DimensionConfiguration struct { + + // DefaultDimensionValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-defaultdimensionvalue + DefaultDimensionValue string `json:"DefaultDimensionValue,omitempty"` + + // DimensionName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-dimensionname + DimensionName string `json:"DimensionName,omitempty"` + + // DimensionValueSource AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-dimensionvaluesource + DimensionValueSource string `json:"DimensionValueSource,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_DimensionConfiguration) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSetEventDestination.DimensionConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_eventdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_eventdestination.go new file mode 100644 index 0000000000..1437c6a015 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_eventdestination.go @@ -0,0 +1,90 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_EventDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.EventDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html +type ConfigurationSetEventDestination_EventDestination struct { + + // CloudWatchDestination AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-cloudwatchdestination + CloudWatchDestination *ConfigurationSetEventDestination_CloudWatchDestination `json:"CloudWatchDestination,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-enabled + Enabled bool `json:"Enabled,omitempty"` + + // KinesisFirehoseDestination AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-kinesisfirehosedestination + KinesisFirehoseDestination *ConfigurationSetEventDestination_KinesisFirehoseDestination `json:"KinesisFirehoseDestination,omitempty"` + + // MatchingEventTypes AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-matchingeventtypes + MatchingEventTypes []string `json:"MatchingEventTypes,omitempty"` + + // PinpointDestination AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-pinpointdestination + PinpointDestination *ConfigurationSetEventDestination_PinpointDestination `json:"PinpointDestination,omitempty"` + + // SnsDestination AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-snsdestination + SnsDestination *ConfigurationSetEventDestination_SnsDestination `json:"SnsDestination,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_EventDestination) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSetEventDestination.EventDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_EventDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_EventDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_EventDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_EventDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_EventDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_EventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go new file mode 100644 index 0000000000..8e378613c9 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go @@ -0,0 +1,70 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_KinesisFirehoseDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.KinesisFirehoseDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html +type ConfigurationSetEventDestination_KinesisFirehoseDestination struct { + + // DeliveryStreamArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html#cfn-pinpointemail-configurationseteventdestination-kinesisfirehosedestination-deliverystreamarn + DeliveryStreamArn string `json:"DeliveryStreamArn,omitempty"` + + // IamRoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html#cfn-pinpointemail-configurationseteventdestination-kinesisfirehosedestination-iamrolearn + IamRoleArn string `json:"IamRoleArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSetEventDestination.KinesisFirehoseDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go new file mode 100644 index 0000000000..9ec3fdcaa9 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go @@ -0,0 +1,65 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_PinpointDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.PinpointDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-pinpointdestination.html +type ConfigurationSetEventDestination_PinpointDestination struct { + + // ApplicationArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-pinpointdestination.html#cfn-pinpointemail-configurationseteventdestination-pinpointdestination-applicationarn + ApplicationArn string `json:"ApplicationArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_PinpointDestination) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSetEventDestination.PinpointDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_PinpointDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_PinpointDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_PinpointDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_PinpointDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_PinpointDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_PinpointDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_snsdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_snsdestination.go new file mode 100644 index 0000000000..dc9025859d --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_snsdestination.go @@ -0,0 +1,65 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_SnsDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.SnsDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-snsdestination.html +type ConfigurationSetEventDestination_SnsDestination struct { + + // TopicArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-snsdestination.html#cfn-pinpointemail-configurationseteventdestination-snsdestination-topicarn + TopicArn string `json:"TopicArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_SnsDestination) AWSCloudFormationType() string { + return "AWS::PinpointEmail::ConfigurationSetEventDestination.SnsDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_SnsDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_SnsDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_SnsDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_SnsDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_SnsDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_SnsDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpointemail-dedicatedippool.go b/cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool.go similarity index 76% rename from cloudformation/resources/aws-pinpointemail-dedicatedippool.go rename to cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool.go index 2587a60944..c46572266f 100644 --- a/cloudformation/resources/aws-pinpointemail-dedicatedippool.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool.go @@ -1,15 +1,16 @@ -package resources +package pinpointemail import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointEmailDedicatedIpPool AWS CloudFormation Resource (AWS::PinpointEmail::DedicatedIpPool) +// DedicatedIpPool AWS CloudFormation Resource (AWS::PinpointEmail::DedicatedIpPool) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html -type AWSPinpointEmailDedicatedIpPool struct { +type DedicatedIpPool struct { // PoolName AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSPinpointEmailDedicatedIpPool struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html#cfn-pinpointemail-dedicatedippool-tags - Tags []AWSPinpointEmailDedicatedIpPool_Tags `json:"Tags,omitempty"` + Tags []DedicatedIpPool_Tags `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSPinpointEmailDedicatedIpPool struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailDedicatedIpPool) AWSCloudFormationType() string { +func (r *DedicatedIpPool) AWSCloudFormationType() string { return "AWS::PinpointEmail::DedicatedIpPool" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailDedicatedIpPool) DependsOn() []string { +func (r *DedicatedIpPool) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailDedicatedIpPool) SetDependsOn(dependencies []string) { +func (r *DedicatedIpPool) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailDedicatedIpPool) Metadata() map[string]interface{} { +func (r *DedicatedIpPool) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailDedicatedIpPool) SetMetadata(metadata map[string]interface{}) { +func (r *DedicatedIpPool) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailDedicatedIpPool) DeletionPolicy() policies.DeletionPolicy { +func (r *DedicatedIpPool) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailDedicatedIpPool) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DedicatedIpPool) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointEmailDedicatedIpPool) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointEmailDedicatedIpPool +func (r DedicatedIpPool) MarshalJSON() ([]byte, error) { + type Properties DedicatedIpPool return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSPinpointEmailDedicatedIpPool) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointEmailDedicatedIpPool) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointEmailDedicatedIpPool +func (r *DedicatedIpPool) UnmarshalJSON(b []byte) error { + type Properties DedicatedIpPool res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSPinpointEmailDedicatedIpPool) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointEmailDedicatedIpPool(*res.Properties) + *r = DedicatedIpPool(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool_tags.go b/cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool_tags.go new file mode 100644 index 0000000000..a4ea49b3d5 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool_tags.go @@ -0,0 +1,70 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DedicatedIpPool_Tags AWS CloudFormation Resource (AWS::PinpointEmail::DedicatedIpPool.Tags) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html +type DedicatedIpPool_Tags struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html#cfn-pinpointemail-dedicatedippool-tags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html#cfn-pinpointemail-dedicatedippool-tags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DedicatedIpPool_Tags) AWSCloudFormationType() string { + return "AWS::PinpointEmail::DedicatedIpPool.Tags" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DedicatedIpPool_Tags) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DedicatedIpPool_Tags) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DedicatedIpPool_Tags) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DedicatedIpPool_Tags) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DedicatedIpPool_Tags) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DedicatedIpPool_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-pinpointemail-identity.go b/cloudformation/pinpointemail/aws-pinpointemail-identity.go similarity index 79% rename from cloudformation/resources/aws-pinpointemail-identity.go rename to cloudformation/pinpointemail/aws-pinpointemail-identity.go index a9be10ab96..6e3566c5a8 100644 --- a/cloudformation/resources/aws-pinpointemail-identity.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-identity.go @@ -1,15 +1,16 @@ -package resources +package pinpointemail import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointEmailIdentity AWS CloudFormation Resource (AWS::PinpointEmail::Identity) +// Identity AWS CloudFormation Resource (AWS::PinpointEmail::Identity) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html -type AWSPinpointEmailIdentity struct { +type Identity struct { // DkimSigningEnabled AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSPinpointEmailIdentity struct { // MailFromAttributes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-mailfromattributes - MailFromAttributes *AWSPinpointEmailIdentity_MailFromAttributes `json:"MailFromAttributes,omitempty"` + MailFromAttributes *Identity_MailFromAttributes `json:"MailFromAttributes,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -34,7 +35,7 @@ type AWSPinpointEmailIdentity struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-tags - Tags []AWSPinpointEmailIdentity_Tags `json:"Tags,omitempty"` + Tags []Identity_Tags `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +48,50 @@ type AWSPinpointEmailIdentity struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailIdentity) AWSCloudFormationType() string { +func (r *Identity) AWSCloudFormationType() string { return "AWS::PinpointEmail::Identity" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailIdentity) DependsOn() []string { +func (r *Identity) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailIdentity) SetDependsOn(dependencies []string) { +func (r *Identity) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailIdentity) Metadata() map[string]interface{} { +func (r *Identity) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailIdentity) SetMetadata(metadata map[string]interface{}) { +func (r *Identity) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailIdentity) DeletionPolicy() policies.DeletionPolicy { +func (r *Identity) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailIdentity) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Identity) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointEmailIdentity) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointEmailIdentity +func (r Identity) MarshalJSON() ([]byte, error) { + type Properties Identity return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSPinpointEmailIdentity) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointEmailIdentity) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointEmailIdentity +func (r *Identity) UnmarshalJSON(b []byte) error { + type Properties Identity res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSPinpointEmailIdentity) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointEmailIdentity(*res.Properties) + *r = Identity(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/pinpointemail/aws-pinpointemail-identity_mailfromattributes.go b/cloudformation/pinpointemail/aws-pinpointemail-identity_mailfromattributes.go new file mode 100644 index 0000000000..9cd54e88d3 --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-identity_mailfromattributes.go @@ -0,0 +1,70 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Identity_MailFromAttributes AWS CloudFormation Resource (AWS::PinpointEmail::Identity.MailFromAttributes) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html +type Identity_MailFromAttributes struct { + + // BehaviorOnMxFailure AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html#cfn-pinpointemail-identity-mailfromattributes-behavioronmxfailure + BehaviorOnMxFailure string `json:"BehaviorOnMxFailure,omitempty"` + + // MailFromDomain AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html#cfn-pinpointemail-identity-mailfromattributes-mailfromdomain + MailFromDomain string `json:"MailFromDomain,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Identity_MailFromAttributes) AWSCloudFormationType() string { + return "AWS::PinpointEmail::Identity.MailFromAttributes" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Identity_MailFromAttributes) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Identity_MailFromAttributes) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Identity_MailFromAttributes) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Identity_MailFromAttributes) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Identity_MailFromAttributes) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Identity_MailFromAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/pinpointemail/aws-pinpointemail-identity_tags.go b/cloudformation/pinpointemail/aws-pinpointemail-identity_tags.go new file mode 100644 index 0000000000..993232f1ae --- /dev/null +++ b/cloudformation/pinpointemail/aws-pinpointemail-identity_tags.go @@ -0,0 +1,70 @@ +package pinpointemail + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Identity_Tags AWS CloudFormation Resource (AWS::PinpointEmail::Identity.Tags) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html +type Identity_Tags struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html#cfn-pinpointemail-identity-tags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html#cfn-pinpointemail-identity-tags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Identity_Tags) AWSCloudFormationType() string { + return "AWS::PinpointEmail::Identity.Tags" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Identity_Tags) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Identity_Tags) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Identity_Tags) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Identity_Tags) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Identity_Tags) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Identity_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/policies_test.go b/cloudformation/policies_test.go index 24279a4831..c68606a1bb 100644 --- a/cloudformation/policies_test.go +++ b/cloudformation/policies_test.go @@ -3,9 +3,9 @@ package cloudformation_test import ( "github.com/sanathkr/yaml" - "github.com/awslabs/goformation/v2/cloudformation" - "github.com/awslabs/goformation/v2/cloudformation/policies" - "github.com/awslabs/goformation/v2/cloudformation/resources" + "github.com/awslabs/goformation/v3/cloudformation" + "github.com/awslabs/goformation/v3/cloudformation/autoscaling" + "github.com/awslabs/goformation/v3/cloudformation/policies" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" @@ -95,7 +95,7 @@ var _ = Describe("Goformation", func() { It("should have the correct values for "+test.Name, func() { - asg := resources.AWSAutoScalingAutoScalingGroup{} + asg := autoscaling.AutoScalingGroup{} asg.SetUpdatePolicy(test.Input) template := &cloudformation.Template{ @@ -161,7 +161,7 @@ var _ = Describe("Goformation", func() { It("should have the correct values for "+test.Name, func() { - asg := resources.AWSAutoScalingAutoScalingGroup{} + asg := autoscaling.AutoScalingGroup{} asg.SetCreationPolicy(test.Input) template := &cloudformation.Template{ @@ -221,7 +221,7 @@ var _ = Describe("Goformation", func() { It("should have the correct values for "+test.Name, func() { - asg := resources.AWSAutoScalingAutoScalingGroup{} + asg := autoscaling.AutoScalingGroup{} asg.SetDeletionPolicy(test.Input) template := &cloudformation.Template{ diff --git a/cloudformation/resources/aws-qldb-ledger.go b/cloudformation/qldb/aws-qldb-ledger.go similarity index 83% rename from cloudformation/resources/aws-qldb-ledger.go rename to cloudformation/qldb/aws-qldb-ledger.go index 57f6835e9e..58b6c7a564 100644 --- a/cloudformation/resources/aws-qldb-ledger.go +++ b/cloudformation/qldb/aws-qldb-ledger.go @@ -1,15 +1,17 @@ -package resources +package qldb import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSQLDBLedger AWS CloudFormation Resource (AWS::QLDB::Ledger) +// Ledger AWS CloudFormation Resource (AWS::QLDB::Ledger) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html -type AWSQLDBLedger struct { +type Ledger struct { // DeletionProtection AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSQLDBLedger struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSQLDBLedger struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSQLDBLedger) AWSCloudFormationType() string { +func (r *Ledger) AWSCloudFormationType() string { return "AWS::QLDB::Ledger" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSQLDBLedger) DependsOn() []string { +func (r *Ledger) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSQLDBLedger) SetDependsOn(dependencies []string) { +func (r *Ledger) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSQLDBLedger) Metadata() map[string]interface{} { +func (r *Ledger) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSQLDBLedger) SetMetadata(metadata map[string]interface{}) { +func (r *Ledger) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSQLDBLedger) DeletionPolicy() policies.DeletionPolicy { +func (r *Ledger) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSQLDBLedger) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Ledger) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSQLDBLedger) MarshalJSON() ([]byte, error) { - type Properties AWSQLDBLedger +func (r Ledger) MarshalJSON() ([]byte, error) { + type Properties Ledger return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSQLDBLedger) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSQLDBLedger) UnmarshalJSON(b []byte) error { - type Properties AWSQLDBLedger +func (r *Ledger) UnmarshalJSON(b []byte) error { + type Properties Ledger res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSQLDBLedger) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSQLDBLedger(*res.Properties) + *r = Ledger(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ram-resourceshare.go b/cloudformation/ram/aws-ram-resourceshare.go similarity index 82% rename from cloudformation/resources/aws-ram-resourceshare.go rename to cloudformation/ram/aws-ram-resourceshare.go index 9df043a8ea..0e774e458c 100644 --- a/cloudformation/resources/aws-ram-resourceshare.go +++ b/cloudformation/ram/aws-ram-resourceshare.go @@ -1,15 +1,17 @@ -package resources +package ram import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRAMResourceShare AWS CloudFormation Resource (AWS::RAM::ResourceShare) +// ResourceShare AWS CloudFormation Resource (AWS::RAM::ResourceShare) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html -type AWSRAMResourceShare struct { +type ResourceShare struct { // AllowExternalPrincipals AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSRAMResourceShare struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSRAMResourceShare struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRAMResourceShare) AWSCloudFormationType() string { +func (r *ResourceShare) AWSCloudFormationType() string { return "AWS::RAM::ResourceShare" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRAMResourceShare) DependsOn() []string { +func (r *ResourceShare) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRAMResourceShare) SetDependsOn(dependencies []string) { +func (r *ResourceShare) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRAMResourceShare) Metadata() map[string]interface{} { +func (r *ResourceShare) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRAMResourceShare) SetMetadata(metadata map[string]interface{}) { +func (r *ResourceShare) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRAMResourceShare) DeletionPolicy() policies.DeletionPolicy { +func (r *ResourceShare) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRAMResourceShare) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceShare) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRAMResourceShare) MarshalJSON() ([]byte, error) { - type Properties AWSRAMResourceShare +func (r ResourceShare) MarshalJSON() ([]byte, error) { + type Properties ResourceShare return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSRAMResourceShare) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRAMResourceShare) UnmarshalJSON(b []byte) error { - type Properties AWSRAMResourceShare +func (r *ResourceShare) UnmarshalJSON(b []byte) error { + type Properties ResourceShare res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSRAMResourceShare) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRAMResourceShare(*res.Properties) + *r = ResourceShare(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-dbcluster.go b/cloudformation/rds/aws-rds-dbcluster.go similarity index 91% rename from cloudformation/resources/aws-rds-dbcluster.go rename to cloudformation/rds/aws-rds-dbcluster.go index 4efb622839..8df6691e34 100644 --- a/cloudformation/resources/aws-rds-dbcluster.go +++ b/cloudformation/rds/aws-rds-dbcluster.go @@ -1,20 +1,22 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRDSDBCluster AWS CloudFormation Resource (AWS::RDS::DBCluster) +// DBCluster AWS CloudFormation Resource (AWS::RDS::DBCluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html -type AWSRDSDBCluster struct { +type DBCluster struct { // AssociatedRoles AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-associatedroles - AssociatedRoles []AWSRDSDBCluster_DBClusterRole `json:"AssociatedRoles,omitempty"` + AssociatedRoles []DBCluster_DBClusterRole `json:"AssociatedRoles,omitempty"` // AvailabilityZones AWS CloudFormation Property // Required: false @@ -124,7 +126,7 @@ type AWSRDSDBCluster struct { // ScalingConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-scalingconfiguration - ScalingConfiguration *AWSRDSDBCluster_ScalingConfiguration `json:"ScalingConfiguration,omitempty"` + ScalingConfiguration *DBCluster_ScalingConfiguration `json:"ScalingConfiguration,omitempty"` // SnapshotIdentifier AWS CloudFormation Property // Required: false @@ -149,7 +151,7 @@ type AWSRDSDBCluster struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // UseLatestRestorableTime AWS CloudFormation Property // Required: false @@ -172,50 +174,50 @@ type AWSRDSDBCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBCluster) AWSCloudFormationType() string { +func (r *DBCluster) AWSCloudFormationType() string { return "AWS::RDS::DBCluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBCluster) DependsOn() []string { +func (r *DBCluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBCluster) SetDependsOn(dependencies []string) { +func (r *DBCluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBCluster) Metadata() map[string]interface{} { +func (r *DBCluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBCluster) SetMetadata(metadata map[string]interface{}) { +func (r *DBCluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *DBCluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSDBCluster) MarshalJSON() ([]byte, error) { - type Properties AWSRDSDBCluster +func (r DBCluster) MarshalJSON() ([]byte, error) { + type Properties DBCluster return json.Marshal(&struct { Type string Properties Properties @@ -233,8 +235,8 @@ func (r AWSRDSDBCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSDBCluster) UnmarshalJSON(b []byte) error { - type Properties AWSRDSDBCluster +func (r *DBCluster) UnmarshalJSON(b []byte) error { + type Properties DBCluster res := &struct { Type string Properties *Properties @@ -253,7 +255,7 @@ func (r *AWSRDSDBCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSDBCluster(*res.Properties) + *r = DBCluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-dbcluster_dbclusterrole.go b/cloudformation/rds/aws-rds-dbcluster_dbclusterrole.go similarity index 76% rename from cloudformation/resources/aws-rds-dbcluster_dbclusterrole.go rename to cloudformation/rds/aws-rds-dbcluster_dbclusterrole.go index 97e28f226a..537651c720 100644 --- a/cloudformation/resources/aws-rds-dbcluster_dbclusterrole.go +++ b/cloudformation/rds/aws-rds-dbcluster_dbclusterrole.go @@ -1,10 +1,12 @@ -package resources +package rds -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRDSDBCluster_DBClusterRole AWS CloudFormation Resource (AWS::RDS::DBCluster.DBClusterRole) +// DBCluster_DBClusterRole AWS CloudFormation Resource (AWS::RDS::DBCluster.DBClusterRole) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-dbclusterrole.html -type AWSRDSDBCluster_DBClusterRole struct { +type DBCluster_DBClusterRole struct { // FeatureName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSRDSDBCluster_DBClusterRole struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBCluster_DBClusterRole) AWSCloudFormationType() string { +func (r *DBCluster_DBClusterRole) AWSCloudFormationType() string { return "AWS::RDS::DBCluster.DBClusterRole" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBCluster_DBClusterRole) DependsOn() []string { +func (r *DBCluster_DBClusterRole) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBCluster_DBClusterRole) SetDependsOn(dependencies []string) { +func (r *DBCluster_DBClusterRole) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBCluster_DBClusterRole) Metadata() map[string]interface{} { +func (r *DBCluster_DBClusterRole) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBCluster_DBClusterRole) SetMetadata(metadata map[string]interface{}) { +func (r *DBCluster_DBClusterRole) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBCluster_DBClusterRole) DeletionPolicy() policies.DeletionPolicy { +func (r *DBCluster_DBClusterRole) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBCluster_DBClusterRole) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBCluster_DBClusterRole) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-rds-dbcluster_scalingconfiguration.go b/cloudformation/rds/aws-rds-dbcluster_scalingconfiguration.go similarity index 77% rename from cloudformation/resources/aws-rds-dbcluster_scalingconfiguration.go rename to cloudformation/rds/aws-rds-dbcluster_scalingconfiguration.go index e7e4c98962..da069c8814 100644 --- a/cloudformation/resources/aws-rds-dbcluster_scalingconfiguration.go +++ b/cloudformation/rds/aws-rds-dbcluster_scalingconfiguration.go @@ -1,10 +1,12 @@ -package resources +package rds -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRDSDBCluster_ScalingConfiguration AWS CloudFormation Resource (AWS::RDS::DBCluster.ScalingConfiguration) +// DBCluster_ScalingConfiguration AWS CloudFormation Resource (AWS::RDS::DBCluster.ScalingConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html -type AWSRDSDBCluster_ScalingConfiguration struct { +type DBCluster_ScalingConfiguration struct { // AutoPause AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSRDSDBCluster_ScalingConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBCluster_ScalingConfiguration) AWSCloudFormationType() string { +func (r *DBCluster_ScalingConfiguration) AWSCloudFormationType() string { return "AWS::RDS::DBCluster.ScalingConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBCluster_ScalingConfiguration) DependsOn() []string { +func (r *DBCluster_ScalingConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBCluster_ScalingConfiguration) SetDependsOn(dependencies []string) { +func (r *DBCluster_ScalingConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBCluster_ScalingConfiguration) Metadata() map[string]interface{} { +func (r *DBCluster_ScalingConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBCluster_ScalingConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *DBCluster_ScalingConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBCluster_ScalingConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *DBCluster_ScalingConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBCluster_ScalingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBCluster_ScalingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-rds-dbclusterparametergroup.go b/cloudformation/rds/aws-rds-dbclusterparametergroup.go similarity index 79% rename from cloudformation/resources/aws-rds-dbclusterparametergroup.go rename to cloudformation/rds/aws-rds-dbclusterparametergroup.go index dc57fe0e91..4456f5a1ce 100644 --- a/cloudformation/resources/aws-rds-dbclusterparametergroup.go +++ b/cloudformation/rds/aws-rds-dbclusterparametergroup.go @@ -1,15 +1,17 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRDSDBClusterParameterGroup AWS CloudFormation Resource (AWS::RDS::DBClusterParameterGroup) +// DBClusterParameterGroup AWS CloudFormation Resource (AWS::RDS::DBClusterParameterGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html -type AWSRDSDBClusterParameterGroup struct { +type DBClusterParameterGroup struct { // Description AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSRDSDBClusterParameterGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSRDSDBClusterParameterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBClusterParameterGroup) AWSCloudFormationType() string { +func (r *DBClusterParameterGroup) AWSCloudFormationType() string { return "AWS::RDS::DBClusterParameterGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBClusterParameterGroup) DependsOn() []string { +func (r *DBClusterParameterGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBClusterParameterGroup) SetDependsOn(dependencies []string) { +func (r *DBClusterParameterGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBClusterParameterGroup) Metadata() map[string]interface{} { +func (r *DBClusterParameterGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBClusterParameterGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBClusterParameterGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBClusterParameterGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBClusterParameterGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBClusterParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBClusterParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSDBClusterParameterGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRDSDBClusterParameterGroup +func (r DBClusterParameterGroup) MarshalJSON() ([]byte, error) { + type Properties DBClusterParameterGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSRDSDBClusterParameterGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSDBClusterParameterGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRDSDBClusterParameterGroup +func (r *DBClusterParameterGroup) UnmarshalJSON(b []byte) error { + type Properties DBClusterParameterGroup res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSRDSDBClusterParameterGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSDBClusterParameterGroup(*res.Properties) + *r = DBClusterParameterGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-dbinstance.go b/cloudformation/rds/aws-rds-dbinstance.go similarity index 94% rename from cloudformation/resources/aws-rds-dbinstance.go rename to cloudformation/rds/aws-rds-dbinstance.go index 627a71226d..04c4dc902e 100644 --- a/cloudformation/resources/aws-rds-dbinstance.go +++ b/cloudformation/rds/aws-rds-dbinstance.go @@ -1,15 +1,17 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRDSDBInstance AWS CloudFormation Resource (AWS::RDS::DBInstance) +// DBInstance AWS CloudFormation Resource (AWS::RDS::DBInstance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html -type AWSRDSDBInstance struct { +type DBInstance struct { // AllocatedStorage AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSRDSDBInstance struct { // AssociatedRoles AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-associatedroles - AssociatedRoles []AWSRDSDBInstance_DBInstanceRole `json:"AssociatedRoles,omitempty"` + AssociatedRoles []DBInstance_DBInstanceRole `json:"AssociatedRoles,omitempty"` // AutoMinorVersionUpgrade AWS CloudFormation Property // Required: false @@ -209,7 +211,7 @@ type AWSRDSDBInstance struct { // ProcessorFeatures AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-processorfeatures - ProcessorFeatures []AWSRDSDBInstance_ProcessorFeature `json:"ProcessorFeatures,omitempty"` + ProcessorFeatures []DBInstance_ProcessorFeature `json:"ProcessorFeatures,omitempty"` // PromotionTier AWS CloudFormation Property // Required: false @@ -244,7 +246,7 @@ type AWSRDSDBInstance struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // Timezone AWS CloudFormation Property // Required: false @@ -272,50 +274,50 @@ type AWSRDSDBInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBInstance) AWSCloudFormationType() string { +func (r *DBInstance) AWSCloudFormationType() string { return "AWS::RDS::DBInstance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBInstance) DependsOn() []string { +func (r *DBInstance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBInstance) SetDependsOn(dependencies []string) { +func (r *DBInstance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBInstance) Metadata() map[string]interface{} { +func (r *DBInstance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBInstance) SetMetadata(metadata map[string]interface{}) { +func (r *DBInstance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBInstance) DeletionPolicy() policies.DeletionPolicy { +func (r *DBInstance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSDBInstance) MarshalJSON() ([]byte, error) { - type Properties AWSRDSDBInstance +func (r DBInstance) MarshalJSON() ([]byte, error) { + type Properties DBInstance return json.Marshal(&struct { Type string Properties Properties @@ -333,8 +335,8 @@ func (r AWSRDSDBInstance) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSDBInstance) UnmarshalJSON(b []byte) error { - type Properties AWSRDSDBInstance +func (r *DBInstance) UnmarshalJSON(b []byte) error { + type Properties DBInstance res := &struct { Type string Properties *Properties @@ -353,7 +355,7 @@ func (r *AWSRDSDBInstance) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSDBInstance(*res.Properties) + *r = DBInstance(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-dbinstance_dbinstancerole.go b/cloudformation/rds/aws-rds-dbinstance_dbinstancerole.go similarity index 76% rename from cloudformation/resources/aws-rds-dbinstance_dbinstancerole.go rename to cloudformation/rds/aws-rds-dbinstance_dbinstancerole.go index f60bf88b06..eb305815ec 100644 --- a/cloudformation/resources/aws-rds-dbinstance_dbinstancerole.go +++ b/cloudformation/rds/aws-rds-dbinstance_dbinstancerole.go @@ -1,10 +1,12 @@ -package resources +package rds -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRDSDBInstance_DBInstanceRole AWS CloudFormation Resource (AWS::RDS::DBInstance.DBInstanceRole) +// DBInstance_DBInstanceRole AWS CloudFormation Resource (AWS::RDS::DBInstance.DBInstanceRole) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-dbinstancerole.html -type AWSRDSDBInstance_DBInstanceRole struct { +type DBInstance_DBInstanceRole struct { // FeatureName AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSRDSDBInstance_DBInstanceRole struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBInstance_DBInstanceRole) AWSCloudFormationType() string { +func (r *DBInstance_DBInstanceRole) AWSCloudFormationType() string { return "AWS::RDS::DBInstance.DBInstanceRole" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBInstance_DBInstanceRole) DependsOn() []string { +func (r *DBInstance_DBInstanceRole) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBInstance_DBInstanceRole) SetDependsOn(dependencies []string) { +func (r *DBInstance_DBInstanceRole) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBInstance_DBInstanceRole) Metadata() map[string]interface{} { +func (r *DBInstance_DBInstanceRole) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBInstance_DBInstanceRole) SetMetadata(metadata map[string]interface{}) { +func (r *DBInstance_DBInstanceRole) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBInstance_DBInstanceRole) DeletionPolicy() policies.DeletionPolicy { +func (r *DBInstance_DBInstanceRole) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBInstance_DBInstanceRole) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBInstance_DBInstanceRole) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/rds/aws-rds-dbinstance_processorfeature.go b/cloudformation/rds/aws-rds-dbinstance_processorfeature.go new file mode 100644 index 0000000000..3632857e76 --- /dev/null +++ b/cloudformation/rds/aws-rds-dbinstance_processorfeature.go @@ -0,0 +1,70 @@ +package rds + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// DBInstance_ProcessorFeature AWS CloudFormation Resource (AWS::RDS::DBInstance.ProcessorFeature) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html +type DBInstance_ProcessorFeature struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html#cfn-rds-dbinstance-processorfeature-name + Name string `json:"Name,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html#cfn-rds-dbinstance-processorfeature-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *DBInstance_ProcessorFeature) AWSCloudFormationType() string { + return "AWS::RDS::DBInstance.ProcessorFeature" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DBInstance_ProcessorFeature) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *DBInstance_ProcessorFeature) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DBInstance_ProcessorFeature) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *DBInstance_ProcessorFeature) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DBInstance_ProcessorFeature) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *DBInstance_ProcessorFeature) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-rds-dbparametergroup.go b/cloudformation/rds/aws-rds-dbparametergroup.go similarity index 81% rename from cloudformation/resources/aws-rds-dbparametergroup.go rename to cloudformation/rds/aws-rds-dbparametergroup.go index 5c2e0e5bd4..1ddc71c23a 100644 --- a/cloudformation/resources/aws-rds-dbparametergroup.go +++ b/cloudformation/rds/aws-rds-dbparametergroup.go @@ -1,15 +1,17 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRDSDBParameterGroup AWS CloudFormation Resource (AWS::RDS::DBParameterGroup) +// DBParameterGroup AWS CloudFormation Resource (AWS::RDS::DBParameterGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html -type AWSRDSDBParameterGroup struct { +type DBParameterGroup struct { // Description AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSRDSDBParameterGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSRDSDBParameterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBParameterGroup) AWSCloudFormationType() string { +func (r *DBParameterGroup) AWSCloudFormationType() string { return "AWS::RDS::DBParameterGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBParameterGroup) DependsOn() []string { +func (r *DBParameterGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBParameterGroup) SetDependsOn(dependencies []string) { +func (r *DBParameterGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBParameterGroup) Metadata() map[string]interface{} { +func (r *DBParameterGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBParameterGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBParameterGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBParameterGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBParameterGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSDBParameterGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRDSDBParameterGroup +func (r DBParameterGroup) MarshalJSON() ([]byte, error) { + type Properties DBParameterGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSRDSDBParameterGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSDBParameterGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRDSDBParameterGroup +func (r *DBParameterGroup) UnmarshalJSON(b []byte) error { + type Properties DBParameterGroup res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSRDSDBParameterGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSDBParameterGroup(*res.Properties) + *r = DBParameterGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-dbsecuritygroup.go b/cloudformation/rds/aws-rds-dbsecuritygroup.go similarity index 79% rename from cloudformation/resources/aws-rds-dbsecuritygroup.go rename to cloudformation/rds/aws-rds-dbsecuritygroup.go index 61b23e0654..f70f605515 100644 --- a/cloudformation/resources/aws-rds-dbsecuritygroup.go +++ b/cloudformation/rds/aws-rds-dbsecuritygroup.go @@ -1,20 +1,22 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRDSDBSecurityGroup AWS CloudFormation Resource (AWS::RDS::DBSecurityGroup) +// DBSecurityGroup AWS CloudFormation Resource (AWS::RDS::DBSecurityGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html -type AWSRDSDBSecurityGroup struct { +type DBSecurityGroup struct { // DBSecurityGroupIngress AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-dbsecuritygroupingress - DBSecurityGroupIngress []AWSRDSDBSecurityGroup_Ingress `json:"DBSecurityGroupIngress,omitempty"` + DBSecurityGroupIngress []DBSecurityGroup_Ingress `json:"DBSecurityGroupIngress,omitempty"` // EC2VpcId AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSRDSDBSecurityGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSRDSDBSecurityGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBSecurityGroup) AWSCloudFormationType() string { +func (r *DBSecurityGroup) AWSCloudFormationType() string { return "AWS::RDS::DBSecurityGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBSecurityGroup) DependsOn() []string { +func (r *DBSecurityGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBSecurityGroup) SetDependsOn(dependencies []string) { +func (r *DBSecurityGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBSecurityGroup) Metadata() map[string]interface{} { +func (r *DBSecurityGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBSecurityGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBSecurityGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBSecurityGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBSecurityGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBSecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBSecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSDBSecurityGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRDSDBSecurityGroup +func (r DBSecurityGroup) MarshalJSON() ([]byte, error) { + type Properties DBSecurityGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSRDSDBSecurityGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSDBSecurityGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRDSDBSecurityGroup +func (r *DBSecurityGroup) UnmarshalJSON(b []byte) error { + type Properties DBSecurityGroup res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSRDSDBSecurityGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSDBSecurityGroup(*res.Properties) + *r = DBSecurityGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-dbsecuritygroup_ingress.go b/cloudformation/rds/aws-rds-dbsecuritygroup_ingress.go similarity index 79% rename from cloudformation/resources/aws-rds-dbsecuritygroup_ingress.go rename to cloudformation/rds/aws-rds-dbsecuritygroup_ingress.go index ccf4e2b7d0..e7ecdd5313 100644 --- a/cloudformation/resources/aws-rds-dbsecuritygroup_ingress.go +++ b/cloudformation/rds/aws-rds-dbsecuritygroup_ingress.go @@ -1,10 +1,12 @@ -package resources +package rds -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRDSDBSecurityGroup_Ingress AWS CloudFormation Resource (AWS::RDS::DBSecurityGroup.Ingress) +// DBSecurityGroup_Ingress AWS CloudFormation Resource (AWS::RDS::DBSecurityGroup.Ingress) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html -type AWSRDSDBSecurityGroup_Ingress struct { +type DBSecurityGroup_Ingress struct { // CIDRIP AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSRDSDBSecurityGroup_Ingress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBSecurityGroup_Ingress) AWSCloudFormationType() string { +func (r *DBSecurityGroup_Ingress) AWSCloudFormationType() string { return "AWS::RDS::DBSecurityGroup.Ingress" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBSecurityGroup_Ingress) DependsOn() []string { +func (r *DBSecurityGroup_Ingress) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBSecurityGroup_Ingress) SetDependsOn(dependencies []string) { +func (r *DBSecurityGroup_Ingress) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBSecurityGroup_Ingress) Metadata() map[string]interface{} { +func (r *DBSecurityGroup_Ingress) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBSecurityGroup_Ingress) SetMetadata(metadata map[string]interface{}) { +func (r *DBSecurityGroup_Ingress) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBSecurityGroup_Ingress) DeletionPolicy() policies.DeletionPolicy { +func (r *DBSecurityGroup_Ingress) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBSecurityGroup_Ingress) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBSecurityGroup_Ingress) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-rds-dbsecuritygroupingress.go b/cloudformation/rds/aws-rds-dbsecuritygroupingress.go similarity index 82% rename from cloudformation/resources/aws-rds-dbsecuritygroupingress.go rename to cloudformation/rds/aws-rds-dbsecuritygroupingress.go index 527d4b02ac..8fd24a70fa 100644 --- a/cloudformation/resources/aws-rds-dbsecuritygroupingress.go +++ b/cloudformation/rds/aws-rds-dbsecuritygroupingress.go @@ -1,15 +1,16 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRDSDBSecurityGroupIngress AWS CloudFormation Resource (AWS::RDS::DBSecurityGroupIngress) +// DBSecurityGroupIngress AWS CloudFormation Resource (AWS::RDS::DBSecurityGroupIngress) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html -type AWSRDSDBSecurityGroupIngress struct { +type DBSecurityGroupIngress struct { // CIDRIP AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSRDSDBSecurityGroupIngress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBSecurityGroupIngress) AWSCloudFormationType() string { +func (r *DBSecurityGroupIngress) AWSCloudFormationType() string { return "AWS::RDS::DBSecurityGroupIngress" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBSecurityGroupIngress) DependsOn() []string { +func (r *DBSecurityGroupIngress) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBSecurityGroupIngress) SetDependsOn(dependencies []string) { +func (r *DBSecurityGroupIngress) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBSecurityGroupIngress) Metadata() map[string]interface{} { +func (r *DBSecurityGroupIngress) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBSecurityGroupIngress) SetMetadata(metadata map[string]interface{}) { +func (r *DBSecurityGroupIngress) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBSecurityGroupIngress) DeletionPolicy() policies.DeletionPolicy { +func (r *DBSecurityGroupIngress) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBSecurityGroupIngress) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBSecurityGroupIngress) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSDBSecurityGroupIngress) MarshalJSON() ([]byte, error) { - type Properties AWSRDSDBSecurityGroupIngress +func (r DBSecurityGroupIngress) MarshalJSON() ([]byte, error) { + type Properties DBSecurityGroupIngress return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSRDSDBSecurityGroupIngress) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSDBSecurityGroupIngress) UnmarshalJSON(b []byte) error { - type Properties AWSRDSDBSecurityGroupIngress +func (r *DBSecurityGroupIngress) UnmarshalJSON(b []byte) error { + type Properties DBSecurityGroupIngress res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSRDSDBSecurityGroupIngress) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSDBSecurityGroupIngress(*res.Properties) + *r = DBSecurityGroupIngress(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-dbsubnetgroup.go b/cloudformation/rds/aws-rds-dbsubnetgroup.go similarity index 82% rename from cloudformation/resources/aws-rds-dbsubnetgroup.go rename to cloudformation/rds/aws-rds-dbsubnetgroup.go index edfaa8923d..90cfe520da 100644 --- a/cloudformation/resources/aws-rds-dbsubnetgroup.go +++ b/cloudformation/rds/aws-rds-dbsubnetgroup.go @@ -1,15 +1,17 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRDSDBSubnetGroup AWS CloudFormation Resource (AWS::RDS::DBSubnetGroup) +// DBSubnetGroup AWS CloudFormation Resource (AWS::RDS::DBSubnetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html -type AWSRDSDBSubnetGroup struct { +type DBSubnetGroup struct { // DBSubnetGroupDescription AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSRDSDBSubnetGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSRDSDBSubnetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBSubnetGroup) AWSCloudFormationType() string { +func (r *DBSubnetGroup) AWSCloudFormationType() string { return "AWS::RDS::DBSubnetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBSubnetGroup) DependsOn() []string { +func (r *DBSubnetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBSubnetGroup) SetDependsOn(dependencies []string) { +func (r *DBSubnetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBSubnetGroup) Metadata() map[string]interface{} { +func (r *DBSubnetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBSubnetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *DBSubnetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBSubnetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *DBSubnetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DBSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSDBSubnetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRDSDBSubnetGroup +func (r DBSubnetGroup) MarshalJSON() ([]byte, error) { + type Properties DBSubnetGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSRDSDBSubnetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSDBSubnetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRDSDBSubnetGroup +func (r *DBSubnetGroup) UnmarshalJSON(b []byte) error { + type Properties DBSubnetGroup res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSRDSDBSubnetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSDBSubnetGroup(*res.Properties) + *r = DBSubnetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-eventsubscription.go b/cloudformation/rds/aws-rds-eventsubscription.go similarity index 82% rename from cloudformation/resources/aws-rds-eventsubscription.go rename to cloudformation/rds/aws-rds-eventsubscription.go index aedac3fcc1..2603040d59 100644 --- a/cloudformation/resources/aws-rds-eventsubscription.go +++ b/cloudformation/rds/aws-rds-eventsubscription.go @@ -1,15 +1,16 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRDSEventSubscription AWS CloudFormation Resource (AWS::RDS::EventSubscription) +// EventSubscription AWS CloudFormation Resource (AWS::RDS::EventSubscription) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html -type AWSRDSEventSubscription struct { +type EventSubscription struct { // Enabled AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSRDSEventSubscription struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSEventSubscription) AWSCloudFormationType() string { +func (r *EventSubscription) AWSCloudFormationType() string { return "AWS::RDS::EventSubscription" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSEventSubscription) DependsOn() []string { +func (r *EventSubscription) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSEventSubscription) SetDependsOn(dependencies []string) { +func (r *EventSubscription) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSEventSubscription) Metadata() map[string]interface{} { +func (r *EventSubscription) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSEventSubscription) SetMetadata(metadata map[string]interface{}) { +func (r *EventSubscription) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSEventSubscription) DeletionPolicy() policies.DeletionPolicy { +func (r *EventSubscription) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSEventSubscription) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EventSubscription) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSEventSubscription) MarshalJSON() ([]byte, error) { - type Properties AWSRDSEventSubscription +func (r EventSubscription) MarshalJSON() ([]byte, error) { + type Properties EventSubscription return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSRDSEventSubscription) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSEventSubscription) UnmarshalJSON(b []byte) error { - type Properties AWSRDSEventSubscription +func (r *EventSubscription) UnmarshalJSON(b []byte) error { + type Properties EventSubscription res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSRDSEventSubscription) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSEventSubscription(*res.Properties) + *r = EventSubscription(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-optiongroup.go b/cloudformation/rds/aws-rds-optiongroup.go similarity index 81% rename from cloudformation/resources/aws-rds-optiongroup.go rename to cloudformation/rds/aws-rds-optiongroup.go index 38ea760cad..3f2b78664e 100644 --- a/cloudformation/resources/aws-rds-optiongroup.go +++ b/cloudformation/rds/aws-rds-optiongroup.go @@ -1,15 +1,17 @@ -package resources +package rds import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRDSOptionGroup AWS CloudFormation Resource (AWS::RDS::OptionGroup) +// OptionGroup AWS CloudFormation Resource (AWS::RDS::OptionGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html -type AWSRDSOptionGroup struct { +type OptionGroup struct { // EngineName AWS CloudFormation Property // Required: true @@ -24,7 +26,7 @@ type AWSRDSOptionGroup struct { // OptionConfigurations AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-optionconfigurations - OptionConfigurations []AWSRDSOptionGroup_OptionConfiguration `json:"OptionConfigurations,omitempty"` + OptionConfigurations []OptionGroup_OptionConfiguration `json:"OptionConfigurations,omitempty"` // OptionGroupDescription AWS CloudFormation Property // Required: true @@ -34,7 +36,7 @@ type AWSRDSOptionGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSRDSOptionGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSOptionGroup) AWSCloudFormationType() string { +func (r *OptionGroup) AWSCloudFormationType() string { return "AWS::RDS::OptionGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSOptionGroup) DependsOn() []string { +func (r *OptionGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSOptionGroup) SetDependsOn(dependencies []string) { +func (r *OptionGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSOptionGroup) Metadata() map[string]interface{} { +func (r *OptionGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSOptionGroup) SetMetadata(metadata map[string]interface{}) { +func (r *OptionGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSOptionGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *OptionGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSOptionGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *OptionGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRDSOptionGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRDSOptionGroup +func (r OptionGroup) MarshalJSON() ([]byte, error) { + type Properties OptionGroup return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSRDSOptionGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRDSOptionGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRDSOptionGroup +func (r *OptionGroup) UnmarshalJSON(b []byte) error { + type Properties OptionGroup res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSRDSOptionGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRDSOptionGroup(*res.Properties) + *r = OptionGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-rds-optiongroup_optionconfiguration.go b/cloudformation/rds/aws-rds-optiongroup_optionconfiguration.go similarity index 79% rename from cloudformation/resources/aws-rds-optiongroup_optionconfiguration.go rename to cloudformation/rds/aws-rds-optiongroup_optionconfiguration.go index 3e5a50aa49..8517860bf1 100644 --- a/cloudformation/resources/aws-rds-optiongroup_optionconfiguration.go +++ b/cloudformation/rds/aws-rds-optiongroup_optionconfiguration.go @@ -1,10 +1,12 @@ -package resources +package rds -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRDSOptionGroup_OptionConfiguration AWS CloudFormation Resource (AWS::RDS::OptionGroup.OptionConfiguration) +// OptionGroup_OptionConfiguration AWS CloudFormation Resource (AWS::RDS::OptionGroup.OptionConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html -type AWSRDSOptionGroup_OptionConfiguration struct { +type OptionGroup_OptionConfiguration struct { // DBSecurityGroupMemberships AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSRDSOptionGroup_OptionConfiguration struct { // OptionSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-optionsettings - OptionSettings []AWSRDSOptionGroup_OptionSetting `json:"OptionSettings,omitempty"` + OptionSettings []OptionGroup_OptionSetting `json:"OptionSettings,omitempty"` // OptionVersion AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSRDSOptionGroup_OptionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSOptionGroup_OptionConfiguration) AWSCloudFormationType() string { +func (r *OptionGroup_OptionConfiguration) AWSCloudFormationType() string { return "AWS::RDS::OptionGroup.OptionConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSOptionGroup_OptionConfiguration) DependsOn() []string { +func (r *OptionGroup_OptionConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSOptionGroup_OptionConfiguration) SetDependsOn(dependencies []string) { +func (r *OptionGroup_OptionConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSOptionGroup_OptionConfiguration) Metadata() map[string]interface{} { +func (r *OptionGroup_OptionConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSOptionGroup_OptionConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *OptionGroup_OptionConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSOptionGroup_OptionConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *OptionGroup_OptionConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSOptionGroup_OptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *OptionGroup_OptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-rds-optiongroup_optionsetting.go b/cloudformation/rds/aws-rds-optiongroup_optionsetting.go similarity index 75% rename from cloudformation/resources/aws-rds-optiongroup_optionsetting.go rename to cloudformation/rds/aws-rds-optiongroup_optionsetting.go index 56280ae02d..ba39d96256 100644 --- a/cloudformation/resources/aws-rds-optiongroup_optionsetting.go +++ b/cloudformation/rds/aws-rds-optiongroup_optionsetting.go @@ -1,10 +1,12 @@ -package resources +package rds -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRDSOptionGroup_OptionSetting AWS CloudFormation Resource (AWS::RDS::OptionGroup.OptionSetting) +// OptionGroup_OptionSetting AWS CloudFormation Resource (AWS::RDS::OptionGroup.OptionSetting) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html -type AWSRDSOptionGroup_OptionSetting struct { +type OptionGroup_OptionSetting struct { // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSRDSOptionGroup_OptionSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSOptionGroup_OptionSetting) AWSCloudFormationType() string { +func (r *OptionGroup_OptionSetting) AWSCloudFormationType() string { return "AWS::RDS::OptionGroup.OptionSetting" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSOptionGroup_OptionSetting) DependsOn() []string { +func (r *OptionGroup_OptionSetting) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSOptionGroup_OptionSetting) SetDependsOn(dependencies []string) { +func (r *OptionGroup_OptionSetting) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSOptionGroup_OptionSetting) Metadata() map[string]interface{} { +func (r *OptionGroup_OptionSetting) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSOptionGroup_OptionSetting) SetMetadata(metadata map[string]interface{}) { +func (r *OptionGroup_OptionSetting) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSOptionGroup_OptionSetting) DeletionPolicy() policies.DeletionPolicy { +func (r *OptionGroup_OptionSetting) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSOptionGroup_OptionSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *OptionGroup_OptionSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-redshift-cluster.go b/cloudformation/redshift/aws-redshift-cluster.go similarity index 91% rename from cloudformation/resources/aws-redshift-cluster.go rename to cloudformation/redshift/aws-redshift-cluster.go index 525c46ddae..e8e263372f 100644 --- a/cloudformation/resources/aws-redshift-cluster.go +++ b/cloudformation/redshift/aws-redshift-cluster.go @@ -1,15 +1,17 @@ -package resources +package redshift import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRedshiftCluster AWS CloudFormation Resource (AWS::Redshift::Cluster) +// Cluster AWS CloudFormation Resource (AWS::Redshift::Cluster) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html -type AWSRedshiftCluster struct { +type Cluster struct { // AllowVersionUpgrade AWS CloudFormation Property // Required: false @@ -94,7 +96,7 @@ type AWSRedshiftCluster struct { // LoggingProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-loggingproperties - LoggingProperties *AWSRedshiftCluster_LoggingProperties `json:"LoggingProperties,omitempty"` + LoggingProperties *Cluster_LoggingProperties `json:"LoggingProperties,omitempty"` // MasterUserPassword AWS CloudFormation Property // Required: true @@ -149,7 +151,7 @@ type AWSRedshiftCluster struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcSecurityGroupIds AWS CloudFormation Property // Required: false @@ -167,50 +169,50 @@ type AWSRedshiftCluster struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftCluster) AWSCloudFormationType() string { +func (r *Cluster) AWSCloudFormationType() string { return "AWS::Redshift::Cluster" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftCluster) DependsOn() []string { +func (r *Cluster) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftCluster) SetDependsOn(dependencies []string) { +func (r *Cluster) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftCluster) Metadata() map[string]interface{} { +func (r *Cluster) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftCluster) SetMetadata(metadata map[string]interface{}) { +func (r *Cluster) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftCluster) DeletionPolicy() policies.DeletionPolicy { +func (r *Cluster) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftCluster) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRedshiftCluster) MarshalJSON() ([]byte, error) { - type Properties AWSRedshiftCluster +func (r Cluster) MarshalJSON() ([]byte, error) { + type Properties Cluster return json.Marshal(&struct { Type string Properties Properties @@ -228,8 +230,8 @@ func (r AWSRedshiftCluster) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRedshiftCluster) UnmarshalJSON(b []byte) error { - type Properties AWSRedshiftCluster +func (r *Cluster) UnmarshalJSON(b []byte) error { + type Properties Cluster res := &struct { Type string Properties *Properties @@ -248,7 +250,7 @@ func (r *AWSRedshiftCluster) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRedshiftCluster(*res.Properties) + *r = Cluster(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/redshift/aws-redshift-cluster_loggingproperties.go b/cloudformation/redshift/aws-redshift-cluster_loggingproperties.go new file mode 100644 index 0000000000..9445bbe747 --- /dev/null +++ b/cloudformation/redshift/aws-redshift-cluster_loggingproperties.go @@ -0,0 +1,70 @@ +package redshift + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Cluster_LoggingProperties AWS CloudFormation Resource (AWS::Redshift::Cluster.LoggingProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html +type Cluster_LoggingProperties struct { + + // BucketName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-bucketname + BucketName string `json:"BucketName,omitempty"` + + // S3KeyPrefix AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-s3keyprefix + S3KeyPrefix string `json:"S3KeyPrefix,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Cluster_LoggingProperties) AWSCloudFormationType() string { + return "AWS::Redshift::Cluster.LoggingProperties" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_LoggingProperties) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Cluster_LoggingProperties) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_LoggingProperties) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Cluster_LoggingProperties) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_LoggingProperties) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Cluster_LoggingProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-redshift-clusterparametergroup.go b/cloudformation/redshift/aws-redshift-clusterparametergroup.go similarity index 78% rename from cloudformation/resources/aws-redshift-clusterparametergroup.go rename to cloudformation/redshift/aws-redshift-clusterparametergroup.go index 32158790a3..0c06353771 100644 --- a/cloudformation/resources/aws-redshift-clusterparametergroup.go +++ b/cloudformation/redshift/aws-redshift-clusterparametergroup.go @@ -1,15 +1,17 @@ -package resources +package redshift import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRedshiftClusterParameterGroup AWS CloudFormation Resource (AWS::Redshift::ClusterParameterGroup) +// ClusterParameterGroup AWS CloudFormation Resource (AWS::Redshift::ClusterParameterGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html -type AWSRedshiftClusterParameterGroup struct { +type ClusterParameterGroup struct { // Description AWS CloudFormation Property // Required: true @@ -24,12 +26,12 @@ type AWSRedshiftClusterParameterGroup struct { // Parameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parameters - Parameters []AWSRedshiftClusterParameterGroup_Parameter `json:"Parameters,omitempty"` + Parameters []ClusterParameterGroup_Parameter `json:"Parameters,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSRedshiftClusterParameterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftClusterParameterGroup) AWSCloudFormationType() string { +func (r *ClusterParameterGroup) AWSCloudFormationType() string { return "AWS::Redshift::ClusterParameterGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterParameterGroup) DependsOn() []string { +func (r *ClusterParameterGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterParameterGroup) SetDependsOn(dependencies []string) { +func (r *ClusterParameterGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterParameterGroup) Metadata() map[string]interface{} { +func (r *ClusterParameterGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterParameterGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ClusterParameterGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterParameterGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ClusterParameterGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClusterParameterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRedshiftClusterParameterGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRedshiftClusterParameterGroup +func (r ClusterParameterGroup) MarshalJSON() ([]byte, error) { + type Properties ClusterParameterGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSRedshiftClusterParameterGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRedshiftClusterParameterGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRedshiftClusterParameterGroup +func (r *ClusterParameterGroup) UnmarshalJSON(b []byte) error { + type Properties ClusterParameterGroup res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSRedshiftClusterParameterGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRedshiftClusterParameterGroup(*res.Properties) + *r = ClusterParameterGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/redshift/aws-redshift-clusterparametergroup_parameter.go b/cloudformation/redshift/aws-redshift-clusterparametergroup_parameter.go new file mode 100644 index 0000000000..a78655a861 --- /dev/null +++ b/cloudformation/redshift/aws-redshift-clusterparametergroup_parameter.go @@ -0,0 +1,70 @@ +package redshift + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ClusterParameterGroup_Parameter AWS CloudFormation Resource (AWS::Redshift::ClusterParameterGroup.Parameter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html +type ClusterParameterGroup_Parameter struct { + + // ParameterName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametername + ParameterName string `json:"ParameterName,omitempty"` + + // ParameterValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametervalue + ParameterValue string `json:"ParameterValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ClusterParameterGroup_Parameter) AWSCloudFormationType() string { + return "AWS::Redshift::ClusterParameterGroup.Parameter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClusterParameterGroup_Parameter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ClusterParameterGroup_Parameter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClusterParameterGroup_Parameter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ClusterParameterGroup_Parameter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClusterParameterGroup_Parameter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ClusterParameterGroup_Parameter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-redshift-clustersecuritygroup.go b/cloudformation/redshift/aws-redshift-clustersecuritygroup.go similarity index 77% rename from cloudformation/resources/aws-redshift-clustersecuritygroup.go rename to cloudformation/redshift/aws-redshift-clustersecuritygroup.go index 6e1e1e10c1..56280c7a3e 100644 --- a/cloudformation/resources/aws-redshift-clustersecuritygroup.go +++ b/cloudformation/redshift/aws-redshift-clustersecuritygroup.go @@ -1,15 +1,17 @@ -package resources +package redshift import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRedshiftClusterSecurityGroup AWS CloudFormation Resource (AWS::Redshift::ClusterSecurityGroup) +// ClusterSecurityGroup AWS CloudFormation Resource (AWS::Redshift::ClusterSecurityGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html -type AWSRedshiftClusterSecurityGroup struct { +type ClusterSecurityGroup struct { // Description AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSRedshiftClusterSecurityGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +34,50 @@ type AWSRedshiftClusterSecurityGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftClusterSecurityGroup) AWSCloudFormationType() string { +func (r *ClusterSecurityGroup) AWSCloudFormationType() string { return "AWS::Redshift::ClusterSecurityGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterSecurityGroup) DependsOn() []string { +func (r *ClusterSecurityGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterSecurityGroup) SetDependsOn(dependencies []string) { +func (r *ClusterSecurityGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterSecurityGroup) Metadata() map[string]interface{} { +func (r *ClusterSecurityGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterSecurityGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ClusterSecurityGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterSecurityGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ClusterSecurityGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterSecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClusterSecurityGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRedshiftClusterSecurityGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRedshiftClusterSecurityGroup +func (r ClusterSecurityGroup) MarshalJSON() ([]byte, error) { + type Properties ClusterSecurityGroup return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +95,8 @@ func (r AWSRedshiftClusterSecurityGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRedshiftClusterSecurityGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRedshiftClusterSecurityGroup +func (r *ClusterSecurityGroup) UnmarshalJSON(b []byte) error { + type Properties ClusterSecurityGroup res := &struct { Type string Properties *Properties @@ -113,7 +115,7 @@ func (r *AWSRedshiftClusterSecurityGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRedshiftClusterSecurityGroup(*res.Properties) + *r = ClusterSecurityGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-redshift-clustersecuritygroupingress.go b/cloudformation/redshift/aws-redshift-clustersecuritygroupingress.go similarity index 79% rename from cloudformation/resources/aws-redshift-clustersecuritygroupingress.go rename to cloudformation/redshift/aws-redshift-clustersecuritygroupingress.go index ff9ae58376..8397f31473 100644 --- a/cloudformation/resources/aws-redshift-clustersecuritygroupingress.go +++ b/cloudformation/redshift/aws-redshift-clustersecuritygroupingress.go @@ -1,15 +1,16 @@ -package resources +package redshift import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRedshiftClusterSecurityGroupIngress AWS CloudFormation Resource (AWS::Redshift::ClusterSecurityGroupIngress) +// ClusterSecurityGroupIngress AWS CloudFormation Resource (AWS::Redshift::ClusterSecurityGroupIngress) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html -type AWSRedshiftClusterSecurityGroupIngress struct { +type ClusterSecurityGroupIngress struct { // CIDRIP AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSRedshiftClusterSecurityGroupIngress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftClusterSecurityGroupIngress) AWSCloudFormationType() string { +func (r *ClusterSecurityGroupIngress) AWSCloudFormationType() string { return "AWS::Redshift::ClusterSecurityGroupIngress" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterSecurityGroupIngress) DependsOn() []string { +func (r *ClusterSecurityGroupIngress) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterSecurityGroupIngress) SetDependsOn(dependencies []string) { +func (r *ClusterSecurityGroupIngress) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterSecurityGroupIngress) Metadata() map[string]interface{} { +func (r *ClusterSecurityGroupIngress) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterSecurityGroupIngress) SetMetadata(metadata map[string]interface{}) { +func (r *ClusterSecurityGroupIngress) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterSecurityGroupIngress) DeletionPolicy() policies.DeletionPolicy { +func (r *ClusterSecurityGroupIngress) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterSecurityGroupIngress) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClusterSecurityGroupIngress) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRedshiftClusterSecurityGroupIngress) MarshalJSON() ([]byte, error) { - type Properties AWSRedshiftClusterSecurityGroupIngress +func (r ClusterSecurityGroupIngress) MarshalJSON() ([]byte, error) { + type Properties ClusterSecurityGroupIngress return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSRedshiftClusterSecurityGroupIngress) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRedshiftClusterSecurityGroupIngress) UnmarshalJSON(b []byte) error { - type Properties AWSRedshiftClusterSecurityGroupIngress +func (r *ClusterSecurityGroupIngress) UnmarshalJSON(b []byte) error { + type Properties ClusterSecurityGroupIngress res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSRedshiftClusterSecurityGroupIngress) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRedshiftClusterSecurityGroupIngress(*res.Properties) + *r = ClusterSecurityGroupIngress(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-redshift-clustersubnetgroup.go b/cloudformation/redshift/aws-redshift-clustersubnetgroup.go similarity index 78% rename from cloudformation/resources/aws-redshift-clustersubnetgroup.go rename to cloudformation/redshift/aws-redshift-clustersubnetgroup.go index 487db984ab..1da9c2de3e 100644 --- a/cloudformation/resources/aws-redshift-clustersubnetgroup.go +++ b/cloudformation/redshift/aws-redshift-clustersubnetgroup.go @@ -1,15 +1,17 @@ -package resources +package redshift import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRedshiftClusterSubnetGroup AWS CloudFormation Resource (AWS::Redshift::ClusterSubnetGroup) +// ClusterSubnetGroup AWS CloudFormation Resource (AWS::Redshift::ClusterSubnetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html -type AWSRedshiftClusterSubnetGroup struct { +type ClusterSubnetGroup struct { // Description AWS CloudFormation Property // Required: true @@ -24,7 +26,7 @@ type AWSRedshiftClusterSubnetGroup struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +39,50 @@ type AWSRedshiftClusterSubnetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftClusterSubnetGroup) AWSCloudFormationType() string { +func (r *ClusterSubnetGroup) AWSCloudFormationType() string { return "AWS::Redshift::ClusterSubnetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterSubnetGroup) DependsOn() []string { +func (r *ClusterSubnetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterSubnetGroup) SetDependsOn(dependencies []string) { +func (r *ClusterSubnetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterSubnetGroup) Metadata() map[string]interface{} { +func (r *ClusterSubnetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterSubnetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *ClusterSubnetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterSubnetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *ClusterSubnetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClusterSubnetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRedshiftClusterSubnetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRedshiftClusterSubnetGroup +func (r ClusterSubnetGroup) MarshalJSON() ([]byte, error) { + type Properties ClusterSubnetGroup return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +100,8 @@ func (r AWSRedshiftClusterSubnetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRedshiftClusterSubnetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRedshiftClusterSubnetGroup +func (r *ClusterSubnetGroup) UnmarshalJSON(b []byte) error { + type Properties ClusterSubnetGroup res := &struct { Type string Properties *Properties @@ -118,7 +120,7 @@ func (r *AWSRedshiftClusterSubnetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRedshiftClusterSubnetGroup(*res.Properties) + *r = ClusterSubnetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/alexa-ask-skill_overrides.go b/cloudformation/resources/alexa-ask-skill_overrides.go deleted file mode 100644 index 7e6dd21250..0000000000 --- a/cloudformation/resources/alexa-ask-skill_overrides.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AlexaASKSkill_Overrides AWS CloudFormation Resource (Alexa::ASK::Skill.Overrides) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html -type AlexaASKSkill_Overrides struct { - - // Manifest AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html#cfn-ask-skill-overrides-manifest - Manifest interface{} `json:"Manifest,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AlexaASKSkill_Overrides) AWSCloudFormationType() string { - return "Alexa::ASK::Skill.Overrides" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AlexaASKSkill_Overrides) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AlexaASKSkill_Overrides) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AlexaASKSkill_Overrides) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AlexaASKSkill_Overrides) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AlexaASKSkill_Overrides) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AlexaASKSkill_Overrides) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-amazonmq-broker_configurationid.go b/cloudformation/resources/aws-amazonmq-broker_configurationid.go deleted file mode 100644 index eb50892285..0000000000 --- a/cloudformation/resources/aws-amazonmq-broker_configurationid.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAmazonMQBroker_ConfigurationId AWS CloudFormation Resource (AWS::AmazonMQ::Broker.ConfigurationId) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html -type AWSAmazonMQBroker_ConfigurationId struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html#cfn-amazonmq-broker-configurationid-id - Id string `json:"Id,omitempty"` - - // Revision AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html#cfn-amazonmq-broker-configurationid-revision - Revision int `json:"Revision"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker_ConfigurationId) AWSCloudFormationType() string { - return "AWS::AmazonMQ::Broker.ConfigurationId" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_ConfigurationId) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_ConfigurationId) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_ConfigurationId) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_ConfigurationId) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_ConfigurationId) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_ConfigurationId) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-amazonmq-broker_encryptionoptions.go b/cloudformation/resources/aws-amazonmq-broker_encryptionoptions.go deleted file mode 100644 index 44705e2993..0000000000 --- a/cloudformation/resources/aws-amazonmq-broker_encryptionoptions.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAmazonMQBroker_EncryptionOptions AWS CloudFormation Resource (AWS::AmazonMQ::Broker.EncryptionOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html -type AWSAmazonMQBroker_EncryptionOptions struct { - - // KmsKeyId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html#cfn-amazonmq-broker-encryptionoptions-kmskeyid - KmsKeyId string `json:"KmsKeyId,omitempty"` - - // UseAwsOwnedKey AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html#cfn-amazonmq-broker-encryptionoptions-useawsownedkey - UseAwsOwnedKey bool `json:"UseAwsOwnedKey"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker_EncryptionOptions) AWSCloudFormationType() string { - return "AWS::AmazonMQ::Broker.EncryptionOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_EncryptionOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQBroker_EncryptionOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_EncryptionOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQBroker_EncryptionOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_EncryptionOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQBroker_EncryptionOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-amazonmq-configuration_tagsentry.go b/cloudformation/resources/aws-amazonmq-configuration_tagsentry.go deleted file mode 100644 index 9f2d770e6f..0000000000 --- a/cloudformation/resources/aws-amazonmq-configuration_tagsentry.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAmazonMQConfiguration_TagsEntry AWS CloudFormation Resource (AWS::AmazonMQ::Configuration.TagsEntry) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html -type AWSAmazonMQConfiguration_TagsEntry struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html#cfn-amazonmq-configuration-tagsentry-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html#cfn-amazonmq-configuration-tagsentry-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQConfiguration_TagsEntry) AWSCloudFormationType() string { - return "AWS::AmazonMQ::Configuration.TagsEntry" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQConfiguration_TagsEntry) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQConfiguration_TagsEntry) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQConfiguration_TagsEntry) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQConfiguration_TagsEntry) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQConfiguration_TagsEntry) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQConfiguration_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-amazonmq-configurationassociation_configurationid.go b/cloudformation/resources/aws-amazonmq-configurationassociation_configurationid.go deleted file mode 100644 index 3b22217d2e..0000000000 --- a/cloudformation/resources/aws-amazonmq-configurationassociation_configurationid.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAmazonMQConfigurationAssociation_ConfigurationId AWS CloudFormation Resource (AWS::AmazonMQ::ConfigurationAssociation.ConfigurationId) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html -type AWSAmazonMQConfigurationAssociation_ConfigurationId struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html#cfn-amazonmq-configurationassociation-configurationid-id - Id string `json:"Id,omitempty"` - - // Revision AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html#cfn-amazonmq-configurationassociation-configurationid-revision - Revision int `json:"Revision"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQConfigurationAssociation_ConfigurationId) AWSCloudFormationType() string { - return "AWS::AmazonMQ::ConfigurationAssociation.ConfigurationId" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQConfigurationAssociation_ConfigurationId) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmazonMQConfigurationAssociation_ConfigurationId) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQConfigurationAssociation_ConfigurationId) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmazonMQConfigurationAssociation_ConfigurationId) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQConfigurationAssociation_ConfigurationId) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmazonMQConfigurationAssociation_ConfigurationId) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-amplify-app_environmentvariable.go b/cloudformation/resources/aws-amplify-app_environmentvariable.go deleted file mode 100644 index 570d388a90..0000000000 --- a/cloudformation/resources/aws-amplify-app_environmentvariable.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAmplifyApp_EnvironmentVariable AWS CloudFormation Resource (AWS::Amplify::App.EnvironmentVariable) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html -type AWSAmplifyApp_EnvironmentVariable struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html#cfn-amplify-app-environmentvariable-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html#cfn-amplify-app-environmentvariable-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyApp_EnvironmentVariable) AWSCloudFormationType() string { - return "AWS::Amplify::App.EnvironmentVariable" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp_EnvironmentVariable) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyApp_EnvironmentVariable) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp_EnvironmentVariable) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyApp_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyApp_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-amplify-branch_environmentvariable.go b/cloudformation/resources/aws-amplify-branch_environmentvariable.go deleted file mode 100644 index ddbe40b44d..0000000000 --- a/cloudformation/resources/aws-amplify-branch_environmentvariable.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAmplifyBranch_EnvironmentVariable AWS CloudFormation Resource (AWS::Amplify::Branch.EnvironmentVariable) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html -type AWSAmplifyBranch_EnvironmentVariable struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html#cfn-amplify-branch-environmentvariable-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html#cfn-amplify-branch-environmentvariable-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyBranch_EnvironmentVariable) AWSCloudFormationType() string { - return "AWS::Amplify::Branch.EnvironmentVariable" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyBranch_EnvironmentVariable) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyBranch_EnvironmentVariable) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyBranch_EnvironmentVariable) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyBranch_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyBranch_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyBranch_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-amplify-domain_subdomainsetting.go b/cloudformation/resources/aws-amplify-domain_subdomainsetting.go deleted file mode 100644 index 67b10c7b37..0000000000 --- a/cloudformation/resources/aws-amplify-domain_subdomainsetting.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAmplifyDomain_SubDomainSetting AWS CloudFormation Resource (AWS::Amplify::Domain.SubDomainSetting) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html -type AWSAmplifyDomain_SubDomainSetting struct { - - // BranchName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html#cfn-amplify-domain-subdomainsetting-branchname - BranchName string `json:"BranchName,omitempty"` - - // Prefix AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html#cfn-amplify-domain-subdomainsetting-prefix - Prefix string `json:"Prefix,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyDomain_SubDomainSetting) AWSCloudFormationType() string { - return "AWS::Amplify::Domain.SubDomainSetting" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyDomain_SubDomainSetting) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAmplifyDomain_SubDomainSetting) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyDomain_SubDomainSetting) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAmplifyDomain_SubDomainSetting) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyDomain_SubDomainSetting) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAmplifyDomain_SubDomainSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigateway-deployment_accesslogsetting.go b/cloudformation/resources/aws-apigateway-deployment_accesslogsetting.go deleted file mode 100644 index ecc2df7d35..0000000000 --- a/cloudformation/resources/aws-apigateway-deployment_accesslogsetting.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayDeployment_AccessLogSetting AWS CloudFormation Resource (AWS::ApiGateway::Deployment.AccessLogSetting) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html -type AWSApiGatewayDeployment_AccessLogSetting struct { - - // DestinationArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html#cfn-apigateway-deployment-accesslogsetting-destinationarn - DestinationArn string `json:"DestinationArn,omitempty"` - - // Format AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html#cfn-apigateway-deployment-accesslogsetting-format - Format string `json:"Format,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDeployment_AccessLogSetting) AWSCloudFormationType() string { - return "AWS::ApiGateway::Deployment.AccessLogSetting" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_AccessLogSetting) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_AccessLogSetting) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_AccessLogSetting) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigateway-deployment_deploymentcanarysettings.go b/cloudformation/resources/aws-apigateway-deployment_deploymentcanarysettings.go deleted file mode 100644 index 5adb58cae2..0000000000 --- a/cloudformation/resources/aws-apigateway-deployment_deploymentcanarysettings.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayDeployment_DeploymentCanarySettings AWS CloudFormation Resource (AWS::ApiGateway::Deployment.DeploymentCanarySettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html -type AWSApiGatewayDeployment_DeploymentCanarySettings struct { - - // PercentTraffic AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-percenttraffic - PercentTraffic float64 `json:"PercentTraffic,omitempty"` - - // StageVariableOverrides AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-stagevariableoverrides - StageVariableOverrides map[string]string `json:"StageVariableOverrides,omitempty"` - - // UseStageCache AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-usestagecache - UseStageCache bool `json:"UseStageCache,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDeployment_DeploymentCanarySettings) AWSCloudFormationType() string { - return "AWS::ApiGateway::Deployment.DeploymentCanarySettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_DeploymentCanarySettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDeployment_DeploymentCanarySettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_DeploymentCanarySettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDeployment_DeploymentCanarySettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_DeploymentCanarySettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDeployment_DeploymentCanarySettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigateway-domainname_endpointconfiguration.go b/cloudformation/resources/aws-apigateway-domainname_endpointconfiguration.go deleted file mode 100644 index bbb3d40b47..0000000000 --- a/cloudformation/resources/aws-apigateway-domainname_endpointconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayDomainName_EndpointConfiguration AWS CloudFormation Resource (AWS::ApiGateway::DomainName.EndpointConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-endpointconfiguration.html -type AWSApiGatewayDomainName_EndpointConfiguration struct { - - // Types AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-endpointconfiguration.html#cfn-apigateway-domainname-endpointconfiguration-types - Types []string `json:"Types,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDomainName_EndpointConfiguration) AWSCloudFormationType() string { - return "AWS::ApiGateway::DomainName.EndpointConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDomainName_EndpointConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayDomainName_EndpointConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDomainName_EndpointConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayDomainName_EndpointConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDomainName_EndpointConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayDomainName_EndpointConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigateway-restapi_endpointconfiguration.go b/cloudformation/resources/aws-apigateway-restapi_endpointconfiguration.go deleted file mode 100644 index 7a738c87aa..0000000000 --- a/cloudformation/resources/aws-apigateway-restapi_endpointconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayRestApi_EndpointConfiguration AWS CloudFormation Resource (AWS::ApiGateway::RestApi.EndpointConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html -type AWSApiGatewayRestApi_EndpointConfiguration struct { - - // Types AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-types - Types []string `json:"Types,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayRestApi_EndpointConfiguration) AWSCloudFormationType() string { - return "AWS::ApiGateway::RestApi.EndpointConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayRestApi_EndpointConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayRestApi_EndpointConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayRestApi_EndpointConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayRestApi_EndpointConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayRestApi_EndpointConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayRestApi_EndpointConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigateway-stage_accesslogsetting.go b/cloudformation/resources/aws-apigateway-stage_accesslogsetting.go deleted file mode 100644 index 9573a4c058..0000000000 --- a/cloudformation/resources/aws-apigateway-stage_accesslogsetting.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayStage_AccessLogSetting AWS CloudFormation Resource (AWS::ApiGateway::Stage.AccessLogSetting) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html -type AWSApiGatewayStage_AccessLogSetting struct { - - // DestinationArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-destinationarn - DestinationArn string `json:"DestinationArn,omitempty"` - - // Format AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-format - Format string `json:"Format,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayStage_AccessLogSetting) AWSCloudFormationType() string { - return "AWS::ApiGateway::Stage.AccessLogSetting" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayStage_AccessLogSetting) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayStage_AccessLogSetting) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayStage_AccessLogSetting) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayStage_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayStage_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayStage_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigateway-usageplan_apistage.go b/cloudformation/resources/aws-apigateway-usageplan_apistage.go deleted file mode 100644 index 111f217177..0000000000 --- a/cloudformation/resources/aws-apigateway-usageplan_apistage.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayUsagePlan_ApiStage AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan.ApiStage) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html -type AWSApiGatewayUsagePlan_ApiStage struct { - - // ApiId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-apiid - ApiId string `json:"ApiId,omitempty"` - - // Stage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-stage - Stage string `json:"Stage,omitempty"` - - // Throttle AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-throttle - Throttle map[string]AWSApiGatewayUsagePlan_ThrottleSettings `json:"Throttle,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayUsagePlan_ApiStage) AWSCloudFormationType() string { - return "AWS::ApiGateway::UsagePlan.ApiStage" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlan_ApiStage) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlan_ApiStage) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlan_ApiStage) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlan_ApiStage) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlan_ApiStage) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlan_ApiStage) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigateway-usageplan_throttlesettings.go b/cloudformation/resources/aws-apigateway-usageplan_throttlesettings.go deleted file mode 100644 index 394583d8c0..0000000000 --- a/cloudformation/resources/aws-apigateway-usageplan_throttlesettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayUsagePlan_ThrottleSettings AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan.ThrottleSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html -type AWSApiGatewayUsagePlan_ThrottleSettings struct { - - // BurstLimit AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-burstlimit - BurstLimit int `json:"BurstLimit,omitempty"` - - // RateLimit AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-ratelimit - RateLimit float64 `json:"RateLimit,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayUsagePlan_ThrottleSettings) AWSCloudFormationType() string { - return "AWS::ApiGateway::UsagePlan.ThrottleSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlan_ThrottleSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayUsagePlan_ThrottleSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlan_ThrottleSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayUsagePlan_ThrottleSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlan_ThrottleSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayUsagePlan_ThrottleSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigatewayv2-domainname_domainnameconfiguration.go b/cloudformation/resources/aws-apigatewayv2-domainname_domainnameconfiguration.go deleted file mode 100644 index 3e25c7c953..0000000000 --- a/cloudformation/resources/aws-apigatewayv2-domainname_domainnameconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayV2DomainName_DomainNameConfiguration AWS CloudFormation Resource (AWS::ApiGatewayV2::DomainName.DomainNameConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html -type AWSApiGatewayV2DomainName_DomainNameConfiguration struct { - - // CertificateArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatearn - CertificateArn string `json:"CertificateArn,omitempty"` - - // CertificateName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatename - CertificateName string `json:"CertificateName,omitempty"` - - // EndpointType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-endpointtype - EndpointType string `json:"EndpointType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2DomainName_DomainNameConfiguration) AWSCloudFormationType() string { - return "AWS::ApiGatewayV2::DomainName.DomainNameConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2DomainName_DomainNameConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2DomainName_DomainNameConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2DomainName_DomainNameConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2DomainName_DomainNameConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2DomainName_DomainNameConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2DomainName_DomainNameConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigatewayv2-route_parameterconstraints.go b/cloudformation/resources/aws-apigatewayv2-route_parameterconstraints.go deleted file mode 100644 index d03838c802..0000000000 --- a/cloudformation/resources/aws-apigatewayv2-route_parameterconstraints.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayV2Route_ParameterConstraints AWS CloudFormation Resource (AWS::ApiGatewayV2::Route.ParameterConstraints) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-route-parameterconstraints.html -type AWSApiGatewayV2Route_ParameterConstraints struct { - - // Required AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-route-parameterconstraints.html#cfn-apigatewayv2-route-parameterconstraints-required - Required bool `json:"Required"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Route_ParameterConstraints) AWSCloudFormationType() string { - return "AWS::ApiGatewayV2::Route.ParameterConstraints" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Route_ParameterConstraints) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Route_ParameterConstraints) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Route_ParameterConstraints) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Route_ParameterConstraints) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Route_ParameterConstraints) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Route_ParameterConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigatewayv2-routeresponse_parameterconstraints.go b/cloudformation/resources/aws-apigatewayv2-routeresponse_parameterconstraints.go deleted file mode 100644 index dd705304c5..0000000000 --- a/cloudformation/resources/aws-apigatewayv2-routeresponse_parameterconstraints.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayV2RouteResponse_ParameterConstraints AWS CloudFormation Resource (AWS::ApiGatewayV2::RouteResponse.ParameterConstraints) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-routeresponse-parameterconstraints.html -type AWSApiGatewayV2RouteResponse_ParameterConstraints struct { - - // Required AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-routeresponse-parameterconstraints.html#cfn-apigatewayv2-routeresponse-parameterconstraints-required - Required bool `json:"Required"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2RouteResponse_ParameterConstraints) AWSCloudFormationType() string { - return "AWS::ApiGatewayV2::RouteResponse.ParameterConstraints" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2RouteResponse_ParameterConstraints) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2RouteResponse_ParameterConstraints) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2RouteResponse_ParameterConstraints) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2RouteResponse_ParameterConstraints) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2RouteResponse_ParameterConstraints) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2RouteResponse_ParameterConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-apigatewayv2-stage_accesslogsettings.go b/cloudformation/resources/aws-apigatewayv2-stage_accesslogsettings.go deleted file mode 100644 index b3d6e4256c..0000000000 --- a/cloudformation/resources/aws-apigatewayv2-stage_accesslogsettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApiGatewayV2Stage_AccessLogSettings AWS CloudFormation Resource (AWS::ApiGatewayV2::Stage.AccessLogSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html -type AWSApiGatewayV2Stage_AccessLogSettings struct { - - // DestinationArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html#cfn-apigatewayv2-stage-accesslogsettings-destinationarn - DestinationArn string `json:"DestinationArn,omitempty"` - - // Format AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html#cfn-apigatewayv2-stage-accesslogsettings-format - Format string `json:"Format,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Stage_AccessLogSettings) AWSCloudFormationType() string { - return "AWS::ApiGatewayV2::Stage.AccessLogSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Stage_AccessLogSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApiGatewayV2Stage_AccessLogSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Stage_AccessLogSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApiGatewayV2Stage_AccessLogSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Stage_AccessLogSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApiGatewayV2Stage_AccessLogSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go b/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go deleted file mode 100644 index 8128a1e14a..0000000000 --- a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApplicationAutoScalingScalableTarget_ScalableTargetAction AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.ScalableTargetAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html -type AWSApplicationAutoScalingScalableTarget_ScalableTargetAction struct { - - // MaxCapacity AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html#cfn-applicationautoscaling-scalabletarget-scalabletargetaction-maxcapacity - MaxCapacity int `json:"MaxCapacity,omitempty"` - - // MinCapacity AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html#cfn-applicationautoscaling-scalabletarget-scalabletargetaction-mincapacity - MinCapacity int `json:"MinCapacity,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) AWSCloudFormationType() string { - return "AWS::ApplicationAutoScaling::ScalableTarget.ScalableTargetAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scheduledaction.go b/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scheduledaction.go deleted file mode 100644 index 87265990a7..0000000000 --- a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scheduledaction.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApplicationAutoScalingScalableTarget_ScheduledAction AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.ScheduledAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html -type AWSApplicationAutoScalingScalableTarget_ScheduledAction struct { - - // EndTime AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-endtime - EndTime string `json:"EndTime,omitempty"` - - // ScalableTargetAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-scalabletargetaction - ScalableTargetAction *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction `json:"ScalableTargetAction,omitempty"` - - // Schedule AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-schedule - Schedule string `json:"Schedule,omitempty"` - - // ScheduledActionName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-scheduledactionname - ScheduledActionName string `json:"ScheduledActionName,omitempty"` - - // StartTime AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-starttime - StartTime string `json:"StartTime,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalableTarget_ScheduledAction) AWSCloudFormationType() string { - return "AWS::ApplicationAutoScaling::ScalableTarget.ScheduledAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalableTarget_ScheduledAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalableTarget_ScheduledAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalableTarget_ScheduledAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalableTarget_ScheduledAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalableTarget_ScheduledAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalableTarget_ScheduledAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_suspendedstate.go b/cloudformation/resources/aws-applicationautoscaling-scalabletarget_suspendedstate.go deleted file mode 100644 index 7712c7394b..0000000000 --- a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_suspendedstate.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApplicationAutoScalingScalableTarget_SuspendedState AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.SuspendedState) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html -type AWSApplicationAutoScalingScalableTarget_SuspendedState struct { - - // DynamicScalingInSuspended AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-dynamicscalinginsuspended - DynamicScalingInSuspended bool `json:"DynamicScalingInSuspended,omitempty"` - - // DynamicScalingOutSuspended AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-dynamicscalingoutsuspended - DynamicScalingOutSuspended bool `json:"DynamicScalingOutSuspended,omitempty"` - - // ScheduledScalingSuspended AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-scheduledscalingsuspended - ScheduledScalingSuspended bool `json:"ScheduledScalingSuspended,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalableTarget_SuspendedState) AWSCloudFormationType() string { - return "AWS::ApplicationAutoScaling::ScalableTarget.SuspendedState" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalableTarget_SuspendedState) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalableTarget_SuspendedState) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalableTarget_SuspendedState) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalableTarget_SuspendedState) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalableTarget_SuspendedState) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalableTarget_SuspendedState) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go b/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go deleted file mode 100644 index 55e261198a..0000000000 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.CustomizedMetricSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html -type AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification struct { - - // Dimensions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-dimensions - Dimensions []AWSApplicationAutoScalingScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` - - // MetricName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-metricname - MetricName string `json:"MetricName,omitempty"` - - // Namespace AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-namespace - Namespace string `json:"Namespace,omitempty"` - - // Statistic AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-statistic - Statistic string `json:"Statistic,omitempty"` - - // Unit AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-unit - Unit string `json:"Unit,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) AWSCloudFormationType() string { - return "AWS::ApplicationAutoScaling::ScalingPolicy.CustomizedMetricSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_metricdimension.go b/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_metricdimension.go deleted file mode 100644 index a1ccf8c9ac..0000000000 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_metricdimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApplicationAutoScalingScalingPolicy_MetricDimension AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.MetricDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html -type AWSApplicationAutoScalingScalingPolicy_MetricDimension struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_MetricDimension) AWSCloudFormationType() string { - return "AWS::ApplicationAutoScaling::ScalingPolicy.MetricDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_MetricDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_MetricDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_MetricDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_MetricDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_MetricDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go b/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go deleted file mode 100644 index 6c5feae141..0000000000 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html -type AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification struct { - - // PredefinedMetricType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype - PredefinedMetricType string `json:"PredefinedMetricType,omitempty"` - - // ResourceLabel AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel - ResourceLabel string `json:"ResourceLabel,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) AWSCloudFormationType() string { - return "AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go b/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go deleted file mode 100644 index 9941d2e3af..0000000000 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.StepScalingPolicyConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html -type AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration struct { - - // AdjustmentType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-adjustmenttype - AdjustmentType string `json:"AdjustmentType,omitempty"` - - // Cooldown AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-cooldown - Cooldown int `json:"Cooldown,omitempty"` - - // MetricAggregationType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-metricaggregationtype - MetricAggregationType string `json:"MetricAggregationType,omitempty"` - - // MinAdjustmentMagnitude AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-minadjustmentmagnitude - MinAdjustmentMagnitude int `json:"MinAdjustmentMagnitude,omitempty"` - - // StepAdjustments AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustments - StepAdjustments []AWSApplicationAutoScalingScalingPolicy_StepAdjustment `json:"StepAdjustments,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) AWSCloudFormationType() string { - return "AWS::ApplicationAutoScaling::ScalingPolicy.StepScalingPolicyConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go b/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go deleted file mode 100644 index 690a4a935c..0000000000 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go +++ /dev/null @@ -1,88 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingScalingPolicyConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html -type AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration struct { - - // CustomizedMetricSpecification AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-customizedmetricspecification - CustomizedMetricSpecification *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification `json:"CustomizedMetricSpecification,omitempty"` - - // DisableScaleIn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-disablescalein - DisableScaleIn bool `json:"DisableScaleIn,omitempty"` - - // PredefinedMetricSpecification AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-predefinedmetricspecification - PredefinedMetricSpecification *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification `json:"PredefinedMetricSpecification,omitempty"` - - // ScaleInCooldown AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-scaleincooldown - ScaleInCooldown int `json:"ScaleInCooldown,omitempty"` - - // ScaleOutCooldown AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-scaleoutcooldown - ScaleOutCooldown int `json:"ScaleOutCooldown,omitempty"` - - // TargetValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-targetvalue - TargetValue float64 `json:"TargetValue"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) AWSCloudFormationType() string { - return "AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingScalingPolicyConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-mesh_egressfilter.go b/cloudformation/resources/aws-appmesh-mesh_egressfilter.go deleted file mode 100644 index f09b3f8691..0000000000 --- a/cloudformation/resources/aws-appmesh-mesh_egressfilter.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshMesh_EgressFilter AWS CloudFormation Resource (AWS::AppMesh::Mesh.EgressFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-egressfilter.html -type AWSAppMeshMesh_EgressFilter struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-egressfilter.html#cfn-appmesh-mesh-egressfilter-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshMesh_EgressFilter) AWSCloudFormationType() string { - return "AWS::AppMesh::Mesh.EgressFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshMesh_EgressFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshMesh_EgressFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshMesh_EgressFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshMesh_EgressFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshMesh_EgressFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshMesh_EgressFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-mesh_meshspec.go b/cloudformation/resources/aws-appmesh-mesh_meshspec.go deleted file mode 100644 index 47b9ed5779..0000000000 --- a/cloudformation/resources/aws-appmesh-mesh_meshspec.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshMesh_MeshSpec AWS CloudFormation Resource (AWS::AppMesh::Mesh.MeshSpec) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-meshspec.html -type AWSAppMeshMesh_MeshSpec struct { - - // EgressFilter AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-meshspec.html#cfn-appmesh-mesh-meshspec-egressfilter - EgressFilter *AWSAppMeshMesh_EgressFilter `json:"EgressFilter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshMesh_MeshSpec) AWSCloudFormationType() string { - return "AWS::AppMesh::Mesh.MeshSpec" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshMesh_MeshSpec) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshMesh_MeshSpec) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshMesh_MeshSpec) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshMesh_MeshSpec) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshMesh_MeshSpec) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshMesh_MeshSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-route_httproute.go b/cloudformation/resources/aws-appmesh-route_httproute.go deleted file mode 100644 index 665b54bdeb..0000000000 --- a/cloudformation/resources/aws-appmesh-route_httproute.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshRoute_HttpRoute AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRoute) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html -type AWSAppMeshRoute_HttpRoute struct { - - // Action AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-action - Action *AWSAppMeshRoute_HttpRouteAction `json:"Action,omitempty"` - - // Match AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-match - Match *AWSAppMeshRoute_HttpRouteMatch `json:"Match,omitempty"` - - // RetryPolicy AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-retrypolicy - RetryPolicy *AWSAppMeshRoute_HttpRetryPolicy `json:"RetryPolicy,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HttpRoute) AWSCloudFormationType() string { - return "AWS::AppMesh::Route.HttpRoute" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRoute) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRoute) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRoute) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRoute) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRoute) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-route_httprouteaction.go b/cloudformation/resources/aws-appmesh-route_httprouteaction.go deleted file mode 100644 index d0a5881fba..0000000000 --- a/cloudformation/resources/aws-appmesh-route_httprouteaction.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshRoute_HttpRouteAction AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRouteAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html -type AWSAppMeshRoute_HttpRouteAction struct { - - // WeightedTargets AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html#cfn-appmesh-route-httprouteaction-weightedtargets - WeightedTargets []AWSAppMeshRoute_WeightedTarget `json:"WeightedTargets,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HttpRouteAction) AWSCloudFormationType() string { - return "AWS::AppMesh::Route.HttpRouteAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRouteAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRouteAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRouteAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRouteAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRouteAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRouteAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-route_httprouteheader.go b/cloudformation/resources/aws-appmesh-route_httprouteheader.go deleted file mode 100644 index 99154651c0..0000000000 --- a/cloudformation/resources/aws-appmesh-route_httprouteheader.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshRoute_HttpRouteHeader AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRouteHeader) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html -type AWSAppMeshRoute_HttpRouteHeader struct { - - // Invert AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-invert - Invert bool `json:"Invert,omitempty"` - - // Match AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-match - Match *AWSAppMeshRoute_HeaderMatchMethod `json:"Match,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HttpRouteHeader) AWSCloudFormationType() string { - return "AWS::AppMesh::Route.HttpRouteHeader" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRouteHeader) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_HttpRouteHeader) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRouteHeader) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_HttpRouteHeader) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRouteHeader) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_HttpRouteHeader) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-route_matchrange.go b/cloudformation/resources/aws-appmesh-route_matchrange.go deleted file mode 100644 index 4bbaecbebd..0000000000 --- a/cloudformation/resources/aws-appmesh-route_matchrange.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshRoute_MatchRange AWS CloudFormation Resource (AWS::AppMesh::Route.MatchRange) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html -type AWSAppMeshRoute_MatchRange struct { - - // End AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-end - End int `json:"End"` - - // Start AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-start - Start int `json:"Start"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_MatchRange) AWSCloudFormationType() string { - return "AWS::AppMesh::Route.MatchRange" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_MatchRange) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_MatchRange) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_MatchRange) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_MatchRange) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_MatchRange) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_MatchRange) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-route_routespec.go b/cloudformation/resources/aws-appmesh-route_routespec.go deleted file mode 100644 index f707737f25..0000000000 --- a/cloudformation/resources/aws-appmesh-route_routespec.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshRoute_RouteSpec AWS CloudFormation Resource (AWS::AppMesh::Route.RouteSpec) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html -type AWSAppMeshRoute_RouteSpec struct { - - // HttpRoute AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-httproute - HttpRoute *AWSAppMeshRoute_HttpRoute `json:"HttpRoute,omitempty"` - - // Priority AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-priority - Priority int `json:"Priority,omitempty"` - - // TcpRoute AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-tcproute - TcpRoute *AWSAppMeshRoute_TcpRoute `json:"TcpRoute,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_RouteSpec) AWSCloudFormationType() string { - return "AWS::AppMesh::Route.RouteSpec" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_RouteSpec) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_RouteSpec) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_RouteSpec) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_RouteSpec) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_RouteSpec) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_RouteSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-route_tcproute.go b/cloudformation/resources/aws-appmesh-route_tcproute.go deleted file mode 100644 index ef5b0f2765..0000000000 --- a/cloudformation/resources/aws-appmesh-route_tcproute.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshRoute_TcpRoute AWS CloudFormation Resource (AWS::AppMesh::Route.TcpRoute) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html -type AWSAppMeshRoute_TcpRoute struct { - - // Action AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-action - Action *AWSAppMeshRoute_TcpRouteAction `json:"Action,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_TcpRoute) AWSCloudFormationType() string { - return "AWS::AppMesh::Route.TcpRoute" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_TcpRoute) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_TcpRoute) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_TcpRoute) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_TcpRoute) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_TcpRoute) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_TcpRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-route_tcprouteaction.go b/cloudformation/resources/aws-appmesh-route_tcprouteaction.go deleted file mode 100644 index 2b6bbf8590..0000000000 --- a/cloudformation/resources/aws-appmesh-route_tcprouteaction.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshRoute_TcpRouteAction AWS CloudFormation Resource (AWS::AppMesh::Route.TcpRouteAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html -type AWSAppMeshRoute_TcpRouteAction struct { - - // WeightedTargets AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html#cfn-appmesh-route-tcprouteaction-weightedtargets - WeightedTargets []AWSAppMeshRoute_WeightedTarget `json:"WeightedTargets,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_TcpRouteAction) AWSCloudFormationType() string { - return "AWS::AppMesh::Route.TcpRouteAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_TcpRouteAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_TcpRouteAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_TcpRouteAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_TcpRouteAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_TcpRouteAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_TcpRouteAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-route_weightedtarget.go b/cloudformation/resources/aws-appmesh-route_weightedtarget.go deleted file mode 100644 index 8d6b0bec16..0000000000 --- a/cloudformation/resources/aws-appmesh-route_weightedtarget.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshRoute_WeightedTarget AWS CloudFormation Resource (AWS::AppMesh::Route.WeightedTarget) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html -type AWSAppMeshRoute_WeightedTarget struct { - - // VirtualNode AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-virtualnode - VirtualNode string `json:"VirtualNode,omitempty"` - - // Weight AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-weight - Weight int `json:"Weight"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_WeightedTarget) AWSCloudFormationType() string { - return "AWS::AppMesh::Route.WeightedTarget" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_WeightedTarget) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshRoute_WeightedTarget) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_WeightedTarget) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshRoute_WeightedTarget) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_WeightedTarget) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshRoute_WeightedTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_accesslog.go b/cloudformation/resources/aws-appmesh-virtualnode_accesslog.go deleted file mode 100644 index 3a3d1037a9..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_accesslog.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_AccessLog AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AccessLog) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html -type AWSAppMeshVirtualNode_AccessLog struct { - - // File AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html#cfn-appmesh-virtualnode-accesslog-file - File *AWSAppMeshVirtualNode_FileAccessLog `json:"File,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_AccessLog) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.AccessLog" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_AccessLog) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_AccessLog) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_AccessLog) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_AccessLog) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_AccessLog) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_AccessLog) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go b/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go deleted file mode 100644 index 74792b7bad..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AwsCloudMapInstanceAttribute) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html -type AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.AwsCloudMapInstanceAttribute" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapservicediscovery.go b/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapservicediscovery.go deleted file mode 100644 index b9600abc10..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapservicediscovery.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AwsCloudMapServiceDiscovery) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html -type AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery struct { - - // Attributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-attributes - Attributes []AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute `json:"Attributes,omitempty"` - - // NamespaceName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-namespacename - NamespaceName string `json:"NamespaceName,omitempty"` - - // ServiceName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-servicename - ServiceName string `json:"ServiceName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.AwsCloudMapServiceDiscovery" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_backend.go b/cloudformation/resources/aws-appmesh-virtualnode_backend.go deleted file mode 100644 index c7c395413d..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_backend.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_Backend AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Backend) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html -type AWSAppMeshVirtualNode_Backend struct { - - // VirtualService AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html#cfn-appmesh-virtualnode-backend-virtualservice - VirtualService *AWSAppMeshVirtualNode_VirtualServiceBackend `json:"VirtualService,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_Backend) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.Backend" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_Backend) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_Backend) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_Backend) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_Backend) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_Backend) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_Backend) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_dnsservicediscovery.go b/cloudformation/resources/aws-appmesh-virtualnode_dnsservicediscovery.go deleted file mode 100644 index ec0eee3bb7..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_dnsservicediscovery.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_DnsServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.DnsServiceDiscovery) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html -type AWSAppMeshVirtualNode_DnsServiceDiscovery struct { - - // Hostname AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html#cfn-appmesh-virtualnode-dnsservicediscovery-hostname - Hostname string `json:"Hostname,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_DnsServiceDiscovery) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.DnsServiceDiscovery" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_DnsServiceDiscovery) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_DnsServiceDiscovery) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_DnsServiceDiscovery) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_DnsServiceDiscovery) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_DnsServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_DnsServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_fileaccesslog.go b/cloudformation/resources/aws-appmesh-virtualnode_fileaccesslog.go deleted file mode 100644 index 2c60fdb0d7..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_fileaccesslog.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_FileAccessLog AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.FileAccessLog) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html -type AWSAppMeshVirtualNode_FileAccessLog struct { - - // Path AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html#cfn-appmesh-virtualnode-fileaccesslog-path - Path string `json:"Path,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_FileAccessLog) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.FileAccessLog" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_FileAccessLog) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_FileAccessLog) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_FileAccessLog) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_FileAccessLog) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_FileAccessLog) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_FileAccessLog) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_listener.go b/cloudformation/resources/aws-appmesh-virtualnode_listener.go deleted file mode 100644 index 0f896fe7b0..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_listener.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_Listener AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Listener) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html -type AWSAppMeshVirtualNode_Listener struct { - - // HealthCheck AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-healthcheck - HealthCheck *AWSAppMeshVirtualNode_HealthCheck `json:"HealthCheck,omitempty"` - - // PortMapping AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-portmapping - PortMapping *AWSAppMeshVirtualNode_PortMapping `json:"PortMapping,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_Listener) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.Listener" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_Listener) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_Listener) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_Listener) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_Listener) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_Listener) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_Listener) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_logging.go b/cloudformation/resources/aws-appmesh-virtualnode_logging.go deleted file mode 100644 index 00b56bbfc5..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_logging.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_Logging AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Logging) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html -type AWSAppMeshVirtualNode_Logging struct { - - // AccessLog AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html#cfn-appmesh-virtualnode-logging-accesslog - AccessLog *AWSAppMeshVirtualNode_AccessLog `json:"AccessLog,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_Logging) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.Logging" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_Logging) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_Logging) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_Logging) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_Logging) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_Logging) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_portmapping.go b/cloudformation/resources/aws-appmesh-virtualnode_portmapping.go deleted file mode 100644 index af28db6e05..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_portmapping.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_PortMapping AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.PortMapping) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html -type AWSAppMeshVirtualNode_PortMapping struct { - - // Port AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-port - Port int `json:"Port"` - - // Protocol AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-protocol - Protocol string `json:"Protocol,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_PortMapping) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.PortMapping" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_PortMapping) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_PortMapping) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_PortMapping) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_PortMapping) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_PortMapping) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_servicediscovery.go b/cloudformation/resources/aws-appmesh-virtualnode_servicediscovery.go deleted file mode 100644 index 67bd6a824d..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_servicediscovery.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_ServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.ServiceDiscovery) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html -type AWSAppMeshVirtualNode_ServiceDiscovery struct { - - // AWSCloudMap AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-awscloudmap - AWSCloudMap *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery `json:"AWSCloudMap,omitempty"` - - // DNS AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-dns - DNS *AWSAppMeshVirtualNode_DnsServiceDiscovery `json:"DNS,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_ServiceDiscovery) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.ServiceDiscovery" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_ServiceDiscovery) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_ServiceDiscovery) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_ServiceDiscovery) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_ServiceDiscovery) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_ServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_ServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_virtualnodespec.go b/cloudformation/resources/aws-appmesh-virtualnode_virtualnodespec.go deleted file mode 100644 index df690dc48b..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_virtualnodespec.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_VirtualNodeSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.VirtualNodeSpec) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html -type AWSAppMeshVirtualNode_VirtualNodeSpec struct { - - // Backends AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-backends - Backends []AWSAppMeshVirtualNode_Backend `json:"Backends,omitempty"` - - // Listeners AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-listeners - Listeners []AWSAppMeshVirtualNode_Listener `json:"Listeners,omitempty"` - - // Logging AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-logging - Logging *AWSAppMeshVirtualNode_Logging `json:"Logging,omitempty"` - - // ServiceDiscovery AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-servicediscovery - ServiceDiscovery *AWSAppMeshVirtualNode_ServiceDiscovery `json:"ServiceDiscovery,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_VirtualNodeSpec) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.VirtualNodeSpec" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_VirtualNodeSpec) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_VirtualNodeSpec) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_VirtualNodeSpec) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_VirtualNodeSpec) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_VirtualNodeSpec) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_VirtualNodeSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualnode_virtualservicebackend.go b/cloudformation/resources/aws-appmesh-virtualnode_virtualservicebackend.go deleted file mode 100644 index 7900c51fbf..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualnode_virtualservicebackend.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualNode_VirtualServiceBackend AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.VirtualServiceBackend) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html -type AWSAppMeshVirtualNode_VirtualServiceBackend struct { - - // VirtualServiceName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html#cfn-appmesh-virtualnode-virtualservicebackend-virtualservicename - VirtualServiceName string `json:"VirtualServiceName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_VirtualServiceBackend) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualNode.VirtualServiceBackend" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_VirtualServiceBackend) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualNode_VirtualServiceBackend) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_VirtualServiceBackend) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualNode_VirtualServiceBackend) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_VirtualServiceBackend) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualNode_VirtualServiceBackend) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualrouter_portmapping.go b/cloudformation/resources/aws-appmesh-virtualrouter_portmapping.go deleted file mode 100644 index c8f57a1657..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualrouter_portmapping.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualRouter_PortMapping AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.PortMapping) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html -type AWSAppMeshVirtualRouter_PortMapping struct { - - // Port AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html#cfn-appmesh-virtualrouter-portmapping-port - Port int `json:"Port"` - - // Protocol AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html#cfn-appmesh-virtualrouter-portmapping-protocol - Protocol string `json:"Protocol,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualRouter_PortMapping) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualRouter.PortMapping" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualRouter_PortMapping) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualRouter_PortMapping) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualRouter_PortMapping) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualRouter_PortMapping) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualRouter_PortMapping) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualRouter_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterlistener.go b/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterlistener.go deleted file mode 100644 index fa7b3e4736..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterlistener.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualRouter_VirtualRouterListener AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.VirtualRouterListener) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterlistener.html -type AWSAppMeshVirtualRouter_VirtualRouterListener struct { - - // PortMapping AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterlistener.html#cfn-appmesh-virtualrouter-virtualrouterlistener-portmapping - PortMapping *AWSAppMeshVirtualRouter_PortMapping `json:"PortMapping,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualRouter_VirtualRouterListener) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualRouter.VirtualRouterListener" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterListener) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterListener) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterListener) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterListener) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterListener) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterListener) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterspec.go b/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterspec.go deleted file mode 100644 index 2f40791918..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterspec.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualRouter_VirtualRouterSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.VirtualRouterSpec) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterspec.html -type AWSAppMeshVirtualRouter_VirtualRouterSpec struct { - - // Listeners AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterspec.html#cfn-appmesh-virtualrouter-virtualrouterspec-listeners - Listeners []AWSAppMeshVirtualRouter_VirtualRouterListener `json:"Listeners,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualRouter_VirtualRouterSpec) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualRouter.VirtualRouterSpec" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterSpec) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterSpec) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterSpec) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterSpec) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterSpec) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualRouter_VirtualRouterSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualservice_virtualnodeserviceprovider.go b/cloudformation/resources/aws-appmesh-virtualservice_virtualnodeserviceprovider.go deleted file mode 100644 index d4047b6fa8..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualservice_virtualnodeserviceprovider.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualService_VirtualNodeServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualNodeServiceProvider) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualnodeserviceprovider.html -type AWSAppMeshVirtualService_VirtualNodeServiceProvider struct { - - // VirtualNodeName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualnodeserviceprovider.html#cfn-appmesh-virtualservice-virtualnodeserviceprovider-virtualnodename - VirtualNodeName string `json:"VirtualNodeName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService_VirtualNodeServiceProvider) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualService.VirtualNodeServiceProvider" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService_VirtualNodeServiceProvider) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService_VirtualNodeServiceProvider) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService_VirtualNodeServiceProvider) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService_VirtualNodeServiceProvider) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService_VirtualNodeServiceProvider) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService_VirtualNodeServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualservice_virtualrouterserviceprovider.go b/cloudformation/resources/aws-appmesh-virtualservice_virtualrouterserviceprovider.go deleted file mode 100644 index 11fcd4c821..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualservice_virtualrouterserviceprovider.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualService_VirtualRouterServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualRouterServiceProvider) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualrouterserviceprovider.html -type AWSAppMeshVirtualService_VirtualRouterServiceProvider struct { - - // VirtualRouterName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualrouterserviceprovider.html#cfn-appmesh-virtualservice-virtualrouterserviceprovider-virtualroutername - VirtualRouterName string `json:"VirtualRouterName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService_VirtualRouterServiceProvider) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualService.VirtualRouterServiceProvider" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService_VirtualRouterServiceProvider) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService_VirtualRouterServiceProvider) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService_VirtualRouterServiceProvider) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService_VirtualRouterServiceProvider) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService_VirtualRouterServiceProvider) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService_VirtualRouterServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualservice_virtualserviceprovider.go b/cloudformation/resources/aws-appmesh-virtualservice_virtualserviceprovider.go deleted file mode 100644 index 08ffda0050..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualservice_virtualserviceprovider.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualService_VirtualServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualServiceProvider) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html -type AWSAppMeshVirtualService_VirtualServiceProvider struct { - - // VirtualNode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html#cfn-appmesh-virtualservice-virtualserviceprovider-virtualnode - VirtualNode *AWSAppMeshVirtualService_VirtualNodeServiceProvider `json:"VirtualNode,omitempty"` - - // VirtualRouter AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html#cfn-appmesh-virtualservice-virtualserviceprovider-virtualrouter - VirtualRouter *AWSAppMeshVirtualService_VirtualRouterServiceProvider `json:"VirtualRouter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService_VirtualServiceProvider) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualService.VirtualServiceProvider" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService_VirtualServiceProvider) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService_VirtualServiceProvider) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService_VirtualServiceProvider) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService_VirtualServiceProvider) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService_VirtualServiceProvider) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService_VirtualServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appmesh-virtualservice_virtualservicespec.go b/cloudformation/resources/aws-appmesh-virtualservice_virtualservicespec.go deleted file mode 100644 index 3b01b8c986..0000000000 --- a/cloudformation/resources/aws-appmesh-virtualservice_virtualservicespec.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppMeshVirtualService_VirtualServiceSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualServiceSpec) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualservicespec.html -type AWSAppMeshVirtualService_VirtualServiceSpec struct { - - // Provider AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualservicespec.html#cfn-appmesh-virtualservice-virtualservicespec-provider - Provider *AWSAppMeshVirtualService_VirtualServiceProvider `json:"Provider,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService_VirtualServiceSpec) AWSCloudFormationType() string { - return "AWS::AppMesh::VirtualService.VirtualServiceSpec" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService_VirtualServiceSpec) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppMeshVirtualService_VirtualServiceSpec) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService_VirtualServiceSpec) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppMeshVirtualService_VirtualServiceSpec) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService_VirtualServiceSpec) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppMeshVirtualService_VirtualServiceSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appstream-directoryconfig_serviceaccountcredentials.go b/cloudformation/resources/aws-appstream-directoryconfig_serviceaccountcredentials.go deleted file mode 100644 index 5f3ee5d695..0000000000 --- a/cloudformation/resources/aws-appstream-directoryconfig_serviceaccountcredentials.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppStreamDirectoryConfig_ServiceAccountCredentials AWS CloudFormation Resource (AWS::AppStream::DirectoryConfig.ServiceAccountCredentials) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html -type AWSAppStreamDirectoryConfig_ServiceAccountCredentials struct { - - // AccountName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html#cfn-appstream-directoryconfig-serviceaccountcredentials-accountname - AccountName string `json:"AccountName,omitempty"` - - // AccountPassword AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html#cfn-appstream-directoryconfig-serviceaccountcredentials-accountpassword - AccountPassword string `json:"AccountPassword,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) AWSCloudFormationType() string { - return "AWS::AppStream::DirectoryConfig.ServiceAccountCredentials" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appstream-fleet_computecapacity.go b/cloudformation/resources/aws-appstream-fleet_computecapacity.go deleted file mode 100644 index 8f04d065f6..0000000000 --- a/cloudformation/resources/aws-appstream-fleet_computecapacity.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppStreamFleet_ComputeCapacity AWS CloudFormation Resource (AWS::AppStream::Fleet.ComputeCapacity) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-computecapacity.html -type AWSAppStreamFleet_ComputeCapacity struct { - - // DesiredInstances AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-computecapacity.html#cfn-appstream-fleet-computecapacity-desiredinstances - DesiredInstances int `json:"DesiredInstances"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamFleet_ComputeCapacity) AWSCloudFormationType() string { - return "AWS::AppStream::Fleet.ComputeCapacity" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamFleet_ComputeCapacity) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamFleet_ComputeCapacity) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamFleet_ComputeCapacity) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamFleet_ComputeCapacity) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamFleet_ComputeCapacity) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamFleet_ComputeCapacity) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appstream-imagebuilder_domainjoininfo.go b/cloudformation/resources/aws-appstream-imagebuilder_domainjoininfo.go deleted file mode 100644 index dc9e9891ac..0000000000 --- a/cloudformation/resources/aws-appstream-imagebuilder_domainjoininfo.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppStreamImageBuilder_DomainJoinInfo AWS CloudFormation Resource (AWS::AppStream::ImageBuilder.DomainJoinInfo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html -type AWSAppStreamImageBuilder_DomainJoinInfo struct { - - // DirectoryName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-directoryname - DirectoryName string `json:"DirectoryName,omitempty"` - - // OrganizationalUnitDistinguishedName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-organizationalunitdistinguishedname - OrganizationalUnitDistinguishedName string `json:"OrganizationalUnitDistinguishedName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamImageBuilder_DomainJoinInfo) AWSCloudFormationType() string { - return "AWS::AppStream::ImageBuilder.DomainJoinInfo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamImageBuilder_DomainJoinInfo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamImageBuilder_DomainJoinInfo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamImageBuilder_DomainJoinInfo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamImageBuilder_DomainJoinInfo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamImageBuilder_DomainJoinInfo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamImageBuilder_DomainJoinInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appstream-imagebuilder_vpcconfig.go b/cloudformation/resources/aws-appstream-imagebuilder_vpcconfig.go deleted file mode 100644 index 7f2315a031..0000000000 --- a/cloudformation/resources/aws-appstream-imagebuilder_vpcconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppStreamImageBuilder_VpcConfig AWS CloudFormation Resource (AWS::AppStream::ImageBuilder.VpcConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html -type AWSAppStreamImageBuilder_VpcConfig struct { - - // SecurityGroupIds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-securitygroupids - SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` - - // SubnetIds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-subnetids - SubnetIds []string `json:"SubnetIds,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamImageBuilder_VpcConfig) AWSCloudFormationType() string { - return "AWS::AppStream::ImageBuilder.VpcConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamImageBuilder_VpcConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamImageBuilder_VpcConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamImageBuilder_VpcConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamImageBuilder_VpcConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamImageBuilder_VpcConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamImageBuilder_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appstream-stack_applicationsettings.go b/cloudformation/resources/aws-appstream-stack_applicationsettings.go deleted file mode 100644 index 95407c974b..0000000000 --- a/cloudformation/resources/aws-appstream-stack_applicationsettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppStreamStack_ApplicationSettings AWS CloudFormation Resource (AWS::AppStream::Stack.ApplicationSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html -type AWSAppStreamStack_ApplicationSettings struct { - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html#cfn-appstream-stack-applicationsettings-enabled - Enabled bool `json:"Enabled"` - - // SettingsGroup AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html#cfn-appstream-stack-applicationsettings-settingsgroup - SettingsGroup string `json:"SettingsGroup,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamStack_ApplicationSettings) AWSCloudFormationType() string { - return "AWS::AppStream::Stack.ApplicationSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStack_ApplicationSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStack_ApplicationSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStack_ApplicationSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStack_ApplicationSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStack_ApplicationSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStack_ApplicationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appstream-stack_usersetting.go b/cloudformation/resources/aws-appstream-stack_usersetting.go deleted file mode 100644 index 901da5371d..0000000000 --- a/cloudformation/resources/aws-appstream-stack_usersetting.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppStreamStack_UserSetting AWS CloudFormation Resource (AWS::AppStream::Stack.UserSetting) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html -type AWSAppStreamStack_UserSetting struct { - - // Action AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html#cfn-appstream-stack-usersetting-action - Action string `json:"Action,omitempty"` - - // Permission AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html#cfn-appstream-stack-usersetting-permission - Permission string `json:"Permission,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamStack_UserSetting) AWSCloudFormationType() string { - return "AWS::AppStream::Stack.UserSetting" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStack_UserSetting) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppStreamStack_UserSetting) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStack_UserSetting) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppStreamStack_UserSetting) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStack_UserSetting) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppStreamStack_UserSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-datasource_authorizationconfig.go b/cloudformation/resources/aws-appsync-datasource_authorizationconfig.go deleted file mode 100644 index 99ca311258..0000000000 --- a/cloudformation/resources/aws-appsync-datasource_authorizationconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncDataSource_AuthorizationConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.AuthorizationConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html -type AWSAppSyncDataSource_AuthorizationConfig struct { - - // AuthorizationType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-authorizationtype - AuthorizationType string `json:"AuthorizationType,omitempty"` - - // AwsIamConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-awsiamconfig - AwsIamConfig *AWSAppSyncDataSource_AwsIamConfig `json:"AwsIamConfig,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_AuthorizationConfig) AWSCloudFormationType() string { - return "AWS::AppSync::DataSource.AuthorizationConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_AuthorizationConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_AuthorizationConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_AuthorizationConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_AuthorizationConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_AuthorizationConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_AuthorizationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-datasource_awsiamconfig.go b/cloudformation/resources/aws-appsync-datasource_awsiamconfig.go deleted file mode 100644 index e0e6af9aaa..0000000000 --- a/cloudformation/resources/aws-appsync-datasource_awsiamconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncDataSource_AwsIamConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.AwsIamConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html -type AWSAppSyncDataSource_AwsIamConfig struct { - - // SigningRegion AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingregion - SigningRegion string `json:"SigningRegion,omitempty"` - - // SigningServiceName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingservicename - SigningServiceName string `json:"SigningServiceName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_AwsIamConfig) AWSCloudFormationType() string { - return "AWS::AppSync::DataSource.AwsIamConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_AwsIamConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_AwsIamConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_AwsIamConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_AwsIamConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_AwsIamConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_AwsIamConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-datasource_elasticsearchconfig.go b/cloudformation/resources/aws-appsync-datasource_elasticsearchconfig.go deleted file mode 100644 index 0af5b8d2cf..0000000000 --- a/cloudformation/resources/aws-appsync-datasource_elasticsearchconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncDataSource_ElasticsearchConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.ElasticsearchConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html -type AWSAppSyncDataSource_ElasticsearchConfig struct { - - // AwsRegion AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-awsregion - AwsRegion string `json:"AwsRegion,omitempty"` - - // Endpoint AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-endpoint - Endpoint string `json:"Endpoint,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_ElasticsearchConfig) AWSCloudFormationType() string { - return "AWS::AppSync::DataSource.ElasticsearchConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_ElasticsearchConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_ElasticsearchConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_ElasticsearchConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_ElasticsearchConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_ElasticsearchConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_ElasticsearchConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-datasource_httpconfig.go b/cloudformation/resources/aws-appsync-datasource_httpconfig.go deleted file mode 100644 index ad17134ec4..0000000000 --- a/cloudformation/resources/aws-appsync-datasource_httpconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncDataSource_HttpConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.HttpConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html -type AWSAppSyncDataSource_HttpConfig struct { - - // AuthorizationConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-authorizationconfig - AuthorizationConfig *AWSAppSyncDataSource_AuthorizationConfig `json:"AuthorizationConfig,omitempty"` - - // Endpoint AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-endpoint - Endpoint string `json:"Endpoint,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_HttpConfig) AWSCloudFormationType() string { - return "AWS::AppSync::DataSource.HttpConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_HttpConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_HttpConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_HttpConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_HttpConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_HttpConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_HttpConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-datasource_lambdaconfig.go b/cloudformation/resources/aws-appsync-datasource_lambdaconfig.go deleted file mode 100644 index cf8a2d8ceb..0000000000 --- a/cloudformation/resources/aws-appsync-datasource_lambdaconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncDataSource_LambdaConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.LambdaConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html -type AWSAppSyncDataSource_LambdaConfig struct { - - // LambdaFunctionArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html#cfn-appsync-datasource-lambdaconfig-lambdafunctionarn - LambdaFunctionArn string `json:"LambdaFunctionArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_LambdaConfig) AWSCloudFormationType() string { - return "AWS::AppSync::DataSource.LambdaConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_LambdaConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_LambdaConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_LambdaConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_LambdaConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_LambdaConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_LambdaConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-datasource_relationaldatabaseconfig.go b/cloudformation/resources/aws-appsync-datasource_relationaldatabaseconfig.go deleted file mode 100644 index 465b0de17d..0000000000 --- a/cloudformation/resources/aws-appsync-datasource_relationaldatabaseconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncDataSource_RelationalDatabaseConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.RelationalDatabaseConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html -type AWSAppSyncDataSource_RelationalDatabaseConfig struct { - - // RdsHttpEndpointConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-rdshttpendpointconfig - RdsHttpEndpointConfig *AWSAppSyncDataSource_RdsHttpEndpointConfig `json:"RdsHttpEndpointConfig,omitempty"` - - // RelationalDatabaseSourceType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-relationaldatabasesourcetype - RelationalDatabaseSourceType string `json:"RelationalDatabaseSourceType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_RelationalDatabaseConfig) AWSCloudFormationType() string { - return "AWS::AppSync::DataSource.RelationalDatabaseConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_RelationalDatabaseConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncDataSource_RelationalDatabaseConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_RelationalDatabaseConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncDataSource_RelationalDatabaseConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_RelationalDatabaseConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncDataSource_RelationalDatabaseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationprovider.go b/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationprovider.go deleted file mode 100644 index 278e186f59..0000000000 --- a/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationprovider.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.AdditionalAuthenticationProvider) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html -type AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider struct { - - // AuthenticationType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-authenticationtype - AuthenticationType string `json:"AuthenticationType,omitempty"` - - // OpenIDConnectConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-openidconnectconfig - OpenIDConnectConfig *AWSAppSyncGraphQLApi_OpenIDConnectConfig `json:"OpenIDConnectConfig,omitempty"` - - // UserPoolConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-userpoolconfig - UserPoolConfig *AWSAppSyncGraphQLApi_CognitoUserPoolConfig `json:"UserPoolConfig,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) AWSCloudFormationType() string { - return "AWS::AppSync::GraphQLApi.AdditionalAuthenticationProvider" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationproviders.go b/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationproviders.go deleted file mode 100644 index bd09a26ec0..0000000000 --- a/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationproviders.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.AdditionalAuthenticationProviders) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationproviders.html -type AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) AWSCloudFormationType() string { - return "AWS::AppSync::GraphQLApi.AdditionalAuthenticationProviders" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-graphqlapi_tags.go b/cloudformation/resources/aws-appsync-graphqlapi_tags.go deleted file mode 100644 index bac00aa3f6..0000000000 --- a/cloudformation/resources/aws-appsync-graphqlapi_tags.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncGraphQLApi_Tags AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.Tags) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-tags.html -type AWSAppSyncGraphQLApi_Tags struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_Tags) AWSCloudFormationType() string { - return "AWS::AppSync::GraphQLApi.Tags" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_Tags) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncGraphQLApi_Tags) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_Tags) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncGraphQLApi_Tags) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_Tags) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncGraphQLApi_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-appsync-resolver_pipelineconfig.go b/cloudformation/resources/aws-appsync-resolver_pipelineconfig.go deleted file mode 100644 index 237018c8c2..0000000000 --- a/cloudformation/resources/aws-appsync-resolver_pipelineconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAppSyncResolver_PipelineConfig AWS CloudFormation Resource (AWS::AppSync::Resolver.PipelineConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-pipelineconfig.html -type AWSAppSyncResolver_PipelineConfig struct { - - // Functions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-pipelineconfig.html#cfn-appsync-resolver-pipelineconfig-functions - Functions []string `json:"Functions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncResolver_PipelineConfig) AWSCloudFormationType() string { - return "AWS::AppSync::Resolver.PipelineConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncResolver_PipelineConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAppSyncResolver_PipelineConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncResolver_PipelineConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAppSyncResolver_PipelineConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncResolver_PipelineConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAppSyncResolver_PipelineConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplate.go b/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplate.go deleted file mode 100644 index 603cfb24db..0000000000 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplate.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingAutoScalingGroup_LaunchTemplate AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplate) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html -type AWSAutoScalingAutoScalingGroup_LaunchTemplate struct { - - // LaunchTemplateSpecification AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html#cfn-as-group-launchtemplate - LaunchTemplateSpecification *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification `json:"LaunchTemplateSpecification,omitempty"` - - // Overrides AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html#cfn-as-mixedinstancespolicy-overrides - Overrides []AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides `json:"Overrides,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplate) AWSCloudFormationType() string { - return "AWS::AutoScaling::AutoScalingGroup.LaunchTemplate" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplate) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplate) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplate) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplate) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplate) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go b/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go deleted file mode 100644 index 539ad7e767..0000000000 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplateOverrides) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html -type AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides struct { - - // InstanceType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html#cfn-autoscaling-autoscalinggroup-launchtemplateoverrides-instancetype - InstanceType string `json:"InstanceType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) AWSCloudFormationType() string { - return "AWS::AutoScaling::AutoScalingGroup.LaunchTemplateOverrides" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go b/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go deleted file mode 100644 index 10dddc6852..0000000000 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplateSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html -type AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification struct { - - // LaunchTemplateId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-launchtemplateid - LaunchTemplateId string `json:"LaunchTemplateId,omitempty"` - - // LaunchTemplateName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-launchtemplatename - LaunchTemplateName string `json:"LaunchTemplateName,omitempty"` - - // Version AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) AWSCloudFormationType() string { - return "AWS::AutoScaling::AutoScalingGroup.LaunchTemplateSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_metricscollection.go b/cloudformation/resources/aws-autoscaling-autoscalinggroup_metricscollection.go deleted file mode 100644 index efe42fda5f..0000000000 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_metricscollection.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingAutoScalingGroup_MetricsCollection AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.MetricsCollection) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html -type AWSAutoScalingAutoScalingGroup_MetricsCollection struct { - - // Granularity AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-granularity - Granularity string `json:"Granularity,omitempty"` - - // Metrics AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-metrics - Metrics []string `json:"Metrics,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_MetricsCollection) AWSCloudFormationType() string { - return "AWS::AutoScaling::AutoScalingGroup.MetricsCollection" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_MetricsCollection) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_MetricsCollection) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_MetricsCollection) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_MetricsCollection) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_MetricsCollection) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_MetricsCollection) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go b/cloudformation/resources/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go deleted file mode 100644 index cf4de1bea8..0000000000 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.MixedInstancesPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html -type AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy struct { - - // InstancesDistribution AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html#cfn-as-mixedinstancespolicy-instancesdistribution - InstancesDistribution *AWSAutoScalingAutoScalingGroup_InstancesDistribution `json:"InstancesDistribution,omitempty"` - - // LaunchTemplate AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html#cfn-as-mixedinstancespolicy-launchtemplate - LaunchTemplate *AWSAutoScalingAutoScalingGroup_LaunchTemplate `json:"LaunchTemplate,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) AWSCloudFormationType() string { - return "AWS::AutoScaling::AutoScalingGroup.MixedInstancesPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_notificationconfiguration.go b/cloudformation/resources/aws-autoscaling-autoscalinggroup_notificationconfiguration.go deleted file mode 100644 index 4c8c968dc6..0000000000 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_notificationconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingAutoScalingGroup_NotificationConfiguration AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.NotificationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html -type AWSAutoScalingAutoScalingGroup_NotificationConfiguration struct { - - // NotificationTypes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-as-group-notificationconfigurations-notificationtypes - NotificationTypes []string `json:"NotificationTypes,omitempty"` - - // TopicARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-autoscaling-autoscalinggroup-notificationconfigurations-topicarn - TopicARN string `json:"TopicARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) AWSCloudFormationType() string { - return "AWS::AutoScaling::AutoScalingGroup.NotificationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_tagproperty.go b/cloudformation/resources/aws-autoscaling-autoscalinggroup_tagproperty.go deleted file mode 100644 index 78e01a7aff..0000000000 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_tagproperty.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingAutoScalingGroup_TagProperty AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.TagProperty) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html -type AWSAutoScalingAutoScalingGroup_TagProperty struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Key - Key string `json:"Key,omitempty"` - - // PropagateAtLaunch AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-PropagateAtLaunch - PropagateAtLaunch bool `json:"PropagateAtLaunch"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_TagProperty) AWSCloudFormationType() string { - return "AWS::AutoScaling::AutoScalingGroup.TagProperty" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_TagProperty) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingAutoScalingGroup_TagProperty) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_TagProperty) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingAutoScalingGroup_TagProperty) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_TagProperty) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingAutoScalingGroup_TagProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-launchconfiguration_blockdevicemapping.go b/cloudformation/resources/aws-autoscaling-launchconfiguration_blockdevicemapping.go deleted file mode 100644 index fabe095b18..0000000000 --- a/cloudformation/resources/aws-autoscaling-launchconfiguration_blockdevicemapping.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingLaunchConfiguration_BlockDeviceMapping AWS CloudFormation Resource (AWS::AutoScaling::LaunchConfiguration.BlockDeviceMapping) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html -type AWSAutoScalingLaunchConfiguration_BlockDeviceMapping struct { - - // DeviceName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-devicename - DeviceName string `json:"DeviceName,omitempty"` - - // Ebs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-ebs - Ebs *AWSAutoScalingLaunchConfiguration_BlockDevice `json:"Ebs,omitempty"` - - // NoDevice AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-nodevice - NoDevice bool `json:"NoDevice,omitempty"` - - // VirtualName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-virtualname - VirtualName string `json:"VirtualName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) AWSCloudFormationType() string { - return "AWS::AutoScaling::LaunchConfiguration.BlockDeviceMapping" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-scalingpolicy_customizedmetricspecification.go b/cloudformation/resources/aws-autoscaling-scalingpolicy_customizedmetricspecification.go deleted file mode 100644 index 76318193b0..0000000000 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_customizedmetricspecification.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingScalingPolicy_CustomizedMetricSpecification AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html -type AWSAutoScalingScalingPolicy_CustomizedMetricSpecification struct { - - // Dimensions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-dimensions - Dimensions []AWSAutoScalingScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` - - // MetricName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-metricname - MetricName string `json:"MetricName,omitempty"` - - // Namespace AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-namespace - Namespace string `json:"Namespace,omitempty"` - - // Statistic AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-statistic - Statistic string `json:"Statistic,omitempty"` - - // Unit AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-unit - Unit string `json:"Unit,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) AWSCloudFormationType() string { - return "AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-scalingpolicy_metricdimension.go b/cloudformation/resources/aws-autoscaling-scalingpolicy_metricdimension.go deleted file mode 100644 index 5fefa2f7ed..0000000000 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_metricdimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingScalingPolicy_MetricDimension AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.MetricDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html -type AWSAutoScalingScalingPolicy_MetricDimension struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html#cfn-autoscaling-scalingpolicy-metricdimension-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html#cfn-autoscaling-scalingpolicy-metricdimension-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_MetricDimension) AWSCloudFormationType() string { - return "AWS::AutoScaling::ScalingPolicy.MetricDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_MetricDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_MetricDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_MetricDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_MetricDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_MetricDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go b/cloudformation/resources/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go deleted file mode 100644 index ffbea063df..0000000000 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingScalingPolicy_PredefinedMetricSpecification AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html -type AWSAutoScalingScalingPolicy_PredefinedMetricSpecification struct { - - // PredefinedMetricType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-autoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype - PredefinedMetricType string `json:"PredefinedMetricType,omitempty"` - - // ResourceLabel AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-autoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel - ResourceLabel string `json:"ResourceLabel,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) AWSCloudFormationType() string { - return "AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go b/cloudformation/resources/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go deleted file mode 100644 index 6556f2ce58..0000000000 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingScalingPolicy_TargetTrackingConfiguration AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.TargetTrackingConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html -type AWSAutoScalingScalingPolicy_TargetTrackingConfiguration struct { - - // CustomizedMetricSpecification AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-customizedmetricspecification - CustomizedMetricSpecification *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification `json:"CustomizedMetricSpecification,omitempty"` - - // DisableScaleIn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-disablescalein - DisableScaleIn bool `json:"DisableScaleIn,omitempty"` - - // PredefinedMetricSpecification AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-predefinedmetricspecification - PredefinedMetricSpecification *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification `json:"PredefinedMetricSpecification,omitempty"` - - // TargetValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-targetvalue - TargetValue float64 `json:"TargetValue"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) AWSCloudFormationType() string { - return "AWS::AutoScaling::ScalingPolicy.TargetTrackingConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan.go b/cloudformation/resources/aws-autoscalingplans-scalingplan.go deleted file mode 100644 index 5e6bf2ab59..0000000000 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSAutoScalingPlansScalingPlan AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html -type AWSAutoScalingPlansScalingPlan struct { - - // ApplicationSource AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html#cfn-autoscalingplans-scalingplan-applicationsource - ApplicationSource *AWSAutoScalingPlansScalingPlan_ApplicationSource `json:"ApplicationSource,omitempty"` - - // ScalingInstructions AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html#cfn-autoscalingplans-scalingplan-scalinginstructions - ScalingInstructions []AWSAutoScalingPlansScalingPlan_ScalingInstruction `json:"ScalingInstructions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan) AWSCloudFormationType() string { - return "AWS::AutoScalingPlans::ScalingPlan" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSAutoScalingPlansScalingPlan) MarshalJSON() ([]byte, error) { - type Properties AWSAutoScalingPlansScalingPlan - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSAutoScalingPlansScalingPlan) UnmarshalJSON(b []byte) error { - type Properties AWSAutoScalingPlansScalingPlan - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSAutoScalingPlansScalingPlan(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_applicationsource.go b/cloudformation/resources/aws-autoscalingplans-scalingplan_applicationsource.go deleted file mode 100644 index e9843eb22c..0000000000 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_applicationsource.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingPlansScalingPlan_ApplicationSource AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.ApplicationSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html -type AWSAutoScalingPlansScalingPlan_ApplicationSource struct { - - // CloudFormationStackARN AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html#cfn-autoscalingplans-scalingplan-applicationsource-cloudformationstackarn - CloudFormationStackARN string `json:"CloudFormationStackARN,omitempty"` - - // TagFilters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html#cfn-autoscalingplans-scalingplan-applicationsource-tagfilters - TagFilters []AWSAutoScalingPlansScalingPlan_TagFilter `json:"TagFilters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_ApplicationSource) AWSCloudFormationType() string { - return "AWS::AutoScalingPlans::ScalingPlan.ApplicationSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_ApplicationSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_ApplicationSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_ApplicationSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_ApplicationSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_ApplicationSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_ApplicationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go b/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go deleted file mode 100644 index 2722ab4974..0000000000 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.CustomizedLoadMetricSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html -type AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification struct { - - // Dimensions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-dimensions - Dimensions []AWSAutoScalingPlansScalingPlan_MetricDimension `json:"Dimensions,omitempty"` - - // MetricName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-metricname - MetricName string `json:"MetricName,omitempty"` - - // Namespace AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-namespace - Namespace string `json:"Namespace,omitempty"` - - // Statistic AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-statistic - Statistic string `json:"Statistic,omitempty"` - - // Unit AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-unit - Unit string `json:"Unit,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) AWSCloudFormationType() string { - return "AWS::AutoScalingPlans::ScalingPlan.CustomizedLoadMetricSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go b/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go deleted file mode 100644 index 10e5dade27..0000000000 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.CustomizedScalingMetricSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html -type AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification struct { - - // Dimensions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-dimensions - Dimensions []AWSAutoScalingPlansScalingPlan_MetricDimension `json:"Dimensions,omitempty"` - - // MetricName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-metricname - MetricName string `json:"MetricName,omitempty"` - - // Namespace AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-namespace - Namespace string `json:"Namespace,omitempty"` - - // Statistic AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-statistic - Statistic string `json:"Statistic,omitempty"` - - // Unit AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-unit - Unit string `json:"Unit,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) AWSCloudFormationType() string { - return "AWS::AutoScalingPlans::ScalingPlan.CustomizedScalingMetricSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_metricdimension.go b/cloudformation/resources/aws-autoscalingplans-scalingplan_metricdimension.go deleted file mode 100644 index a5e890de78..0000000000 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_metricdimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingPlansScalingPlan_MetricDimension AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.MetricDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html -type AWSAutoScalingPlansScalingPlan_MetricDimension struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html#cfn-autoscalingplans-scalingplan-metricdimension-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html#cfn-autoscalingplans-scalingplan-metricdimension-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_MetricDimension) AWSCloudFormationType() string { - return "AWS::AutoScalingPlans::ScalingPlan.MetricDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_MetricDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_MetricDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_MetricDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_MetricDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_MetricDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go b/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go deleted file mode 100644 index 9e227da2b6..0000000000 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.PredefinedLoadMetricSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html -type AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification struct { - - // PredefinedLoadMetricType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedloadmetricspecification-predefinedloadmetrictype - PredefinedLoadMetricType string `json:"PredefinedLoadMetricType,omitempty"` - - // ResourceLabel AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedloadmetricspecification-resourcelabel - ResourceLabel string `json:"ResourceLabel,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) AWSCloudFormationType() string { - return "AWS::AutoScalingPlans::ScalingPlan.PredefinedLoadMetricSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go b/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go deleted file mode 100644 index 7af29cdf83..0000000000 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.PredefinedScalingMetricSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html -type AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification struct { - - // PredefinedScalingMetricType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedscalingmetricspecification-predefinedscalingmetrictype - PredefinedScalingMetricType string `json:"PredefinedScalingMetricType,omitempty"` - - // ResourceLabel AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedscalingmetricspecification-resourcelabel - ResourceLabel string `json:"ResourceLabel,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) AWSCloudFormationType() string { - return "AWS::AutoScalingPlans::ScalingPlan.PredefinedScalingMetricSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_tagfilter.go b/cloudformation/resources/aws-autoscalingplans-scalingplan_tagfilter.go deleted file mode 100644 index e588593d6d..0000000000 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_tagfilter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSAutoScalingPlansScalingPlan_TagFilter AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.TagFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html -type AWSAutoScalingPlansScalingPlan_TagFilter struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html#cfn-autoscalingplans-scalingplan-tagfilter-key - Key string `json:"Key,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html#cfn-autoscalingplans-scalingplan-tagfilter-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_TagFilter) AWSCloudFormationType() string { - return "AWS::AutoScalingPlans::ScalingPlan.TagFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_TagFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSAutoScalingPlansScalingPlan_TagFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_TagFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSAutoScalingPlansScalingPlan_TagFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_TagFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSAutoScalingPlansScalingPlan_TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-backup-backupplan_backupplanresourcetype.go b/cloudformation/resources/aws-backup-backupplan_backupplanresourcetype.go deleted file mode 100644 index 3c48b52b45..0000000000 --- a/cloudformation/resources/aws-backup-backupplan_backupplanresourcetype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBackupBackupPlan_BackupPlanResourceType AWS CloudFormation Resource (AWS::Backup::BackupPlan.BackupPlanResourceType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html -type AWSBackupBackupPlan_BackupPlanResourceType struct { - - // BackupPlanName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-backupplanname - BackupPlanName string `json:"BackupPlanName,omitempty"` - - // BackupPlanRule AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-backupplanrule - BackupPlanRule []AWSBackupBackupPlan_BackupRuleResourceType `json:"BackupPlanRule,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupPlan_BackupPlanResourceType) AWSCloudFormationType() string { - return "AWS::Backup::BackupPlan.BackupPlanResourceType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupPlan_BackupPlanResourceType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupPlan_BackupPlanResourceType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupPlan_BackupPlanResourceType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupPlan_BackupPlanResourceType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupPlan_BackupPlanResourceType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupPlan_BackupPlanResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-backup-backupplan_lifecycleresourcetype.go b/cloudformation/resources/aws-backup-backupplan_lifecycleresourcetype.go deleted file mode 100644 index 9be710e501..0000000000 --- a/cloudformation/resources/aws-backup-backupplan_lifecycleresourcetype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBackupBackupPlan_LifecycleResourceType AWS CloudFormation Resource (AWS::Backup::BackupPlan.LifecycleResourceType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html -type AWSBackupBackupPlan_LifecycleResourceType struct { - - // DeleteAfterDays AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html#cfn-backup-backupplan-lifecycleresourcetype-deleteafterdays - DeleteAfterDays float64 `json:"DeleteAfterDays,omitempty"` - - // MoveToColdStorageAfterDays AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html#cfn-backup-backupplan-lifecycleresourcetype-movetocoldstorageafterdays - MoveToColdStorageAfterDays float64 `json:"MoveToColdStorageAfterDays,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupPlan_LifecycleResourceType) AWSCloudFormationType() string { - return "AWS::Backup::BackupPlan.LifecycleResourceType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupPlan_LifecycleResourceType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupPlan_LifecycleResourceType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupPlan_LifecycleResourceType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupPlan_LifecycleResourceType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupPlan_LifecycleResourceType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupPlan_LifecycleResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-backup-backupselection_backupselectionresourcetype.go b/cloudformation/resources/aws-backup-backupselection_backupselectionresourcetype.go deleted file mode 100644 index 8d537e3f75..0000000000 --- a/cloudformation/resources/aws-backup-backupselection_backupselectionresourcetype.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBackupBackupSelection_BackupSelectionResourceType AWS CloudFormation Resource (AWS::Backup::BackupSelection.BackupSelectionResourceType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html -type AWSBackupBackupSelection_BackupSelectionResourceType struct { - - // IamRoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-iamrolearn - IamRoleArn string `json:"IamRoleArn,omitempty"` - - // ListOfTags AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-listoftags - ListOfTags []AWSBackupBackupSelection_ConditionResourceType `json:"ListOfTags,omitempty"` - - // Resources AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-resources - Resources []string `json:"Resources,omitempty"` - - // SelectionName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-selectionname - SelectionName string `json:"SelectionName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupSelection_BackupSelectionResourceType) AWSCloudFormationType() string { - return "AWS::Backup::BackupSelection.BackupSelectionResourceType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupSelection_BackupSelectionResourceType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupSelection_BackupSelectionResourceType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupSelection_BackupSelectionResourceType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupSelection_BackupSelectionResourceType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupSelection_BackupSelectionResourceType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupSelection_BackupSelectionResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-backup-backupselection_conditionresourcetype.go b/cloudformation/resources/aws-backup-backupselection_conditionresourcetype.go deleted file mode 100644 index aa1961f5b4..0000000000 --- a/cloudformation/resources/aws-backup-backupselection_conditionresourcetype.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBackupBackupSelection_ConditionResourceType AWS CloudFormation Resource (AWS::Backup::BackupSelection.ConditionResourceType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html -type AWSBackupBackupSelection_ConditionResourceType struct { - - // ConditionKey AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditionkey - ConditionKey string `json:"ConditionKey,omitempty"` - - // ConditionType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditiontype - ConditionType string `json:"ConditionType,omitempty"` - - // ConditionValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditionvalue - ConditionValue string `json:"ConditionValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupSelection_ConditionResourceType) AWSCloudFormationType() string { - return "AWS::Backup::BackupSelection.ConditionResourceType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupSelection_ConditionResourceType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupSelection_ConditionResourceType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupSelection_ConditionResourceType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupSelection_ConditionResourceType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupSelection_ConditionResourceType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupSelection_ConditionResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-backup-backupvault_notificationobjecttype.go b/cloudformation/resources/aws-backup-backupvault_notificationobjecttype.go deleted file mode 100644 index 34eb38f2fc..0000000000 --- a/cloudformation/resources/aws-backup-backupvault_notificationobjecttype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBackupBackupVault_NotificationObjectType AWS CloudFormation Resource (AWS::Backup::BackupVault.NotificationObjectType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html -type AWSBackupBackupVault_NotificationObjectType struct { - - // BackupVaultEvents AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html#cfn-backup-backupvault-notificationobjecttype-backupvaultevents - BackupVaultEvents []string `json:"BackupVaultEvents,omitempty"` - - // SNSTopicArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html#cfn-backup-backupvault-notificationobjecttype-snstopicarn - SNSTopicArn string `json:"SNSTopicArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupVault_NotificationObjectType) AWSCloudFormationType() string { - return "AWS::Backup::BackupVault.NotificationObjectType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupVault_NotificationObjectType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBackupBackupVault_NotificationObjectType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupVault_NotificationObjectType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBackupBackupVault_NotificationObjectType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupVault_NotificationObjectType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBackupBackupVault_NotificationObjectType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-computeenvironment_launchtemplatespecification.go b/cloudformation/resources/aws-batch-computeenvironment_launchtemplatespecification.go deleted file mode 100644 index 9797954eb3..0000000000 --- a/cloudformation/resources/aws-batch-computeenvironment_launchtemplatespecification.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchComputeEnvironment_LaunchTemplateSpecification AWS CloudFormation Resource (AWS::Batch::ComputeEnvironment.LaunchTemplateSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html -type AWSBatchComputeEnvironment_LaunchTemplateSpecification struct { - - // LaunchTemplateId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-launchtemplateid - LaunchTemplateId string `json:"LaunchTemplateId,omitempty"` - - // LaunchTemplateName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-launchtemplatename - LaunchTemplateName string `json:"LaunchTemplateName,omitempty"` - - // Version AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchComputeEnvironment_LaunchTemplateSpecification) AWSCloudFormationType() string { - return "AWS::Batch::ComputeEnvironment.LaunchTemplateSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchComputeEnvironment_LaunchTemplateSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchComputeEnvironment_LaunchTemplateSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchComputeEnvironment_LaunchTemplateSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchComputeEnvironment_LaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchComputeEnvironment_LaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchComputeEnvironment_LaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_environment.go b/cloudformation/resources/aws-batch-jobdefinition_environment.go deleted file mode 100644 index 713ba296a4..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_environment.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_Environment AWS CloudFormation Resource (AWS::Batch::JobDefinition.Environment) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html -type AWSBatchJobDefinition_Environment struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html#cfn-batch-jobdefinition-environment-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html#cfn-batch-jobdefinition-environment-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_Environment) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.Environment" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Environment) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Environment) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Environment) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Environment) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Environment) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_linuxparameters.go b/cloudformation/resources/aws-batch-jobdefinition_linuxparameters.go deleted file mode 100644 index 96f255107d..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_linuxparameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_LinuxParameters AWS CloudFormation Resource (AWS::Batch::JobDefinition.LinuxParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html -type AWSBatchJobDefinition_LinuxParameters struct { - - // Devices AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-devices - Devices []AWSBatchJobDefinition_Device `json:"Devices,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_LinuxParameters) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.LinuxParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_LinuxParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_LinuxParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_LinuxParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_LinuxParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_LinuxParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_LinuxParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_nodeproperties.go b/cloudformation/resources/aws-batch-jobdefinition_nodeproperties.go deleted file mode 100644 index cde843ec7d..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_nodeproperties.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_NodeProperties AWS CloudFormation Resource (AWS::Batch::JobDefinition.NodeProperties) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html -type AWSBatchJobDefinition_NodeProperties struct { - - // MainNode AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-mainnode - MainNode int `json:"MainNode"` - - // NodeRangeProperties AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-noderangeproperties - NodeRangeProperties []AWSBatchJobDefinition_NodeRangeProperty `json:"NodeRangeProperties,omitempty"` - - // NumNodes AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-numnodes - NumNodes int `json:"NumNodes"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_NodeProperties) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.NodeProperties" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_NodeProperties) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_NodeProperties) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_NodeProperties) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_NodeProperties) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_NodeProperties) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_NodeProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_noderangeproperty.go b/cloudformation/resources/aws-batch-jobdefinition_noderangeproperty.go deleted file mode 100644 index 48a228037d..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_noderangeproperty.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_NodeRangeProperty AWS CloudFormation Resource (AWS::Batch::JobDefinition.NodeRangeProperty) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html -type AWSBatchJobDefinition_NodeRangeProperty struct { - - // Container AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-container - Container *AWSBatchJobDefinition_ContainerProperties `json:"Container,omitempty"` - - // TargetNodes AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-targetnodes - TargetNodes string `json:"TargetNodes,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_NodeRangeProperty) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.NodeRangeProperty" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_NodeRangeProperty) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_NodeRangeProperty) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_NodeRangeProperty) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_NodeRangeProperty) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_NodeRangeProperty) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_NodeRangeProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_resourcerequirement.go b/cloudformation/resources/aws-batch-jobdefinition_resourcerequirement.go deleted file mode 100644 index 1d2d81455b..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_resourcerequirement.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_ResourceRequirement AWS CloudFormation Resource (AWS::Batch::JobDefinition.ResourceRequirement) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html -type AWSBatchJobDefinition_ResourceRequirement struct { - - // Type AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html#cfn-batch-jobdefinition-resourcerequirement-type - Type string `json:"Type,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html#cfn-batch-jobdefinition-resourcerequirement-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_ResourceRequirement) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.ResourceRequirement" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_ResourceRequirement) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_ResourceRequirement) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_ResourceRequirement) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_ResourceRequirement) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_ResourceRequirement) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_ResourceRequirement) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_retrystrategy.go b/cloudformation/resources/aws-batch-jobdefinition_retrystrategy.go deleted file mode 100644 index 9892cf273a..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_retrystrategy.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_RetryStrategy AWS CloudFormation Resource (AWS::Batch::JobDefinition.RetryStrategy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html -type AWSBatchJobDefinition_RetryStrategy struct { - - // Attempts AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html#cfn-batch-jobdefinition-retrystrategy-attempts - Attempts int `json:"Attempts,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_RetryStrategy) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.RetryStrategy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_RetryStrategy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_RetryStrategy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_RetryStrategy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_RetryStrategy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_RetryStrategy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_RetryStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_timeout.go b/cloudformation/resources/aws-batch-jobdefinition_timeout.go deleted file mode 100644 index 8a6862170a..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_timeout.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_Timeout AWS CloudFormation Resource (AWS::Batch::JobDefinition.Timeout) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html -type AWSBatchJobDefinition_Timeout struct { - - // AttemptDurationSeconds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html#cfn-batch-jobdefinition-timeout-attemptdurationseconds - AttemptDurationSeconds int `json:"AttemptDurationSeconds,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_Timeout) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.Timeout" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Timeout) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Timeout) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Timeout) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Timeout) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Timeout) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Timeout) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_volumes.go b/cloudformation/resources/aws-batch-jobdefinition_volumes.go deleted file mode 100644 index 13a11072eb..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_volumes.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_Volumes AWS CloudFormation Resource (AWS::Batch::JobDefinition.Volumes) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html -type AWSBatchJobDefinition_Volumes struct { - - // Host AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html#cfn-batch-jobdefinition-volumes-host - Host *AWSBatchJobDefinition_VolumesHost `json:"Host,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html#cfn-batch-jobdefinition-volumes-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_Volumes) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.Volumes" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Volumes) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_Volumes) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Volumes) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_Volumes) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Volumes) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_Volumes) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobdefinition_volumeshost.go b/cloudformation/resources/aws-batch-jobdefinition_volumeshost.go deleted file mode 100644 index 85fba32d27..0000000000 --- a/cloudformation/resources/aws-batch-jobdefinition_volumeshost.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobDefinition_VolumesHost AWS CloudFormation Resource (AWS::Batch::JobDefinition.VolumesHost) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html -type AWSBatchJobDefinition_VolumesHost struct { - - // SourcePath AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html#cfn-batch-jobdefinition-volumeshost-sourcepath - SourcePath string `json:"SourcePath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_VolumesHost) AWSCloudFormationType() string { - return "AWS::Batch::JobDefinition.VolumesHost" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_VolumesHost) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobDefinition_VolumesHost) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_VolumesHost) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobDefinition_VolumesHost) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_VolumesHost) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobDefinition_VolumesHost) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-batch-jobqueue_computeenvironmentorder.go b/cloudformation/resources/aws-batch-jobqueue_computeenvironmentorder.go deleted file mode 100644 index b765612a87..0000000000 --- a/cloudformation/resources/aws-batch-jobqueue_computeenvironmentorder.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBatchJobQueue_ComputeEnvironmentOrder AWS CloudFormation Resource (AWS::Batch::JobQueue.ComputeEnvironmentOrder) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html -type AWSBatchJobQueue_ComputeEnvironmentOrder struct { - - // ComputeEnvironment AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html#cfn-batch-jobqueue-computeenvironmentorder-computeenvironment - ComputeEnvironment string `json:"ComputeEnvironment,omitempty"` - - // Order AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html#cfn-batch-jobqueue-computeenvironmentorder-order - Order int `json:"Order"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobQueue_ComputeEnvironmentOrder) AWSCloudFormationType() string { - return "AWS::Batch::JobQueue.ComputeEnvironmentOrder" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobQueue_ComputeEnvironmentOrder) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBatchJobQueue_ComputeEnvironmentOrder) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobQueue_ComputeEnvironmentOrder) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBatchJobQueue_ComputeEnvironmentOrder) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobQueue_ComputeEnvironmentOrder) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBatchJobQueue_ComputeEnvironmentOrder) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-budgets-budget_notificationwithsubscribers.go b/cloudformation/resources/aws-budgets-budget_notificationwithsubscribers.go deleted file mode 100644 index b553d2d496..0000000000 --- a/cloudformation/resources/aws-budgets-budget_notificationwithsubscribers.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSBudgetsBudget_NotificationWithSubscribers AWS CloudFormation Resource (AWS::Budgets::Budget.NotificationWithSubscribers) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html -type AWSBudgetsBudget_NotificationWithSubscribers struct { - - // Notification AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-notification - Notification *AWSBudgetsBudget_Notification `json:"Notification,omitempty"` - - // Subscribers AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-subscribers - Subscribers []AWSBudgetsBudget_Subscriber `json:"Subscribers,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget_NotificationWithSubscribers) AWSCloudFormationType() string { - return "AWS::Budgets::Budget.NotificationWithSubscribers" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_NotificationWithSubscribers) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSBudgetsBudget_NotificationWithSubscribers) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_NotificationWithSubscribers) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSBudgetsBudget_NotificationWithSubscribers) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_NotificationWithSubscribers) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSBudgetsBudget_NotificationWithSubscribers) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-certificatemanager-certificate_domainvalidationoption.go b/cloudformation/resources/aws-certificatemanager-certificate_domainvalidationoption.go deleted file mode 100644 index 087455d4b0..0000000000 --- a/cloudformation/resources/aws-certificatemanager-certificate_domainvalidationoption.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCertificateManagerCertificate_DomainValidationOption AWS CloudFormation Resource (AWS::CertificateManager::Certificate.DomainValidationOption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html -type AWSCertificateManagerCertificate_DomainValidationOption struct { - - // DomainName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoptions-domainname - DomainName string `json:"DomainName,omitempty"` - - // ValidationDomain AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoption-validationdomain - ValidationDomain string `json:"ValidationDomain,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCertificateManagerCertificate_DomainValidationOption) AWSCloudFormationType() string { - return "AWS::CertificateManager::Certificate.DomainValidationOption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCertificateManagerCertificate_DomainValidationOption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCertificateManagerCertificate_DomainValidationOption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCertificateManagerCertificate_DomainValidationOption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCertificateManagerCertificate_DomainValidationOption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCertificateManagerCertificate_DomainValidationOption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCertificateManagerCertificate_DomainValidationOption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloud9-environmentec2_repository.go b/cloudformation/resources/aws-cloud9-environmentec2_repository.go deleted file mode 100644 index 9984563a7a..0000000000 --- a/cloudformation/resources/aws-cloud9-environmentec2_repository.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloud9EnvironmentEC2_Repository AWS CloudFormation Resource (AWS::Cloud9::EnvironmentEC2.Repository) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html -type AWSCloud9EnvironmentEC2_Repository struct { - - // PathComponent AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html#cfn-cloud9-environmentec2-repository-pathcomponent - PathComponent string `json:"PathComponent,omitempty"` - - // RepositoryUrl AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html#cfn-cloud9-environmentec2-repository-repositoryurl - RepositoryUrl string `json:"RepositoryUrl,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloud9EnvironmentEC2_Repository) AWSCloudFormationType() string { - return "AWS::Cloud9::EnvironmentEC2.Repository" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloud9EnvironmentEC2_Repository) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloud9EnvironmentEC2_Repository) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloud9EnvironmentEC2_Repository) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloud9EnvironmentEC2_Repository) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloud9EnvironmentEC2_Repository) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloud9EnvironmentEC2_Repository) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudformation-waitconditionhandle.go b/cloudformation/resources/aws-cloudformation-waitconditionhandle.go deleted file mode 100644 index d76eb283df..0000000000 --- a/cloudformation/resources/aws-cloudformation-waitconditionhandle.go +++ /dev/null @@ -1,118 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSCloudFormationWaitConditionHandle AWS CloudFormation Resource (AWS::CloudFormation::WaitConditionHandle) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html -type AWSCloudFormationWaitConditionHandle struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFormationWaitConditionHandle) AWSCloudFormationType() string { - return "AWS::CloudFormation::WaitConditionHandle" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationWaitConditionHandle) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFormationWaitConditionHandle) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationWaitConditionHandle) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFormationWaitConditionHandle) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationWaitConditionHandle) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFormationWaitConditionHandle) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudFormationWaitConditionHandle) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFormationWaitConditionHandle - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudFormationWaitConditionHandle) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFormationWaitConditionHandle - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSCloudFormationWaitConditionHandle(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity.go b/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity.go deleted file mode 100644 index 84fd5c332b..0000000000 --- a/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity.go +++ /dev/null @@ -1,123 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSCloudFrontCloudFrontOriginAccessIdentity AWS CloudFormation Resource (AWS::CloudFront::CloudFrontOriginAccessIdentity) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html -type AWSCloudFrontCloudFrontOriginAccessIdentity struct { - - // CloudFrontOriginAccessIdentityConfig AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig - CloudFrontOriginAccessIdentityConfig *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig `json:"CloudFrontOriginAccessIdentityConfig,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) AWSCloudFormationType() string { - return "AWS::CloudFront::CloudFrontOriginAccessIdentity" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudFrontCloudFrontOriginAccessIdentity) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFrontCloudFrontOriginAccessIdentity - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFrontCloudFrontOriginAccessIdentity - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSCloudFrontCloudFrontOriginAccessIdentity(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go b/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go deleted file mode 100644 index abfb1985eb..0000000000 --- a/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig AWS CloudFormation Resource (AWS::CloudFront::CloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html -type AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig struct { - - // Comment AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig-comment - Comment string `json:"Comment,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) AWSCloudFormationType() string { - return "AWS::CloudFront::CloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-distribution_cookies.go b/cloudformation/resources/aws-cloudfront-distribution_cookies.go deleted file mode 100644 index 5bb209c08c..0000000000 --- a/cloudformation/resources/aws-cloudfront-distribution_cookies.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontDistribution_Cookies AWS CloudFormation Resource (AWS::CloudFront::Distribution.Cookies) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html -type AWSCloudFrontDistribution_Cookies struct { - - // Forward AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-forward - Forward string `json:"Forward,omitempty"` - - // WhitelistedNames AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-whitelistednames - WhitelistedNames []string `json:"WhitelistedNames,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_Cookies) AWSCloudFormationType() string { - return "AWS::CloudFront::Distribution.Cookies" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_Cookies) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_Cookies) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_Cookies) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_Cookies) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_Cookies) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_Cookies) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-distribution_georestriction.go b/cloudformation/resources/aws-cloudfront-distribution_georestriction.go deleted file mode 100644 index 0c54a41df6..0000000000 --- a/cloudformation/resources/aws-cloudfront-distribution_georestriction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontDistribution_GeoRestriction AWS CloudFormation Resource (AWS::CloudFront::Distribution.GeoRestriction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html -type AWSCloudFrontDistribution_GeoRestriction struct { - - // Locations AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-locations - Locations []string `json:"Locations,omitempty"` - - // RestrictionType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-restrictiontype - RestrictionType string `json:"RestrictionType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_GeoRestriction) AWSCloudFormationType() string { - return "AWS::CloudFront::Distribution.GeoRestriction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_GeoRestriction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_GeoRestriction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_GeoRestriction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_GeoRestriction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_GeoRestriction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_GeoRestriction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-distribution_lambdafunctionassociation.go b/cloudformation/resources/aws-cloudfront-distribution_lambdafunctionassociation.go deleted file mode 100644 index 71482d316a..0000000000 --- a/cloudformation/resources/aws-cloudfront-distribution_lambdafunctionassociation.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontDistribution_LambdaFunctionAssociation AWS CloudFormation Resource (AWS::CloudFront::Distribution.LambdaFunctionAssociation) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html -type AWSCloudFrontDistribution_LambdaFunctionAssociation struct { - - // EventType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-eventtype - EventType string `json:"EventType,omitempty"` - - // LambdaFunctionARN AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-lambdafunctionarn - LambdaFunctionARN string `json:"LambdaFunctionARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_LambdaFunctionAssociation) AWSCloudFormationType() string { - return "AWS::CloudFront::Distribution.LambdaFunctionAssociation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_LambdaFunctionAssociation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_LambdaFunctionAssociation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_LambdaFunctionAssociation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_LambdaFunctionAssociation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_LambdaFunctionAssociation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_LambdaFunctionAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-distribution_origincustomheader.go b/cloudformation/resources/aws-cloudfront-distribution_origincustomheader.go deleted file mode 100644 index d634a16ab7..0000000000 --- a/cloudformation/resources/aws-cloudfront-distribution_origincustomheader.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontDistribution_OriginCustomHeader AWS CloudFormation Resource (AWS::CloudFront::Distribution.OriginCustomHeader) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html -type AWSCloudFrontDistribution_OriginCustomHeader struct { - - // HeaderName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headername - HeaderName string `json:"HeaderName,omitempty"` - - // HeaderValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headervalue - HeaderValue string `json:"HeaderValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_OriginCustomHeader) AWSCloudFormationType() string { - return "AWS::CloudFront::Distribution.OriginCustomHeader" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_OriginCustomHeader) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_OriginCustomHeader) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_OriginCustomHeader) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_OriginCustomHeader) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_OriginCustomHeader) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_OriginCustomHeader) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-distribution_restrictions.go b/cloudformation/resources/aws-cloudfront-distribution_restrictions.go deleted file mode 100644 index e6beabb68f..0000000000 --- a/cloudformation/resources/aws-cloudfront-distribution_restrictions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontDistribution_Restrictions AWS CloudFormation Resource (AWS::CloudFront::Distribution.Restrictions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html -type AWSCloudFrontDistribution_Restrictions struct { - - // GeoRestriction AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html#cfn-cloudfront-distribution-restrictions-georestriction - GeoRestriction *AWSCloudFrontDistribution_GeoRestriction `json:"GeoRestriction,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_Restrictions) AWSCloudFormationType() string { - return "AWS::CloudFront::Distribution.Restrictions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_Restrictions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_Restrictions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_Restrictions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_Restrictions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_Restrictions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_Restrictions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-distribution_s3originconfig.go b/cloudformation/resources/aws-cloudfront-distribution_s3originconfig.go deleted file mode 100644 index 274a0ffaa9..0000000000 --- a/cloudformation/resources/aws-cloudfront-distribution_s3originconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontDistribution_S3OriginConfig AWS CloudFormation Resource (AWS::CloudFront::Distribution.S3OriginConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html -type AWSCloudFrontDistribution_S3OriginConfig struct { - - // OriginAccessIdentity AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html#cfn-cloudfront-distribution-s3originconfig-originaccessidentity - OriginAccessIdentity string `json:"OriginAccessIdentity,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_S3OriginConfig) AWSCloudFormationType() string { - return "AWS::CloudFront::Distribution.S3OriginConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_S3OriginConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontDistribution_S3OriginConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_S3OriginConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontDistribution_S3OriginConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_S3OriginConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontDistribution_S3OriginConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution.go b/cloudformation/resources/aws-cloudfront-streamingdistribution.go deleted file mode 100644 index b6bea4b175..0000000000 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSCloudFrontStreamingDistribution AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html -type AWSCloudFrontStreamingDistribution struct { - - // StreamingDistributionConfig AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig - StreamingDistributionConfig *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig `json:"StreamingDistributionConfig,omitempty"` - - // Tags AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-tags - Tags []Tag `json:"Tags,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution) AWSCloudFormationType() string { - return "AWS::CloudFront::StreamingDistribution" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCloudFrontStreamingDistribution) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFrontStreamingDistribution - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCloudFrontStreamingDistribution) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFrontStreamingDistribution - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSCloudFrontStreamingDistribution(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution_logging.go b/cloudformation/resources/aws-cloudfront-streamingdistribution_logging.go deleted file mode 100644 index bd03e902ab..0000000000 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution_logging.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontStreamingDistribution_Logging AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.Logging) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html -type AWSCloudFrontStreamingDistribution_Logging struct { - - // Bucket AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-bucket - Bucket string `json:"Bucket,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-enabled - Enabled bool `json:"Enabled"` - - // Prefix AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-prefix - Prefix string `json:"Prefix,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution_Logging) AWSCloudFormationType() string { - return "AWS::CloudFront::StreamingDistribution.Logging" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution_Logging) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution_Logging) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution_Logging) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution_Logging) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution_Logging) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution_s3origin.go b/cloudformation/resources/aws-cloudfront-streamingdistribution_s3origin.go deleted file mode 100644 index ea433f7b30..0000000000 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution_s3origin.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontStreamingDistribution_S3Origin AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.S3Origin) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html -type AWSCloudFrontStreamingDistribution_S3Origin struct { - - // DomainName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-domainname - DomainName string `json:"DomainName,omitempty"` - - // OriginAccessIdentity AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-originaccessidentity - OriginAccessIdentity string `json:"OriginAccessIdentity,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution_S3Origin) AWSCloudFormationType() string { - return "AWS::CloudFront::StreamingDistribution.S3Origin" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution_S3Origin) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution_S3Origin) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution_S3Origin) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution_S3Origin) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution_S3Origin) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution_S3Origin) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go b/cloudformation/resources/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go deleted file mode 100644 index f2b806c276..0000000000 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go +++ /dev/null @@ -1,93 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontStreamingDistribution_StreamingDistributionConfig AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.StreamingDistributionConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html -type AWSCloudFrontStreamingDistribution_StreamingDistributionConfig struct { - - // Aliases AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-aliases - Aliases []string `json:"Aliases,omitempty"` - - // Comment AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-comment - Comment string `json:"Comment,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-enabled - Enabled bool `json:"Enabled"` - - // Logging AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-logging - Logging *AWSCloudFrontStreamingDistribution_Logging `json:"Logging,omitempty"` - - // PriceClass AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-priceclass - PriceClass string `json:"PriceClass,omitempty"` - - // S3Origin AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-s3origin - S3Origin *AWSCloudFrontStreamingDistribution_S3Origin `json:"S3Origin,omitempty"` - - // TrustedSigners AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-trustedsigners - TrustedSigners *AWSCloudFrontStreamingDistribution_TrustedSigners `json:"TrustedSigners,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) AWSCloudFormationType() string { - return "AWS::CloudFront::StreamingDistribution.StreamingDistributionConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution_trustedsigners.go b/cloudformation/resources/aws-cloudfront-streamingdistribution_trustedsigners.go deleted file mode 100644 index a1e58fd47e..0000000000 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution_trustedsigners.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudFrontStreamingDistribution_TrustedSigners AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.TrustedSigners) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html -type AWSCloudFrontStreamingDistribution_TrustedSigners struct { - - // AwsAccountNumbers AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-awsaccountnumbers - AwsAccountNumbers []string `json:"AwsAccountNumbers,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-enabled - Enabled bool `json:"Enabled"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution_TrustedSigners) AWSCloudFormationType() string { - return "AWS::CloudFront::StreamingDistribution.TrustedSigners" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution_TrustedSigners) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudFrontStreamingDistribution_TrustedSigners) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution_TrustedSigners) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudFrontStreamingDistribution_TrustedSigners) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution_TrustedSigners) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudFrontStreamingDistribution_TrustedSigners) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudtrail-trail_dataresource.go b/cloudformation/resources/aws-cloudtrail-trail_dataresource.go deleted file mode 100644 index 4886c1794d..0000000000 --- a/cloudformation/resources/aws-cloudtrail-trail_dataresource.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudTrailTrail_DataResource AWS CloudFormation Resource (AWS::CloudTrail::Trail.DataResource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html -type AWSCloudTrailTrail_DataResource struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html#cfn-cloudtrail-trail-dataresource-type - Type string `json:"Type,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html#cfn-cloudtrail-trail-dataresource-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudTrailTrail_DataResource) AWSCloudFormationType() string { - return "AWS::CloudTrail::Trail.DataResource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudTrailTrail_DataResource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudTrailTrail_DataResource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudTrailTrail_DataResource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudTrailTrail_DataResource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudTrailTrail_DataResource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudTrailTrail_DataResource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudtrail-trail_eventselector.go b/cloudformation/resources/aws-cloudtrail-trail_eventselector.go deleted file mode 100644 index 883f22e19a..0000000000 --- a/cloudformation/resources/aws-cloudtrail-trail_eventselector.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudTrailTrail_EventSelector AWS CloudFormation Resource (AWS::CloudTrail::Trail.EventSelector) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html -type AWSCloudTrailTrail_EventSelector struct { - - // DataResources AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-dataresources - DataResources []AWSCloudTrailTrail_DataResource `json:"DataResources,omitempty"` - - // IncludeManagementEvents AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-includemanagementevents - IncludeManagementEvents bool `json:"IncludeManagementEvents,omitempty"` - - // ReadWriteType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-readwritetype - ReadWriteType string `json:"ReadWriteType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudTrailTrail_EventSelector) AWSCloudFormationType() string { - return "AWS::CloudTrail::Trail.EventSelector" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudTrailTrail_EventSelector) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudTrailTrail_EventSelector) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudTrailTrail_EventSelector) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudTrailTrail_EventSelector) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudTrailTrail_EventSelector) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudTrailTrail_EventSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudwatch-alarm_dimension.go b/cloudformation/resources/aws-cloudwatch-alarm_dimension.go deleted file mode 100644 index 447480e4fc..0000000000 --- a/cloudformation/resources/aws-cloudwatch-alarm_dimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudWatchAlarm_Dimension AWS CloudFormation Resource (AWS::CloudWatch::Alarm.Dimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html -type AWSCloudWatchAlarm_Dimension struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAlarm_Dimension) AWSCloudFormationType() string { - return "AWS::CloudWatch::Alarm.Dimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm_Dimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAlarm_Dimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm_Dimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAlarm_Dimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm_Dimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAlarm_Dimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudwatch-anomalydetector_configuration.go b/cloudformation/resources/aws-cloudwatch-anomalydetector_configuration.go deleted file mode 100644 index 2b32e1d100..0000000000 --- a/cloudformation/resources/aws-cloudwatch-anomalydetector_configuration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudWatchAnomalyDetector_Configuration AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Configuration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html -type AWSCloudWatchAnomalyDetector_Configuration struct { - - // ExcludedTimeRanges AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html#cfn-cloudwatch-anomalydetector-configuration-excludedtimeranges - ExcludedTimeRanges []AWSCloudWatchAnomalyDetector_Range `json:"ExcludedTimeRanges,omitempty"` - - // MetricTimeZone AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html#cfn-cloudwatch-anomalydetector-configuration-metrictimezone - MetricTimeZone string `json:"MetricTimeZone,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAnomalyDetector_Configuration) AWSCloudFormationType() string { - return "AWS::CloudWatch::AnomalyDetector.Configuration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAnomalyDetector_Configuration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAnomalyDetector_Configuration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAnomalyDetector_Configuration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAnomalyDetector_Configuration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAnomalyDetector_Configuration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAnomalyDetector_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudwatch-anomalydetector_dimension.go b/cloudformation/resources/aws-cloudwatch-anomalydetector_dimension.go deleted file mode 100644 index 71ff090c49..0000000000 --- a/cloudformation/resources/aws-cloudwatch-anomalydetector_dimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudWatchAnomalyDetector_Dimension AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Dimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html -type AWSCloudWatchAnomalyDetector_Dimension struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html#cfn-cloudwatch-anomalydetector-dimension-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html#cfn-cloudwatch-anomalydetector-dimension-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAnomalyDetector_Dimension) AWSCloudFormationType() string { - return "AWS::CloudWatch::AnomalyDetector.Dimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAnomalyDetector_Dimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAnomalyDetector_Dimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAnomalyDetector_Dimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAnomalyDetector_Dimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAnomalyDetector_Dimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAnomalyDetector_Dimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cloudwatch-anomalydetector_range.go b/cloudformation/resources/aws-cloudwatch-anomalydetector_range.go deleted file mode 100644 index c034f2d497..0000000000 --- a/cloudformation/resources/aws-cloudwatch-anomalydetector_range.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCloudWatchAnomalyDetector_Range AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Range) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html -type AWSCloudWatchAnomalyDetector_Range struct { - - // EndTime AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html#cfn-cloudwatch-anomalydetector-range-endtime - EndTime string `json:"EndTime,omitempty"` - - // StartTime AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html#cfn-cloudwatch-anomalydetector-range-starttime - StartTime string `json:"StartTime,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAnomalyDetector_Range) AWSCloudFormationType() string { - return "AWS::CloudWatch::AnomalyDetector.Range" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAnomalyDetector_Range) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCloudWatchAnomalyDetector_Range) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAnomalyDetector_Range) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCloudWatchAnomalyDetector_Range) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAnomalyDetector_Range) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCloudWatchAnomalyDetector_Range) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codebuild-project_environmentvariable.go b/cloudformation/resources/aws-codebuild-project_environmentvariable.go deleted file mode 100644 index f1be88a03b..0000000000 --- a/cloudformation/resources/aws-codebuild-project_environmentvariable.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeBuildProject_EnvironmentVariable AWS CloudFormation Resource (AWS::CodeBuild::Project.EnvironmentVariable) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html -type AWSCodeBuildProject_EnvironmentVariable struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-name - Name string `json:"Name,omitempty"` - - // Type AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-type - Type string `json:"Type,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_EnvironmentVariable) AWSCloudFormationType() string { - return "AWS::CodeBuild::Project.EnvironmentVariable" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_EnvironmentVariable) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_EnvironmentVariable) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_EnvironmentVariable) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codebuild-project_filtergroup.go b/cloudformation/resources/aws-codebuild-project_filtergroup.go deleted file mode 100644 index cdbc8d823a..0000000000 --- a/cloudformation/resources/aws-codebuild-project_filtergroup.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeBuildProject_FilterGroup AWS CloudFormation Resource (AWS::CodeBuild::Project.FilterGroup) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-filtergroup.html -type AWSCodeBuildProject_FilterGroup struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_FilterGroup) AWSCloudFormationType() string { - return "AWS::CodeBuild::Project.FilterGroup" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_FilterGroup) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_FilterGroup) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_FilterGroup) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_FilterGroup) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_FilterGroup) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_FilterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codebuild-project_gitsubmodulesconfig.go b/cloudformation/resources/aws-codebuild-project_gitsubmodulesconfig.go deleted file mode 100644 index 2186c9746f..0000000000 --- a/cloudformation/resources/aws-codebuild-project_gitsubmodulesconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeBuildProject_GitSubmodulesConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.GitSubmodulesConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-gitsubmodulesconfig.html -type AWSCodeBuildProject_GitSubmodulesConfig struct { - - // FetchSubmodules AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-gitsubmodulesconfig.html#cfn-codebuild-project-gitsubmodulesconfig-fetchsubmodules - FetchSubmodules bool `json:"FetchSubmodules"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_GitSubmodulesConfig) AWSCloudFormationType() string { - return "AWS::CodeBuild::Project.GitSubmodulesConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_GitSubmodulesConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_GitSubmodulesConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_GitSubmodulesConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_GitSubmodulesConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_GitSubmodulesConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_GitSubmodulesConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codebuild-project_logsconfig.go b/cloudformation/resources/aws-codebuild-project_logsconfig.go deleted file mode 100644 index 8f625e363a..0000000000 --- a/cloudformation/resources/aws-codebuild-project_logsconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeBuildProject_LogsConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.LogsConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html -type AWSCodeBuildProject_LogsConfig struct { - - // CloudWatchLogs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html#cfn-codebuild-project-logsconfig-cloudwatchlogs - CloudWatchLogs *AWSCodeBuildProject_CloudWatchLogsConfig `json:"CloudWatchLogs,omitempty"` - - // S3Logs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html#cfn-codebuild-project-logsconfig-s3logs - S3Logs *AWSCodeBuildProject_S3LogsConfig `json:"S3Logs,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_LogsConfig) AWSCloudFormationType() string { - return "AWS::CodeBuild::Project.LogsConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_LogsConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_LogsConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_LogsConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_LogsConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_LogsConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_LogsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codebuild-project_projectsourceversion.go b/cloudformation/resources/aws-codebuild-project_projectsourceversion.go deleted file mode 100644 index 3e9e2b57c9..0000000000 --- a/cloudformation/resources/aws-codebuild-project_projectsourceversion.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeBuildProject_ProjectSourceVersion AWS CloudFormation Resource (AWS::CodeBuild::Project.ProjectSourceVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html -type AWSCodeBuildProject_ProjectSourceVersion struct { - - // SourceIdentifier AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html#cfn-codebuild-project-projectsourceversion-sourceidentifier - SourceIdentifier string `json:"SourceIdentifier,omitempty"` - - // SourceVersion AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html#cfn-codebuild-project-projectsourceversion-sourceversion - SourceVersion string `json:"SourceVersion,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_ProjectSourceVersion) AWSCloudFormationType() string { - return "AWS::CodeBuild::Project.ProjectSourceVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_ProjectSourceVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_ProjectSourceVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_ProjectSourceVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_ProjectSourceVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_ProjectSourceVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_ProjectSourceVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codebuild-project_projecttriggers.go b/cloudformation/resources/aws-codebuild-project_projecttriggers.go deleted file mode 100644 index 25074e337f..0000000000 --- a/cloudformation/resources/aws-codebuild-project_projecttriggers.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeBuildProject_ProjectTriggers AWS CloudFormation Resource (AWS::CodeBuild::Project.ProjectTriggers) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html -type AWSCodeBuildProject_ProjectTriggers struct { - - // FilterGroups AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-filtergroups - FilterGroups []AWSCodeBuildProject_FilterGroup `json:"FilterGroups,omitempty"` - - // Webhook AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-webhook - Webhook bool `json:"Webhook,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_ProjectTriggers) AWSCloudFormationType() string { - return "AWS::CodeBuild::Project.ProjectTriggers" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_ProjectTriggers) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_ProjectTriggers) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_ProjectTriggers) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_ProjectTriggers) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_ProjectTriggers) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_ProjectTriggers) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codebuild-project_registrycredential.go b/cloudformation/resources/aws-codebuild-project_registrycredential.go deleted file mode 100644 index f6540038d0..0000000000 --- a/cloudformation/resources/aws-codebuild-project_registrycredential.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeBuildProject_RegistryCredential AWS CloudFormation Resource (AWS::CodeBuild::Project.RegistryCredential) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html -type AWSCodeBuildProject_RegistryCredential struct { - - // Credential AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html#cfn-codebuild-project-registrycredential-credential - Credential string `json:"Credential,omitempty"` - - // CredentialProvider AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html#cfn-codebuild-project-registrycredential-credentialprovider - CredentialProvider string `json:"CredentialProvider,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_RegistryCredential) AWSCloudFormationType() string { - return "AWS::CodeBuild::Project.RegistryCredential" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_RegistryCredential) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_RegistryCredential) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_RegistryCredential) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_RegistryCredential) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_RegistryCredential) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_RegistryCredential) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codebuild-project_sourceauth.go b/cloudformation/resources/aws-codebuild-project_sourceauth.go deleted file mode 100644 index 3a71a9e2c0..0000000000 --- a/cloudformation/resources/aws-codebuild-project_sourceauth.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeBuildProject_SourceAuth AWS CloudFormation Resource (AWS::CodeBuild::Project.SourceAuth) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html -type AWSCodeBuildProject_SourceAuth struct { - - // Resource AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-resource - Resource string `json:"Resource,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_SourceAuth) AWSCloudFormationType() string { - return "AWS::CodeBuild::Project.SourceAuth" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_SourceAuth) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeBuildProject_SourceAuth) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_SourceAuth) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeBuildProject_SourceAuth) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_SourceAuth) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeBuildProject_SourceAuth) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codecommit-repository_code.go b/cloudformation/resources/aws-codecommit-repository_code.go deleted file mode 100644 index a7ccc5731a..0000000000 --- a/cloudformation/resources/aws-codecommit-repository_code.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeCommitRepository_Code AWS CloudFormation Resource (AWS::CodeCommit::Repository.Code) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html -type AWSCodeCommitRepository_Code struct { - - // S3 AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html#cfn-codecommit-repository-code-s3 - S3 *AWSCodeCommitRepository_S3 `json:"S3,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeCommitRepository_Code) AWSCloudFormationType() string { - return "AWS::CodeCommit::Repository.Code" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeCommitRepository_Code) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeCommitRepository_Code) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeCommitRepository_Code) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeCommitRepository_Code) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeCommitRepository_Code) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeCommitRepository_Code) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go b/cloudformation/resources/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go deleted file mode 100644 index 26df2bbc84..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentConfig_MinimumHealthyHosts AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html -type AWSCodeDeployDeploymentConfig_MinimumHealthyHosts struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-type - Type string `json:"Type,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-value - Value int `json:"Value"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_alarm.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_alarm.go deleted file mode 100644 index bb15bd9630..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_alarm.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_Alarm AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.Alarm) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html -type AWSCodeDeployDeploymentGroup_Alarm struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html#cfn-codedeploy-deploymentgroup-alarm-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_Alarm) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.Alarm" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_Alarm) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_Alarm) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_Alarm) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_Alarm) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_Alarm) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_Alarm) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_alarmconfiguration.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_alarmconfiguration.go deleted file mode 100644 index 7d755105e3..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_alarmconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_AlarmConfiguration AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.AlarmConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html -type AWSCodeDeployDeploymentGroup_AlarmConfiguration struct { - - // Alarms AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-alarms - Alarms []AWSCodeDeployDeploymentGroup_Alarm `json:"Alarms,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-enabled - Enabled bool `json:"Enabled,omitempty"` - - // IgnorePollAlarmFailure AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-ignorepollalarmfailure - IgnorePollAlarmFailure bool `json:"IgnorePollAlarmFailure,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_AlarmConfiguration) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.AlarmConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_AlarmConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_AlarmConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_AlarmConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_AlarmConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_AlarmConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_AlarmConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go deleted file mode 100644 index 825496e7b6..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html -type AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration struct { - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration-enabled - Enabled bool `json:"Enabled,omitempty"` - - // Events AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration-events - Events []string `json:"Events,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_deployment.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_deployment.go deleted file mode 100644 index 07a0649b69..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_deployment.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_Deployment AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.Deployment) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html -type AWSCodeDeployDeploymentGroup_Deployment struct { - - // Description AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-description - Description string `json:"Description,omitempty"` - - // IgnoreApplicationStopFailures AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-ignoreapplicationstopfailures - IgnoreApplicationStopFailures bool `json:"IgnoreApplicationStopFailures,omitempty"` - - // Revision AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision - Revision *AWSCodeDeployDeploymentGroup_RevisionLocation `json:"Revision,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_Deployment) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.Deployment" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_Deployment) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_Deployment) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_Deployment) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_Deployment) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_Deployment) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_Deployment) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_deploymentstyle.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_deploymentstyle.go deleted file mode 100644 index 8a9d6be547..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_deploymentstyle.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_DeploymentStyle AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.DeploymentStyle) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html -type AWSCodeDeployDeploymentGroup_DeploymentStyle struct { - - // DeploymentOption AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html#cfn-codedeploy-deploymentgroup-deploymentstyle-deploymentoption - DeploymentOption string `json:"DeploymentOption,omitempty"` - - // DeploymentType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html#cfn-codedeploy-deploymentgroup-deploymentstyle-deploymenttype - DeploymentType string `json:"DeploymentType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_DeploymentStyle) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.DeploymentStyle" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_DeploymentStyle) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_DeploymentStyle) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_DeploymentStyle) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_DeploymentStyle) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_DeploymentStyle) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_DeploymentStyle) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagfilter.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagfilter.go deleted file mode 100644 index 0a5d795a09..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagfilter.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_EC2TagFilter AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html -type AWSCodeDeployDeploymentGroup_EC2TagFilter struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-key - Key string `json:"Key,omitempty"` - - // Type AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-type - Type string `json:"Type,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_EC2TagFilter) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.EC2TagFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagset.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagset.go deleted file mode 100644 index f8265dca8e..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagset.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_EC2TagSet AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagSet) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagset.html -type AWSCodeDeployDeploymentGroup_EC2TagSet struct { - - // Ec2TagSetList AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagset.html#cfn-codedeploy-deploymentgroup-ec2tagset-ec2tagsetlist - Ec2TagSetList []AWSCodeDeployDeploymentGroup_EC2TagSetListObject `json:"Ec2TagSetList,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_EC2TagSet) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.EC2TagSet" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSet) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSet) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSet) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSet) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSet) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSet) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go deleted file mode 100644 index ec6c4a3337..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_EC2TagSetListObject AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagSetListObject) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagsetlistobject.html -type AWSCodeDeployDeploymentGroup_EC2TagSetListObject struct { - - // Ec2TagGroup AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagsetlistobject.html#cfn-codedeploy-deploymentgroup-ec2tagsetlistobject-ec2taggroup - Ec2TagGroup []AWSCodeDeployDeploymentGroup_EC2TagFilter `json:"Ec2TagGroup,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.EC2TagSetListObject" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_elbinfo.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_elbinfo.go deleted file mode 100644 index 2ca268d070..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_elbinfo.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_ELBInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.ELBInfo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-elbinfo.html -type AWSCodeDeployDeploymentGroup_ELBInfo struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-elbinfo.html#cfn-codedeploy-deploymentgroup-elbinfo-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_ELBInfo) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.ELBInfo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_ELBInfo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_ELBInfo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_ELBInfo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_ELBInfo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_ELBInfo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_ELBInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_githublocation.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_githublocation.go deleted file mode 100644 index 9533ca0802..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_githublocation.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_GitHubLocation AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.GitHubLocation) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html -type AWSCodeDeployDeploymentGroup_GitHubLocation struct { - - // CommitId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-commitid - CommitId string `json:"CommitId,omitempty"` - - // Repository AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-repository - Repository string `json:"Repository,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_GitHubLocation) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.GitHubLocation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_GitHubLocation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_GitHubLocation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_GitHubLocation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_GitHubLocation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_GitHubLocation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_GitHubLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_loadbalancerinfo.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_loadbalancerinfo.go deleted file mode 100644 index fedb966cd5..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_loadbalancerinfo.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_LoadBalancerInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.LoadBalancerInfo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html -type AWSCodeDeployDeploymentGroup_LoadBalancerInfo struct { - - // ElbInfoList AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo-elbinfolist - ElbInfoList []AWSCodeDeployDeploymentGroup_ELBInfo `json:"ElbInfoList,omitempty"` - - // TargetGroupInfoList AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo-targetgroupinfolist - TargetGroupInfoList []AWSCodeDeployDeploymentGroup_TargetGroupInfo `json:"TargetGroupInfoList,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.LoadBalancerInfo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagset.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagset.go deleted file mode 100644 index 871c9d7c95..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagset.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_OnPremisesTagSet AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSet) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagset.html -type AWSCodeDeployDeploymentGroup_OnPremisesTagSet struct { - - // OnPremisesTagSetList AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagset.html#cfn-codedeploy-deploymentgroup-onpremisestagset-onpremisestagsetlist - OnPremisesTagSetList []AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject `json:"OnPremisesTagSetList,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSet" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go deleted file mode 100644 index bf9f4bc803..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSetListObject) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagsetlistobject.html -type AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject struct { - - // OnPremisesTagGroup AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagsetlistobject.html#cfn-codedeploy-deploymentgroup-onpremisestagsetlistobject-onpremisestaggroup - OnPremisesTagGroup []AWSCodeDeployDeploymentGroup_TagFilter `json:"OnPremisesTagGroup,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSetListObject" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_revisionlocation.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_revisionlocation.go deleted file mode 100644 index d0a75603e4..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_revisionlocation.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_RevisionLocation AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.RevisionLocation) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html -type AWSCodeDeployDeploymentGroup_RevisionLocation struct { - - // GitHubLocation AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation - GitHubLocation *AWSCodeDeployDeploymentGroup_GitHubLocation `json:"GitHubLocation,omitempty"` - - // RevisionType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-revisiontype - RevisionType string `json:"RevisionType,omitempty"` - - // S3Location AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location - S3Location *AWSCodeDeployDeploymentGroup_S3Location `json:"S3Location,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_RevisionLocation) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.RevisionLocation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_RevisionLocation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_RevisionLocation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_RevisionLocation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_RevisionLocation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_RevisionLocation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_RevisionLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_targetgroupinfo.go b/cloudformation/resources/aws-codedeploy-deploymentgroup_targetgroupinfo.go deleted file mode 100644 index 82453cde6a..0000000000 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_targetgroupinfo.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeDeployDeploymentGroup_TargetGroupInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.TargetGroupInfo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-targetgroupinfo.html -type AWSCodeDeployDeploymentGroup_TargetGroupInfo struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-targetgroupinfo.html#cfn-codedeploy-deploymentgroup-targetgroupinfo-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_TargetGroupInfo) AWSCloudFormationType() string { - return "AWS::CodeDeploy::DeploymentGroup.TargetGroupInfo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_TargetGroupInfo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeDeployDeploymentGroup_TargetGroupInfo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_TargetGroupInfo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeDeployDeploymentGroup_TargetGroupInfo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_TargetGroupInfo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeDeployDeploymentGroup_TargetGroupInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-customactiontype_artifactdetails.go b/cloudformation/resources/aws-codepipeline-customactiontype_artifactdetails.go deleted file mode 100644 index e9b579c467..0000000000 --- a/cloudformation/resources/aws-codepipeline-customactiontype_artifactdetails.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelineCustomActionType_ArtifactDetails AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType.ArtifactDetails) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html -type AWSCodePipelineCustomActionType_ArtifactDetails struct { - - // MaximumCount AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-maximumcount - MaximumCount int `json:"MaximumCount"` - - // MinimumCount AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-minimumcount - MinimumCount int `json:"MinimumCount"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineCustomActionType_ArtifactDetails) AWSCloudFormationType() string { - return "AWS::CodePipeline::CustomActionType.ArtifactDetails" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineCustomActionType_ArtifactDetails) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineCustomActionType_ArtifactDetails) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineCustomActionType_ArtifactDetails) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineCustomActionType_ArtifactDetails) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineCustomActionType_ArtifactDetails) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineCustomActionType_ArtifactDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-pipeline_artifactstore.go b/cloudformation/resources/aws-codepipeline-pipeline_artifactstore.go deleted file mode 100644 index 7e9dd37420..0000000000 --- a/cloudformation/resources/aws-codepipeline-pipeline_artifactstore.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelinePipeline_ArtifactStore AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ArtifactStore) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html -type AWSCodePipelinePipeline_ArtifactStore struct { - - // EncryptionKey AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey - EncryptionKey *AWSCodePipelinePipeline_EncryptionKey `json:"EncryptionKey,omitempty"` - - // Location AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-location - Location string `json:"Location,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_ArtifactStore) AWSCloudFormationType() string { - return "AWS::CodePipeline::Pipeline.ArtifactStore" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_ArtifactStore) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_ArtifactStore) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_ArtifactStore) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_ArtifactStore) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_ArtifactStore) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_ArtifactStore) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-pipeline_artifactstoremap.go b/cloudformation/resources/aws-codepipeline-pipeline_artifactstoremap.go deleted file mode 100644 index bf854e5caa..0000000000 --- a/cloudformation/resources/aws-codepipeline-pipeline_artifactstoremap.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelinePipeline_ArtifactStoreMap AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ArtifactStoreMap) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html -type AWSCodePipelinePipeline_ArtifactStoreMap struct { - - // ArtifactStore AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-artifactstore - ArtifactStore *AWSCodePipelinePipeline_ArtifactStore `json:"ArtifactStore,omitempty"` - - // Region AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-region - Region string `json:"Region,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_ArtifactStoreMap) AWSCloudFormationType() string { - return "AWS::CodePipeline::Pipeline.ArtifactStoreMap" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_ArtifactStoreMap) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_ArtifactStoreMap) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_ArtifactStoreMap) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_ArtifactStoreMap) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_ArtifactStoreMap) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_ArtifactStoreMap) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-pipeline_blockerdeclaration.go b/cloudformation/resources/aws-codepipeline-pipeline_blockerdeclaration.go deleted file mode 100644 index b273b5481f..0000000000 --- a/cloudformation/resources/aws-codepipeline-pipeline_blockerdeclaration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelinePipeline_BlockerDeclaration AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.BlockerDeclaration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html -type AWSCodePipelinePipeline_BlockerDeclaration struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-name - Name string `json:"Name,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_BlockerDeclaration) AWSCloudFormationType() string { - return "AWS::CodePipeline::Pipeline.BlockerDeclaration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_BlockerDeclaration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_BlockerDeclaration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_BlockerDeclaration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_BlockerDeclaration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_BlockerDeclaration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_BlockerDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-pipeline_encryptionkey.go b/cloudformation/resources/aws-codepipeline-pipeline_encryptionkey.go deleted file mode 100644 index 7bc8c4b70c..0000000000 --- a/cloudformation/resources/aws-codepipeline-pipeline_encryptionkey.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelinePipeline_EncryptionKey AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.EncryptionKey) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html -type AWSCodePipelinePipeline_EncryptionKey struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-id - Id string `json:"Id,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_EncryptionKey) AWSCloudFormationType() string { - return "AWS::CodePipeline::Pipeline.EncryptionKey" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_EncryptionKey) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_EncryptionKey) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_EncryptionKey) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_EncryptionKey) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_EncryptionKey) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_EncryptionKey) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-pipeline_inputartifact.go b/cloudformation/resources/aws-codepipeline-pipeline_inputartifact.go deleted file mode 100644 index d8c191483b..0000000000 --- a/cloudformation/resources/aws-codepipeline-pipeline_inputartifact.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelinePipeline_InputArtifact AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.InputArtifact) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html -type AWSCodePipelinePipeline_InputArtifact struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_InputArtifact) AWSCloudFormationType() string { - return "AWS::CodePipeline::Pipeline.InputArtifact" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_InputArtifact) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_InputArtifact) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_InputArtifact) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_InputArtifact) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_InputArtifact) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_InputArtifact) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-pipeline_outputartifact.go b/cloudformation/resources/aws-codepipeline-pipeline_outputartifact.go deleted file mode 100644 index a8f09a76af..0000000000 --- a/cloudformation/resources/aws-codepipeline-pipeline_outputartifact.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelinePipeline_OutputArtifact AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.OutputArtifact) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html -type AWSCodePipelinePipeline_OutputArtifact struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_OutputArtifact) AWSCloudFormationType() string { - return "AWS::CodePipeline::Pipeline.OutputArtifact" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_OutputArtifact) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_OutputArtifact) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_OutputArtifact) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_OutputArtifact) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_OutputArtifact) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_OutputArtifact) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-pipeline_stagedeclaration.go b/cloudformation/resources/aws-codepipeline-pipeline_stagedeclaration.go deleted file mode 100644 index 504a382a24..0000000000 --- a/cloudformation/resources/aws-codepipeline-pipeline_stagedeclaration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelinePipeline_StageDeclaration AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.StageDeclaration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html -type AWSCodePipelinePipeline_StageDeclaration struct { - - // Actions AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-actions - Actions []AWSCodePipelinePipeline_ActionDeclaration `json:"Actions,omitempty"` - - // Blockers AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-blockers - Blockers []AWSCodePipelinePipeline_BlockerDeclaration `json:"Blockers,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_StageDeclaration) AWSCloudFormationType() string { - return "AWS::CodePipeline::Pipeline.StageDeclaration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_StageDeclaration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_StageDeclaration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_StageDeclaration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_StageDeclaration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_StageDeclaration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_StageDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-pipeline_stagetransition.go b/cloudformation/resources/aws-codepipeline-pipeline_stagetransition.go deleted file mode 100644 index c5a8e469cf..0000000000 --- a/cloudformation/resources/aws-codepipeline-pipeline_stagetransition.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelinePipeline_StageTransition AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.StageTransition) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html -type AWSCodePipelinePipeline_StageTransition struct { - - // Reason AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-reason - Reason string `json:"Reason,omitempty"` - - // StageName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-stagename - StageName string `json:"StageName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_StageTransition) AWSCloudFormationType() string { - return "AWS::CodePipeline::Pipeline.StageTransition" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_StageTransition) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelinePipeline_StageTransition) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_StageTransition) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelinePipeline_StageTransition) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_StageTransition) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelinePipeline_StageTransition) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-webhook_webhookauthconfiguration.go b/cloudformation/resources/aws-codepipeline-webhook_webhookauthconfiguration.go deleted file mode 100644 index 33d4ca0aae..0000000000 --- a/cloudformation/resources/aws-codepipeline-webhook_webhookauthconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelineWebhook_WebhookAuthConfiguration AWS CloudFormation Resource (AWS::CodePipeline::Webhook.WebhookAuthConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html -type AWSCodePipelineWebhook_WebhookAuthConfiguration struct { - - // AllowedIPRange AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html#cfn-codepipeline-webhook-webhookauthconfiguration-allowediprange - AllowedIPRange string `json:"AllowedIPRange,omitempty"` - - // SecretToken AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html#cfn-codepipeline-webhook-webhookauthconfiguration-secrettoken - SecretToken string `json:"SecretToken,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineWebhook_WebhookAuthConfiguration) AWSCloudFormationType() string { - return "AWS::CodePipeline::Webhook.WebhookAuthConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineWebhook_WebhookAuthConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineWebhook_WebhookAuthConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineWebhook_WebhookAuthConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineWebhook_WebhookAuthConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineWebhook_WebhookAuthConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineWebhook_WebhookAuthConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codepipeline-webhook_webhookfilterrule.go b/cloudformation/resources/aws-codepipeline-webhook_webhookfilterrule.go deleted file mode 100644 index fca0c34d3a..0000000000 --- a/cloudformation/resources/aws-codepipeline-webhook_webhookfilterrule.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodePipelineWebhook_WebhookFilterRule AWS CloudFormation Resource (AWS::CodePipeline::Webhook.WebhookFilterRule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html -type AWSCodePipelineWebhook_WebhookFilterRule struct { - - // JsonPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html#cfn-codepipeline-webhook-webhookfilterrule-jsonpath - JsonPath string `json:"JsonPath,omitempty"` - - // MatchEquals AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html#cfn-codepipeline-webhook-webhookfilterrule-matchequals - MatchEquals string `json:"MatchEquals,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineWebhook_WebhookFilterRule) AWSCloudFormationType() string { - return "AWS::CodePipeline::Webhook.WebhookFilterRule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineWebhook_WebhookFilterRule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodePipelineWebhook_WebhookFilterRule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineWebhook_WebhookFilterRule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodePipelineWebhook_WebhookFilterRule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineWebhook_WebhookFilterRule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodePipelineWebhook_WebhookFilterRule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-codestar-githubrepository_code.go b/cloudformation/resources/aws-codestar-githubrepository_code.go deleted file mode 100644 index e1cbe7e4cd..0000000000 --- a/cloudformation/resources/aws-codestar-githubrepository_code.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCodeStarGitHubRepository_Code AWS CloudFormation Resource (AWS::CodeStar::GitHubRepository.Code) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-code.html -type AWSCodeStarGitHubRepository_Code struct { - - // S3 AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-code.html#cfn-codestar-githubrepository-code-s3 - S3 *AWSCodeStarGitHubRepository_S3 `json:"S3,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeStarGitHubRepository_Code) AWSCloudFormationType() string { - return "AWS::CodeStar::GitHubRepository.Code" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeStarGitHubRepository_Code) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCodeStarGitHubRepository_Code) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeStarGitHubRepository_Code) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCodeStarGitHubRepository_Code) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeStarGitHubRepository_Code) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCodeStarGitHubRepository_Code) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-identitypool_cognitoidentityprovider.go b/cloudformation/resources/aws-cognito-identitypool_cognitoidentityprovider.go deleted file mode 100644 index 833fba5598..0000000000 --- a/cloudformation/resources/aws-cognito-identitypool_cognitoidentityprovider.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoIdentityPool_CognitoIdentityProvider AWS CloudFormation Resource (AWS::Cognito::IdentityPool.CognitoIdentityProvider) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html -type AWSCognitoIdentityPool_CognitoIdentityProvider struct { - - // ClientId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-clientid - ClientId string `json:"ClientId,omitempty"` - - // ProviderName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-providername - ProviderName string `json:"ProviderName,omitempty"` - - // ServerSideTokenCheck AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-serversidetokencheck - ServerSideTokenCheck bool `json:"ServerSideTokenCheck,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPool_CognitoIdentityProvider) AWSCloudFormationType() string { - return "AWS::Cognito::IdentityPool.CognitoIdentityProvider" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPool_CognitoIdentityProvider) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPool_CognitoIdentityProvider) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPool_CognitoIdentityProvider) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPool_CognitoIdentityProvider) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPool_CognitoIdentityProvider) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPool_CognitoIdentityProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-identitypool_pushsync.go b/cloudformation/resources/aws-cognito-identitypool_pushsync.go deleted file mode 100644 index a0ae450d3d..0000000000 --- a/cloudformation/resources/aws-cognito-identitypool_pushsync.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoIdentityPool_PushSync AWS CloudFormation Resource (AWS::Cognito::IdentityPool.PushSync) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html -type AWSCognitoIdentityPool_PushSync struct { - - // ApplicationArns AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-applicationarns - ApplicationArns []string `json:"ApplicationArns,omitempty"` - - // RoleArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-rolearn - RoleArn string `json:"RoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPool_PushSync) AWSCloudFormationType() string { - return "AWS::Cognito::IdentityPool.PushSync" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPool_PushSync) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPool_PushSync) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPool_PushSync) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPool_PushSync) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPool_PushSync) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPool_PushSync) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-identitypoolroleattachment_rolemapping.go b/cloudformation/resources/aws-cognito-identitypoolroleattachment_rolemapping.go deleted file mode 100644 index 193eb381de..0000000000 --- a/cloudformation/resources/aws-cognito-identitypoolroleattachment_rolemapping.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoIdentityPoolRoleAttachment_RoleMapping AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment.RoleMapping) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html -type AWSCognitoIdentityPoolRoleAttachment_RoleMapping struct { - - // AmbiguousRoleResolution AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-ambiguousroleresolution - AmbiguousRoleResolution string `json:"AmbiguousRoleResolution,omitempty"` - - // IdentityProvider AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-identityprovider - IdentityProvider string `json:"IdentityProvider,omitempty"` - - // RulesConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-rulesconfiguration - RulesConfiguration *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType `json:"RulesConfiguration,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) AWSCloudFormationType() string { - return "AWS::Cognito::IdentityPoolRoleAttachment.RoleMapping" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go b/cloudformation/resources/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go deleted file mode 100644 index fbb50743e1..0000000000 --- a/cloudformation/resources/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment.RulesConfigurationType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rulesconfigurationtype.html -type AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType struct { - - // Rules AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rulesconfigurationtype.html#cfn-cognito-identitypoolroleattachment-rulesconfigurationtype-rules - Rules []AWSCognitoIdentityPoolRoleAttachment_MappingRule `json:"Rules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) AWSCloudFormationType() string { - return "AWS::Cognito::IdentityPoolRoleAttachment.RulesConfigurationType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpool_admincreateuserconfig.go b/cloudformation/resources/aws-cognito-userpool_admincreateuserconfig.go deleted file mode 100644 index 2fcde8abdf..0000000000 --- a/cloudformation/resources/aws-cognito-userpool_admincreateuserconfig.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPool_AdminCreateUserConfig AWS CloudFormation Resource (AWS::Cognito::UserPool.AdminCreateUserConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html -type AWSCognitoUserPool_AdminCreateUserConfig struct { - - // AllowAdminCreateUserOnly AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-allowadmincreateuseronly - AllowAdminCreateUserOnly bool `json:"AllowAdminCreateUserOnly,omitempty"` - - // InviteMessageTemplate AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-invitemessagetemplate - InviteMessageTemplate *AWSCognitoUserPool_InviteMessageTemplate `json:"InviteMessageTemplate,omitempty"` - - // UnusedAccountValidityDays AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-unusedaccountvaliditydays - UnusedAccountValidityDays int `json:"UnusedAccountValidityDays,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_AdminCreateUserConfig) AWSCloudFormationType() string { - return "AWS::Cognito::UserPool.AdminCreateUserConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_AdminCreateUserConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_AdminCreateUserConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_AdminCreateUserConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_AdminCreateUserConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_AdminCreateUserConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_AdminCreateUserConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpool_deviceconfiguration.go b/cloudformation/resources/aws-cognito-userpool_deviceconfiguration.go deleted file mode 100644 index cae7412db9..0000000000 --- a/cloudformation/resources/aws-cognito-userpool_deviceconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPool_DeviceConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPool.DeviceConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html -type AWSCognitoUserPool_DeviceConfiguration struct { - - // ChallengeRequiredOnNewDevice AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-challengerequiredonnewdevice - ChallengeRequiredOnNewDevice bool `json:"ChallengeRequiredOnNewDevice,omitempty"` - - // DeviceOnlyRememberedOnUserPrompt AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-deviceonlyrememberedonuserprompt - DeviceOnlyRememberedOnUserPrompt bool `json:"DeviceOnlyRememberedOnUserPrompt,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_DeviceConfiguration) AWSCloudFormationType() string { - return "AWS::Cognito::UserPool.DeviceConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_DeviceConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_DeviceConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_DeviceConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_DeviceConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_DeviceConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_DeviceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpool_numberattributeconstraints.go b/cloudformation/resources/aws-cognito-userpool_numberattributeconstraints.go deleted file mode 100644 index 856ba0db3e..0000000000 --- a/cloudformation/resources/aws-cognito-userpool_numberattributeconstraints.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPool_NumberAttributeConstraints AWS CloudFormation Resource (AWS::Cognito::UserPool.NumberAttributeConstraints) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html -type AWSCognitoUserPool_NumberAttributeConstraints struct { - - // MaxValue AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-maxvalue - MaxValue string `json:"MaxValue,omitempty"` - - // MinValue AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-minvalue - MinValue string `json:"MinValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_NumberAttributeConstraints) AWSCloudFormationType() string { - return "AWS::Cognito::UserPool.NumberAttributeConstraints" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_NumberAttributeConstraints) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_NumberAttributeConstraints) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_NumberAttributeConstraints) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_NumberAttributeConstraints) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_NumberAttributeConstraints) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_NumberAttributeConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpool_policies.go b/cloudformation/resources/aws-cognito-userpool_policies.go deleted file mode 100644 index 7dfb51487e..0000000000 --- a/cloudformation/resources/aws-cognito-userpool_policies.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPool_Policies AWS CloudFormation Resource (AWS::Cognito::UserPool.Policies) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html -type AWSCognitoUserPool_Policies struct { - - // PasswordPolicy AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html#cfn-cognito-userpool-policies-passwordpolicy - PasswordPolicy *AWSCognitoUserPool_PasswordPolicy `json:"PasswordPolicy,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_Policies) AWSCloudFormationType() string { - return "AWS::Cognito::UserPool.Policies" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_Policies) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_Policies) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_Policies) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_Policies) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_Policies) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_Policies) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpool_smsconfiguration.go b/cloudformation/resources/aws-cognito-userpool_smsconfiguration.go deleted file mode 100644 index b4ead4085e..0000000000 --- a/cloudformation/resources/aws-cognito-userpool_smsconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPool_SmsConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPool.SmsConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html -type AWSCognitoUserPool_SmsConfiguration struct { - - // ExternalId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-externalid - ExternalId string `json:"ExternalId,omitempty"` - - // SnsCallerArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-snscallerarn - SnsCallerArn string `json:"SnsCallerArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_SmsConfiguration) AWSCloudFormationType() string { - return "AWS::Cognito::UserPool.SmsConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_SmsConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_SmsConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_SmsConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_SmsConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_SmsConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_SmsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpool_stringattributeconstraints.go b/cloudformation/resources/aws-cognito-userpool_stringattributeconstraints.go deleted file mode 100644 index c63b2403d4..0000000000 --- a/cloudformation/resources/aws-cognito-userpool_stringattributeconstraints.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPool_StringAttributeConstraints AWS CloudFormation Resource (AWS::Cognito::UserPool.StringAttributeConstraints) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html -type AWSCognitoUserPool_StringAttributeConstraints struct { - - // MaxLength AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-maxlength - MaxLength string `json:"MaxLength,omitempty"` - - // MinLength AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-minlength - MinLength string `json:"MinLength,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_StringAttributeConstraints) AWSCloudFormationType() string { - return "AWS::Cognito::UserPool.StringAttributeConstraints" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_StringAttributeConstraints) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_StringAttributeConstraints) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_StringAttributeConstraints) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_StringAttributeConstraints) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_StringAttributeConstraints) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_StringAttributeConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpool_userpooladdons.go b/cloudformation/resources/aws-cognito-userpool_userpooladdons.go deleted file mode 100644 index 4a3c30bf3b..0000000000 --- a/cloudformation/resources/aws-cognito-userpool_userpooladdons.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPool_UserPoolAddOns AWS CloudFormation Resource (AWS::Cognito::UserPool.UserPoolAddOns) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html -type AWSCognitoUserPool_UserPoolAddOns struct { - - // AdvancedSecurityMode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html#cfn-cognito-userpool-userpooladdons-advancedsecuritymode - AdvancedSecurityMode string `json:"AdvancedSecurityMode,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_UserPoolAddOns) AWSCloudFormationType() string { - return "AWS::Cognito::UserPool.UserPoolAddOns" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_UserPoolAddOns) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPool_UserPoolAddOns) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_UserPoolAddOns) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPool_UserPoolAddOns) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_UserPoolAddOns) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPool_UserPoolAddOns) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpooldomain_customdomainconfigtype.go b/cloudformation/resources/aws-cognito-userpooldomain_customdomainconfigtype.go deleted file mode 100644 index 3f96164e50..0000000000 --- a/cloudformation/resources/aws-cognito-userpooldomain_customdomainconfigtype.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolDomain_CustomDomainConfigType AWS CloudFormation Resource (AWS::Cognito::UserPoolDomain.CustomDomainConfigType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html -type AWSCognitoUserPoolDomain_CustomDomainConfigType struct { - - // CertificateArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html#cfn-cognito-userpooldomain-customdomainconfigtype-certificatearn - CertificateArn string `json:"CertificateArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolDomain_CustomDomainConfigType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolDomain.CustomDomainConfigType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolDomain_CustomDomainConfigType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolDomain_CustomDomainConfigType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolDomain_CustomDomainConfigType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolDomain_CustomDomainConfigType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolDomain_CustomDomainConfigType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolDomain_CustomDomainConfigType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolresourceserver_resourceserverscopetype.go b/cloudformation/resources/aws-cognito-userpoolresourceserver_resourceserverscopetype.go deleted file mode 100644 index 149dca45c4..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolresourceserver_resourceserverscopetype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolResourceServer_ResourceServerScopeType AWS CloudFormation Resource (AWS::Cognito::UserPoolResourceServer.ResourceServerScopeType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html -type AWSCognitoUserPoolResourceServer_ResourceServerScopeType struct { - - // ScopeDescription AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html#cfn-cognito-userpoolresourceserver-resourceserverscopetype-scopedescription - ScopeDescription string `json:"ScopeDescription,omitempty"` - - // ScopeName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html#cfn-cognito-userpoolresourceserver-resourceserverscopetype-scopename - ScopeName string `json:"ScopeName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolResourceServer.ResourceServerScopeType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment.go deleted file mode 100644 index aa0d62bcd3..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment.go +++ /dev/null @@ -1,143 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSCognitoUserPoolRiskConfigurationAttachment AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html -type AWSCognitoUserPoolRiskConfigurationAttachment struct { - - // AccountTakeoverRiskConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfiguration - AccountTakeoverRiskConfiguration *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType `json:"AccountTakeoverRiskConfiguration,omitempty"` - - // ClientId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-clientid - ClientId string `json:"ClientId,omitempty"` - - // CompromisedCredentialsRiskConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfiguration - CompromisedCredentialsRiskConfiguration *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType `json:"CompromisedCredentialsRiskConfiguration,omitempty"` - - // RiskExceptionConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfiguration - RiskExceptionConfiguration *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType `json:"RiskExceptionConfiguration,omitempty"` - - // UserPoolId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-userpoolid - UserPoolId string `json:"UserPoolId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSCognitoUserPoolRiskConfigurationAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolRiskConfigurationAttachment - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolRiskConfigurationAttachment - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSCognitoUserPoolRiskConfigurationAttachment(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go deleted file mode 100644 index edf68071a3..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionsType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html -type AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType struct { - - // HighAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-highaction - HighAction *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"HighAction,omitempty"` - - // LowAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-lowaction - LowAction *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"LowAction,omitempty"` - - // MediumAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-mediumaction - MediumAction *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"MediumAction,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionsType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go deleted file mode 100644 index df0ed0b2e5..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html -type AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType struct { - - // EventAction AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype-eventaction - EventAction string `json:"EventAction,omitempty"` - - // Notify AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype-notify - Notify bool `json:"Notify"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go deleted file mode 100644 index deb36a07a1..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverRiskConfigurationType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html -type AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType struct { - - // Actions AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype-actions - Actions *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType `json:"Actions,omitempty"` - - // NotifyConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype-notifyconfiguration - NotifyConfiguration *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType `json:"NotifyConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverRiskConfigurationType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go deleted file mode 100644 index 3faf785cc6..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsActionsType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype.html -type AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType struct { - - // EventAction AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype-eventaction - EventAction string `json:"EventAction,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsActionsType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go deleted file mode 100644 index 3bc775d031..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsRiskConfigurationType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html -type AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType struct { - - // Actions AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype-actions - Actions *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType `json:"Actions,omitempty"` - - // EventFilter AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype-eventfilter - EventFilter []string `json:"EventFilter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsRiskConfigurationType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go deleted file mode 100644 index bb58b767e7..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go +++ /dev/null @@ -1,88 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyConfigurationType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html -type AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType struct { - - // BlockEmail AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-blockemail - BlockEmail *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType `json:"BlockEmail,omitempty"` - - // From AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-from - From string `json:"From,omitempty"` - - // MfaEmail AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-mfaemail - MfaEmail *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType `json:"MfaEmail,omitempty"` - - // NoActionEmail AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-noactionemail - NoActionEmail *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType `json:"NoActionEmail,omitempty"` - - // ReplyTo AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-replyto - ReplyTo string `json:"ReplyTo,omitempty"` - - // SourceArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-sourcearn - SourceArn string `json:"SourceArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyConfigurationType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go deleted file mode 100644 index c301c084d9..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyEmailType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html -type AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType struct { - - // HtmlBody AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-htmlbody - HtmlBody string `json:"HtmlBody,omitempty"` - - // Subject AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-subject - Subject string `json:"Subject,omitempty"` - - // TextBody AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-textbody - TextBody string `json:"TextBody,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyEmailType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go b/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go deleted file mode 100644 index 137c1fde51..0000000000 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.RiskExceptionConfigurationType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html -type AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType struct { - - // BlockedIPRangeList AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype-blockediprangelist - BlockedIPRangeList []string `json:"BlockedIPRangeList,omitempty"` - - // SkippedIPRangeList AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype-skippediprangelist - SkippedIPRangeList []string `json:"SkippedIPRangeList,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolRiskConfigurationAttachment.RiskExceptionConfigurationType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-cognito-userpooluser_attributetype.go b/cloudformation/resources/aws-cognito-userpooluser_attributetype.go deleted file mode 100644 index 453ef21338..0000000000 --- a/cloudformation/resources/aws-cognito-userpooluser_attributetype.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSCognitoUserPoolUser_AttributeType AWS CloudFormation Resource (AWS::Cognito::UserPoolUser.AttributeType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html -type AWSCognitoUserPoolUser_AttributeType struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolUser_AttributeType) AWSCloudFormationType() string { - return "AWS::Cognito::UserPoolUser.AttributeType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolUser_AttributeType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSCognitoUserPoolUser_AttributeType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolUser_AttributeType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSCognitoUserPoolUser_AttributeType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolUser_AttributeType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSCognitoUserPoolUser_AttributeType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-config-configurationaggregator_accountaggregationsource.go b/cloudformation/resources/aws-config-configurationaggregator_accountaggregationsource.go deleted file mode 100644 index 183648e955..0000000000 --- a/cloudformation/resources/aws-config-configurationaggregator_accountaggregationsource.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSConfigConfigurationAggregator_AccountAggregationSource AWS CloudFormation Resource (AWS::Config::ConfigurationAggregator.AccountAggregationSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html -type AWSConfigConfigurationAggregator_AccountAggregationSource struct { - - // AccountIds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-accountids - AccountIds []string `json:"AccountIds,omitempty"` - - // AllAwsRegions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-allawsregions - AllAwsRegions bool `json:"AllAwsRegions,omitempty"` - - // AwsRegions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-awsregions - AwsRegions []string `json:"AwsRegions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigurationAggregator_AccountAggregationSource) AWSCloudFormationType() string { - return "AWS::Config::ConfigurationAggregator.AccountAggregationSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationAggregator_AccountAggregationSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationAggregator_AccountAggregationSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationAggregator_AccountAggregationSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationAggregator_AccountAggregationSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationAggregator_AccountAggregationSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationAggregator_AccountAggregationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-config-configurationaggregator_organizationaggregationsource.go b/cloudformation/resources/aws-config-configurationaggregator_organizationaggregationsource.go deleted file mode 100644 index 27a2851c1f..0000000000 --- a/cloudformation/resources/aws-config-configurationaggregator_organizationaggregationsource.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSConfigConfigurationAggregator_OrganizationAggregationSource AWS CloudFormation Resource (AWS::Config::ConfigurationAggregator.OrganizationAggregationSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html -type AWSConfigConfigurationAggregator_OrganizationAggregationSource struct { - - // AllAwsRegions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-allawsregions - AllAwsRegions bool `json:"AllAwsRegions,omitempty"` - - // AwsRegions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-awsregions - AwsRegions []string `json:"AwsRegions,omitempty"` - - // RoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-rolearn - RoleArn string `json:"RoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigurationAggregator_OrganizationAggregationSource) AWSCloudFormationType() string { - return "AWS::Config::ConfigurationAggregator.OrganizationAggregationSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationAggregator_OrganizationAggregationSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigConfigurationAggregator_OrganizationAggregationSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationAggregator_OrganizationAggregationSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigConfigurationAggregator_OrganizationAggregationSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationAggregator_OrganizationAggregationSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigConfigurationAggregator_OrganizationAggregationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-config-deliverychannel_configsnapshotdeliveryproperties.go b/cloudformation/resources/aws-config-deliverychannel_configsnapshotdeliveryproperties.go deleted file mode 100644 index 62fe68aed5..0000000000 --- a/cloudformation/resources/aws-config-deliverychannel_configsnapshotdeliveryproperties.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties AWS CloudFormation Resource (AWS::Config::DeliveryChannel.ConfigSnapshotDeliveryProperties) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html -type AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties struct { - - // DeliveryFrequency AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties-deliveryfrequency - DeliveryFrequency string `json:"DeliveryFrequency,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) AWSCloudFormationType() string { - return "AWS::Config::DeliveryChannel.ConfigSnapshotDeliveryProperties" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-config-remediationconfiguration_executioncontrols.go b/cloudformation/resources/aws-config-remediationconfiguration_executioncontrols.go deleted file mode 100644 index 3074a74a3f..0000000000 --- a/cloudformation/resources/aws-config-remediationconfiguration_executioncontrols.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSConfigRemediationConfiguration_ExecutionControls AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.ExecutionControls) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-executioncontrols.html -type AWSConfigRemediationConfiguration_ExecutionControls struct { - - // SsmControls AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-executioncontrols.html#cfn-config-remediationconfiguration-executioncontrols-ssmcontrols - SsmControls *AWSConfigRemediationConfiguration_SsmControls `json:"SsmControls,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_ExecutionControls) AWSCloudFormationType() string { - return "AWS::Config::RemediationConfiguration.ExecutionControls" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_ExecutionControls) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_ExecutionControls) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_ExecutionControls) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_ExecutionControls) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_ExecutionControls) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_ExecutionControls) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-config-remediationconfiguration_remediationparametervalue.go b/cloudformation/resources/aws-config-remediationconfiguration_remediationparametervalue.go deleted file mode 100644 index 16a517f97a..0000000000 --- a/cloudformation/resources/aws-config-remediationconfiguration_remediationparametervalue.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSConfigRemediationConfiguration_RemediationParameterValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.RemediationParameterValue) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html -type AWSConfigRemediationConfiguration_RemediationParameterValue struct { - - // ResourceValue AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html#cfn-config-remediationconfiguration-remediationparametervalue-resourcevalue - ResourceValue *AWSConfigRemediationConfiguration_ResourceValue `json:"ResourceValue,omitempty"` - - // StaticValue AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html#cfn-config-remediationconfiguration-remediationparametervalue-staticvalue - StaticValue *AWSConfigRemediationConfiguration_StaticValue `json:"StaticValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_RemediationParameterValue) AWSCloudFormationType() string { - return "AWS::Config::RemediationConfiguration.RemediationParameterValue" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_RemediationParameterValue) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_RemediationParameterValue) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_RemediationParameterValue) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_RemediationParameterValue) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_RemediationParameterValue) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_RemediationParameterValue) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-config-remediationconfiguration_resourcevalue.go b/cloudformation/resources/aws-config-remediationconfiguration_resourcevalue.go deleted file mode 100644 index 48fd3f8f8e..0000000000 --- a/cloudformation/resources/aws-config-remediationconfiguration_resourcevalue.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSConfigRemediationConfiguration_ResourceValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.ResourceValue) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-resourcevalue.html -type AWSConfigRemediationConfiguration_ResourceValue struct { - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-resourcevalue.html#cfn-config-remediationconfiguration-resourcevalue-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_ResourceValue) AWSCloudFormationType() string { - return "AWS::Config::RemediationConfiguration.ResourceValue" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_ResourceValue) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_ResourceValue) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_ResourceValue) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_ResourceValue) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_ResourceValue) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_ResourceValue) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-config-remediationconfiguration_ssmcontrols.go b/cloudformation/resources/aws-config-remediationconfiguration_ssmcontrols.go deleted file mode 100644 index 67885289f8..0000000000 --- a/cloudformation/resources/aws-config-remediationconfiguration_ssmcontrols.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSConfigRemediationConfiguration_SsmControls AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.SsmControls) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html -type AWSConfigRemediationConfiguration_SsmControls struct { - - // ConcurrentExecutionRatePercentage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html#cfn-config-remediationconfiguration-ssmcontrols-concurrentexecutionratepercentage - ConcurrentExecutionRatePercentage int `json:"ConcurrentExecutionRatePercentage,omitempty"` - - // ErrorPercentage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html#cfn-config-remediationconfiguration-ssmcontrols-errorpercentage - ErrorPercentage int `json:"ErrorPercentage,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_SsmControls) AWSCloudFormationType() string { - return "AWS::Config::RemediationConfiguration.SsmControls" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_SsmControls) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_SsmControls) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_SsmControls) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_SsmControls) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_SsmControls) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_SsmControls) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-config-remediationconfiguration_staticvalue.go b/cloudformation/resources/aws-config-remediationconfiguration_staticvalue.go deleted file mode 100644 index 3504679ae4..0000000000 --- a/cloudformation/resources/aws-config-remediationconfiguration_staticvalue.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSConfigRemediationConfiguration_StaticValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.StaticValue) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-staticvalue.html -type AWSConfigRemediationConfiguration_StaticValue struct { - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-staticvalue.html#cfn-config-remediationconfiguration-staticvalue-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_StaticValue) AWSCloudFormationType() string { - return "AWS::Config::RemediationConfiguration.StaticValue" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_StaticValue) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSConfigRemediationConfiguration_StaticValue) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_StaticValue) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSConfigRemediationConfiguration_StaticValue) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_StaticValue) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSConfigRemediationConfiguration_StaticValue) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-datapipeline-pipeline_parameterattribute.go b/cloudformation/resources/aws-datapipeline-pipeline_parameterattribute.go deleted file mode 100644 index 259f92c0fb..0000000000 --- a/cloudformation/resources/aws-datapipeline-pipeline_parameterattribute.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDataPipelinePipeline_ParameterAttribute AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterAttribute) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html -type AWSDataPipelinePipeline_ParameterAttribute struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html#cfn-datapipeline-pipeline-parameterobjects-attribtues-key - Key string `json:"Key,omitempty"` - - // StringValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html#cfn-datapipeline-pipeline-parameterobjects-attribtues-stringvalue - StringValue string `json:"StringValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_ParameterAttribute) AWSCloudFormationType() string { - return "AWS::DataPipeline::Pipeline.ParameterAttribute" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_ParameterAttribute) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_ParameterAttribute) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_ParameterAttribute) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_ParameterAttribute) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_ParameterAttribute) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_ParameterAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-datapipeline-pipeline_parameterobject.go b/cloudformation/resources/aws-datapipeline-pipeline_parameterobject.go deleted file mode 100644 index c3e63afdbb..0000000000 --- a/cloudformation/resources/aws-datapipeline-pipeline_parameterobject.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDataPipelinePipeline_ParameterObject AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterObject) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html -type AWSDataPipelinePipeline_ParameterObject struct { - - // Attributes AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html#cfn-datapipeline-pipeline-parameterobjects-attributes - Attributes []AWSDataPipelinePipeline_ParameterAttribute `json:"Attributes,omitempty"` - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html#cfn-datapipeline-pipeline-parameterobjects-id - Id string `json:"Id,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_ParameterObject) AWSCloudFormationType() string { - return "AWS::DataPipeline::Pipeline.ParameterObject" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_ParameterObject) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_ParameterObject) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_ParameterObject) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_ParameterObject) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_ParameterObject) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_ParameterObject) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-datapipeline-pipeline_parametervalue.go b/cloudformation/resources/aws-datapipeline-pipeline_parametervalue.go deleted file mode 100644 index 269367ed61..0000000000 --- a/cloudformation/resources/aws-datapipeline-pipeline_parametervalue.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDataPipelinePipeline_ParameterValue AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterValue) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html -type AWSDataPipelinePipeline_ParameterValue struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html#cfn-datapipeline-pipeline-parametervalues-id - Id string `json:"Id,omitempty"` - - // StringValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html#cfn-datapipeline-pipeline-parametervalues-stringvalue - StringValue string `json:"StringValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_ParameterValue) AWSCloudFormationType() string { - return "AWS::DataPipeline::Pipeline.ParameterValue" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_ParameterValue) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_ParameterValue) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_ParameterValue) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_ParameterValue) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_ParameterValue) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_ParameterValue) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-datapipeline-pipeline_pipelineobject.go b/cloudformation/resources/aws-datapipeline-pipeline_pipelineobject.go deleted file mode 100644 index d6a2ef2ac8..0000000000 --- a/cloudformation/resources/aws-datapipeline-pipeline_pipelineobject.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDataPipelinePipeline_PipelineObject AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.PipelineObject) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html -type AWSDataPipelinePipeline_PipelineObject struct { - - // Fields AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-fields - Fields []AWSDataPipelinePipeline_Field `json:"Fields,omitempty"` - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-id - Id string `json:"Id,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_PipelineObject) AWSCloudFormationType() string { - return "AWS::DataPipeline::Pipeline.PipelineObject" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_PipelineObject) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_PipelineObject) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_PipelineObject) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_PipelineObject) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_PipelineObject) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_PipelineObject) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-datapipeline-pipeline_pipelinetag.go b/cloudformation/resources/aws-datapipeline-pipeline_pipelinetag.go deleted file mode 100644 index 60b878b701..0000000000 --- a/cloudformation/resources/aws-datapipeline-pipeline_pipelinetag.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDataPipelinePipeline_PipelineTag AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.PipelineTag) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html -type AWSDataPipelinePipeline_PipelineTag struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html#cfn-datapipeline-pipeline-pipelinetags-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html#cfn-datapipeline-pipeline-pipelinetags-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_PipelineTag) AWSCloudFormationType() string { - return "AWS::DataPipeline::Pipeline.PipelineTag" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_PipelineTag) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDataPipelinePipeline_PipelineTag) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_PipelineTag) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDataPipelinePipeline_PipelineTag) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_PipelineTag) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDataPipelinePipeline_PipelineTag) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dax-cluster_ssespecification.go b/cloudformation/resources/aws-dax-cluster_ssespecification.go deleted file mode 100644 index db0e0fdeaf..0000000000 --- a/cloudformation/resources/aws-dax-cluster_ssespecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDAXCluster_SSESpecification AWS CloudFormation Resource (AWS::DAX::Cluster.SSESpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html -type AWSDAXCluster_SSESpecification struct { - - // SSEEnabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html#cfn-dax-cluster-ssespecification-sseenabled - SSEEnabled bool `json:"SSEEnabled,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDAXCluster_SSESpecification) AWSCloudFormationType() string { - return "AWS::DAX::Cluster.SSESpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDAXCluster_SSESpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDAXCluster_SSESpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDAXCluster_SSESpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDAXCluster_SSESpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDAXCluster_SSESpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDAXCluster_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-directoryservice-microsoftad_vpcsettings.go b/cloudformation/resources/aws-directoryservice-microsoftad_vpcsettings.go deleted file mode 100644 index 3ac9474ba8..0000000000 --- a/cloudformation/resources/aws-directoryservice-microsoftad_vpcsettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDirectoryServiceMicrosoftAD_VpcSettings AWS CloudFormation Resource (AWS::DirectoryService::MicrosoftAD.VpcSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html -type AWSDirectoryServiceMicrosoftAD_VpcSettings struct { - - // SubnetIds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-subnetids - SubnetIds []string `json:"SubnetIds,omitempty"` - - // VpcId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-vpcid - VpcId string `json:"VpcId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDirectoryServiceMicrosoftAD_VpcSettings) AWSCloudFormationType() string { - return "AWS::DirectoryService::MicrosoftAD.VpcSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDirectoryServiceMicrosoftAD_VpcSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDirectoryServiceMicrosoftAD_VpcSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDirectoryServiceMicrosoftAD_VpcSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDirectoryServiceMicrosoftAD_VpcSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDirectoryServiceMicrosoftAD_VpcSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDirectoryServiceMicrosoftAD_VpcSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-directoryservice-simplead_vpcsettings.go b/cloudformation/resources/aws-directoryservice-simplead_vpcsettings.go deleted file mode 100644 index b8b20481ea..0000000000 --- a/cloudformation/resources/aws-directoryservice-simplead_vpcsettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDirectoryServiceSimpleAD_VpcSettings AWS CloudFormation Resource (AWS::DirectoryService::SimpleAD.VpcSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html -type AWSDirectoryServiceSimpleAD_VpcSettings struct { - - // SubnetIds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-subnetids - SubnetIds []string `json:"SubnetIds,omitempty"` - - // VpcId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-vpcid - VpcId string `json:"VpcId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDirectoryServiceSimpleAD_VpcSettings) AWSCloudFormationType() string { - return "AWS::DirectoryService::SimpleAD.VpcSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDirectoryServiceSimpleAD_VpcSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDirectoryServiceSimpleAD_VpcSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDirectoryServiceSimpleAD_VpcSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDirectoryServiceSimpleAD_VpcSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDirectoryServiceSimpleAD_VpcSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDirectoryServiceSimpleAD_VpcSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dlm-lifecyclepolicy_parameters.go b/cloudformation/resources/aws-dlm-lifecyclepolicy_parameters.go deleted file mode 100644 index 105553db55..0000000000 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy_parameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDLMLifecyclePolicy_Parameters AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.Parameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html -type AWSDLMLifecyclePolicy_Parameters struct { - - // ExcludeBootVolume AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html#cfn-dlm-lifecyclepolicy-parameters-excludebootvolume - ExcludeBootVolume bool `json:"ExcludeBootVolume,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy_Parameters) AWSCloudFormationType() string { - return "AWS::DLM::LifecyclePolicy.Parameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_Parameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_Parameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_Parameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_Parameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_Parameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_Parameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dlm-lifecyclepolicy_policydetails.go b/cloudformation/resources/aws-dlm-lifecyclepolicy_policydetails.go deleted file mode 100644 index a6f6ee9f10..0000000000 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy_policydetails.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDLMLifecyclePolicy_PolicyDetails AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.PolicyDetails) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html -type AWSDLMLifecyclePolicy_PolicyDetails struct { - - // Parameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-parameters - Parameters *AWSDLMLifecyclePolicy_Parameters `json:"Parameters,omitempty"` - - // PolicyType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-policytype - PolicyType string `json:"PolicyType,omitempty"` - - // ResourceTypes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-resourcetypes - ResourceTypes []string `json:"ResourceTypes,omitempty"` - - // Schedules AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-schedules - Schedules []AWSDLMLifecyclePolicy_Schedule `json:"Schedules,omitempty"` - - // TargetTags AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-targettags - TargetTags []Tag `json:"TargetTags,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy_PolicyDetails) AWSCloudFormationType() string { - return "AWS::DLM::LifecyclePolicy.PolicyDetails" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_PolicyDetails) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_PolicyDetails) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_PolicyDetails) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_PolicyDetails) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_PolicyDetails) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_PolicyDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dlm-lifecyclepolicy_retainrule.go b/cloudformation/resources/aws-dlm-lifecyclepolicy_retainrule.go deleted file mode 100644 index 3c53c3c65b..0000000000 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy_retainrule.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDLMLifecyclePolicy_RetainRule AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.RetainRule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html -type AWSDLMLifecyclePolicy_RetainRule struct { - - // Count AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-count - Count int `json:"Count"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy_RetainRule) AWSCloudFormationType() string { - return "AWS::DLM::LifecyclePolicy.RetainRule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_RetainRule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDLMLifecyclePolicy_RetainRule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_RetainRule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDLMLifecyclePolicy_RetainRule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_RetainRule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDLMLifecyclePolicy_RetainRule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dms-endpoint_dynamodbsettings.go b/cloudformation/resources/aws-dms-endpoint_dynamodbsettings.go deleted file mode 100644 index 27e4383edd..0000000000 --- a/cloudformation/resources/aws-dms-endpoint_dynamodbsettings.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDMSEndpoint_DynamoDbSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.DynamoDbSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-dynamodbsettings.html -type AWSDMSEndpoint_DynamoDbSettings struct { - - // ServiceAccessRoleArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-dynamodbsettings.html#cfn-dms-endpoint-dynamodbsettings-serviceaccessrolearn - ServiceAccessRoleArn string `json:"ServiceAccessRoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSEndpoint_DynamoDbSettings) AWSCloudFormationType() string { - return "AWS::DMS::Endpoint.DynamoDbSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_DynamoDbSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDMSEndpoint_DynamoDbSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_DynamoDbSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDMSEndpoint_DynamoDbSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_DynamoDbSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDMSEndpoint_DynamoDbSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dynamodb-table_attributedefinition.go b/cloudformation/resources/aws-dynamodb-table_attributedefinition.go deleted file mode 100644 index 8701d556c8..0000000000 --- a/cloudformation/resources/aws-dynamodb-table_attributedefinition.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDynamoDBTable_AttributeDefinition AWS CloudFormation Resource (AWS::DynamoDB::Table.AttributeDefinition) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html -type AWSDynamoDBTable_AttributeDefinition struct { - - // AttributeName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename - AttributeName string `json:"AttributeName,omitempty"` - - // AttributeType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename-attributetype - AttributeType string `json:"AttributeType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_AttributeDefinition) AWSCloudFormationType() string { - return "AWS::DynamoDB::Table.AttributeDefinition" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_AttributeDefinition) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_AttributeDefinition) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_AttributeDefinition) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_AttributeDefinition) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_AttributeDefinition) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_AttributeDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dynamodb-table_globalsecondaryindex.go b/cloudformation/resources/aws-dynamodb-table_globalsecondaryindex.go deleted file mode 100644 index 5562892446..0000000000 --- a/cloudformation/resources/aws-dynamodb-table_globalsecondaryindex.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDynamoDBTable_GlobalSecondaryIndex AWS CloudFormation Resource (AWS::DynamoDB::Table.GlobalSecondaryIndex) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html -type AWSDynamoDBTable_GlobalSecondaryIndex struct { - - // IndexName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-indexname - IndexName string `json:"IndexName,omitempty"` - - // KeySchema AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-keyschema - KeySchema []AWSDynamoDBTable_KeySchema `json:"KeySchema,omitempty"` - - // Projection AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-projection - Projection *AWSDynamoDBTable_Projection `json:"Projection,omitempty"` - - // ProvisionedThroughput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-provisionedthroughput - ProvisionedThroughput *AWSDynamoDBTable_ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_GlobalSecondaryIndex) AWSCloudFormationType() string { - return "AWS::DynamoDB::Table.GlobalSecondaryIndex" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_GlobalSecondaryIndex) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_GlobalSecondaryIndex) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_GlobalSecondaryIndex) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_GlobalSecondaryIndex) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_GlobalSecondaryIndex) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_GlobalSecondaryIndex) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dynamodb-table_localsecondaryindex.go b/cloudformation/resources/aws-dynamodb-table_localsecondaryindex.go deleted file mode 100644 index 268420d88a..0000000000 --- a/cloudformation/resources/aws-dynamodb-table_localsecondaryindex.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDynamoDBTable_LocalSecondaryIndex AWS CloudFormation Resource (AWS::DynamoDB::Table.LocalSecondaryIndex) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html -type AWSDynamoDBTable_LocalSecondaryIndex struct { - - // IndexName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-indexname - IndexName string `json:"IndexName,omitempty"` - - // KeySchema AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-keyschema - KeySchema []AWSDynamoDBTable_KeySchema `json:"KeySchema,omitempty"` - - // Projection AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-projection - Projection *AWSDynamoDBTable_Projection `json:"Projection,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_LocalSecondaryIndex) AWSCloudFormationType() string { - return "AWS::DynamoDB::Table.LocalSecondaryIndex" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_LocalSecondaryIndex) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_LocalSecondaryIndex) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_LocalSecondaryIndex) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_LocalSecondaryIndex) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_LocalSecondaryIndex) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_LocalSecondaryIndex) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dynamodb-table_pointintimerecoveryspecification.go b/cloudformation/resources/aws-dynamodb-table_pointintimerecoveryspecification.go deleted file mode 100644 index cfbfd24776..0000000000 --- a/cloudformation/resources/aws-dynamodb-table_pointintimerecoveryspecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDynamoDBTable_PointInTimeRecoverySpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.PointInTimeRecoverySpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html -type AWSDynamoDBTable_PointInTimeRecoverySpecification struct { - - // PointInTimeRecoveryEnabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html#cfn-dynamodb-table-pointintimerecoveryspecification-pointintimerecoveryenabled - PointInTimeRecoveryEnabled bool `json:"PointInTimeRecoveryEnabled,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_PointInTimeRecoverySpecification) AWSCloudFormationType() string { - return "AWS::DynamoDB::Table.PointInTimeRecoverySpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_PointInTimeRecoverySpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_PointInTimeRecoverySpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_PointInTimeRecoverySpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_PointInTimeRecoverySpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_PointInTimeRecoverySpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_PointInTimeRecoverySpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dynamodb-table_provisionedthroughput.go b/cloudformation/resources/aws-dynamodb-table_provisionedthroughput.go deleted file mode 100644 index f31eceeb37..0000000000 --- a/cloudformation/resources/aws-dynamodb-table_provisionedthroughput.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDynamoDBTable_ProvisionedThroughput AWS CloudFormation Resource (AWS::DynamoDB::Table.ProvisionedThroughput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html -type AWSDynamoDBTable_ProvisionedThroughput struct { - - // ReadCapacityUnits AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-readcapacityunits - ReadCapacityUnits int64 `json:"ReadCapacityUnits"` - - // WriteCapacityUnits AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-writecapacityunits - WriteCapacityUnits int64 `json:"WriteCapacityUnits"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_ProvisionedThroughput) AWSCloudFormationType() string { - return "AWS::DynamoDB::Table.ProvisionedThroughput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_ProvisionedThroughput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_ProvisionedThroughput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_ProvisionedThroughput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_ProvisionedThroughput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_ProvisionedThroughput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_ProvisionedThroughput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dynamodb-table_streamspecification.go b/cloudformation/resources/aws-dynamodb-table_streamspecification.go deleted file mode 100644 index a65c76a53f..0000000000 --- a/cloudformation/resources/aws-dynamodb-table_streamspecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDynamoDBTable_StreamSpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.StreamSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html -type AWSDynamoDBTable_StreamSpecification struct { - - // StreamViewType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html#cfn-dynamodb-streamspecification-streamviewtype - StreamViewType string `json:"StreamViewType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_StreamSpecification) AWSCloudFormationType() string { - return "AWS::DynamoDB::Table.StreamSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_StreamSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_StreamSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_StreamSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_StreamSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_StreamSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_StreamSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-dynamodb-table_timetolivespecification.go b/cloudformation/resources/aws-dynamodb-table_timetolivespecification.go deleted file mode 100644 index 2dd6aa5861..0000000000 --- a/cloudformation/resources/aws-dynamodb-table_timetolivespecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSDynamoDBTable_TimeToLiveSpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.TimeToLiveSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html -type AWSDynamoDBTable_TimeToLiveSpecification struct { - - // AttributeName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-attributename - AttributeName string `json:"AttributeName,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-enabled - Enabled bool `json:"Enabled"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_TimeToLiveSpecification) AWSCloudFormationType() string { - return "AWS::DynamoDB::Table.TimeToLiveSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_TimeToLiveSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSDynamoDBTable_TimeToLiveSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_TimeToLiveSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSDynamoDBTable_TimeToLiveSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_TimeToLiveSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSDynamoDBTable_TimeToLiveSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-capacityreservation_tagspecification.go b/cloudformation/resources/aws-ec2-capacityreservation_tagspecification.go deleted file mode 100644 index e40ccc0391..0000000000 --- a/cloudformation/resources/aws-ec2-capacityreservation_tagspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2CapacityReservation_TagSpecification AWS CloudFormation Resource (AWS::EC2::CapacityReservation.TagSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html -type AWSEC2CapacityReservation_TagSpecification struct { - - // ResourceType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html#cfn-ec2-capacityreservation-tagspecification-resourcetype - ResourceType string `json:"ResourceType,omitempty"` - - // Tags AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html#cfn-ec2-capacityreservation-tagspecification-tags - Tags []Tag `json:"Tags,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2CapacityReservation_TagSpecification) AWSCloudFormationType() string { - return "AWS::EC2::CapacityReservation.TagSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2CapacityReservation_TagSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2CapacityReservation_TagSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2CapacityReservation_TagSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2CapacityReservation_TagSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2CapacityReservation_TagSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2CapacityReservation_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go b/cloudformation/resources/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go deleted file mode 100644 index da7d4475f4..0000000000 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.CertificateAuthenticationRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-certificateauthenticationrequest.html -type AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest struct { - - // ClientRootCertificateChainArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-certificateauthenticationrequest.html#cfn-ec2-clientvpnendpoint-certificateauthenticationrequest-clientrootcertificatechainarn - ClientRootCertificateChainArn string `json:"ClientRootCertificateChainArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) AWSCloudFormationType() string { - return "AWS::EC2::ClientVpnEndpoint.CertificateAuthenticationRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go b/cloudformation/resources/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go deleted file mode 100644 index f12ff4b2b4..0000000000 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.ClientAuthenticationRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html -type AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest struct { - - // ActiveDirectory AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-activedirectory - ActiveDirectory *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest `json:"ActiveDirectory,omitempty"` - - // MutualAuthentication AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-mutualauthentication - MutualAuthentication *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest `json:"MutualAuthentication,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) AWSCloudFormationType() string { - return "AWS::EC2::ClientVpnEndpoint.ClientAuthenticationRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_connectionlogoptions.go b/cloudformation/resources/aws-ec2-clientvpnendpoint_connectionlogoptions.go deleted file mode 100644 index e1c17a15e2..0000000000 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_connectionlogoptions.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2ClientVpnEndpoint_ConnectionLogOptions AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.ConnectionLogOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html -type AWSEC2ClientVpnEndpoint_ConnectionLogOptions struct { - - // CloudwatchLogGroup AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-cloudwatchloggroup - CloudwatchLogGroup string `json:"CloudwatchLogGroup,omitempty"` - - // CloudwatchLogStream AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-cloudwatchlogstream - CloudwatchLogStream string `json:"CloudwatchLogStream,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-enabled - Enabled bool `json:"Enabled"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) AWSCloudFormationType() string { - return "AWS::EC2::ClientVpnEndpoint.ConnectionLogOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go b/cloudformation/resources/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go deleted file mode 100644 index 7bf2631de9..0000000000 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.DirectoryServiceAuthenticationRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-directoryserviceauthenticationrequest.html -type AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest struct { - - // DirectoryId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-directoryserviceauthenticationrequest.html#cfn-ec2-clientvpnendpoint-directoryserviceauthenticationrequest-directoryid - DirectoryId string `json:"DirectoryId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) AWSCloudFormationType() string { - return "AWS::EC2::ClientVpnEndpoint.DirectoryServiceAuthenticationRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_tagspecification.go b/cloudformation/resources/aws-ec2-clientvpnendpoint_tagspecification.go deleted file mode 100644 index ba27b173ef..0000000000 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_tagspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2ClientVpnEndpoint_TagSpecification AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.TagSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html -type AWSEC2ClientVpnEndpoint_TagSpecification struct { - - // ResourceType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html#cfn-ec2-clientvpnendpoint-tagspecification-resourcetype - ResourceType string `json:"ResourceType,omitempty"` - - // Tags AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html#cfn-ec2-clientvpnendpoint-tagspecification-tags - Tags []Tag `json:"Tags,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_TagSpecification) AWSCloudFormationType() string { - return "AWS::EC2::ClientVpnEndpoint.TagSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_TagSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2ClientVpnEndpoint_TagSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_TagSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2ClientVpnEndpoint_TagSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_TagSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2ClientVpnEndpoint_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go b/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go deleted file mode 100644 index cd648c379f..0000000000 --- a/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.FleetLaunchTemplateConfigRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html -type AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest struct { - - // LaunchTemplateSpecification AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateconfigrequest-launchtemplatespecification - LaunchTemplateSpecification *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest `json:"LaunchTemplateSpecification,omitempty"` - - // Overrides AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateconfigrequest-overrides - Overrides []AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest `json:"Overrides,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) AWSCloudFormationType() string { - return "AWS::EC2::EC2Fleet.FleetLaunchTemplateConfigRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go b/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go deleted file mode 100644 index 3fdb4b30fc..0000000000 --- a/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.FleetLaunchTemplateSpecificationRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html -type AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest struct { - - // LaunchTemplateId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-launchtemplateid - LaunchTemplateId string `json:"LaunchTemplateId,omitempty"` - - // LaunchTemplateName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-launchtemplatename - LaunchTemplateName string `json:"LaunchTemplateName,omitempty"` - - // Version AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) AWSCloudFormationType() string { - return "AWS::EC2::EC2Fleet.FleetLaunchTemplateSpecificationRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-ec2fleet_ondemandoptionsrequest.go b/cloudformation/resources/aws-ec2-ec2fleet_ondemandoptionsrequest.go deleted file mode 100644 index 71c6cfddab..0000000000 --- a/cloudformation/resources/aws-ec2-ec2fleet_ondemandoptionsrequest.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2EC2Fleet_OnDemandOptionsRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.OnDemandOptionsRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html -type AWSEC2EC2Fleet_OnDemandOptionsRequest struct { - - // AllocationStrategy AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-allocationstrategy - AllocationStrategy string `json:"AllocationStrategy,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_OnDemandOptionsRequest) AWSCloudFormationType() string { - return "AWS::EC2::EC2Fleet.OnDemandOptionsRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_OnDemandOptionsRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_OnDemandOptionsRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_OnDemandOptionsRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_OnDemandOptionsRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_OnDemandOptionsRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_OnDemandOptionsRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-ec2fleet_tagspecification.go b/cloudformation/resources/aws-ec2-ec2fleet_tagspecification.go deleted file mode 100644 index 7e6d88f964..0000000000 --- a/cloudformation/resources/aws-ec2-ec2fleet_tagspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2EC2Fleet_TagSpecification AWS CloudFormation Resource (AWS::EC2::EC2Fleet.TagSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html -type AWSEC2EC2Fleet_TagSpecification struct { - - // ResourceType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html#cfn-ec2-ec2fleet-tagspecification-resourcetype - ResourceType string `json:"ResourceType,omitempty"` - - // Tags AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html#cfn-ec2-ec2fleet-tagspecification-tags - Tags []AWSEC2EC2Fleet_TagRequest `json:"Tags,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_TagSpecification) AWSCloudFormationType() string { - return "AWS::EC2::EC2Fleet.TagSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_TagSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2EC2Fleet_TagSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_TagSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2EC2Fleet_TagSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_TagSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2EC2Fleet_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_associationparameter.go b/cloudformation/resources/aws-ec2-instance_associationparameter.go deleted file mode 100644 index e5a1e5c81b..0000000000 --- a/cloudformation/resources/aws-ec2-instance_associationparameter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_AssociationParameter AWS CloudFormation Resource (AWS::EC2::Instance.AssociationParameter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html -type AWSEC2Instance_AssociationParameter struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-value - Value []string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_AssociationParameter) AWSCloudFormationType() string { - return "AWS::EC2::Instance.AssociationParameter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_AssociationParameter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_AssociationParameter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_AssociationParameter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_AssociationParameter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_AssociationParameter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_AssociationParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_blockdevicemapping.go b/cloudformation/resources/aws-ec2-instance_blockdevicemapping.go deleted file mode 100644 index 937b5a4df5..0000000000 --- a/cloudformation/resources/aws-ec2-instance_blockdevicemapping.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_BlockDeviceMapping AWS CloudFormation Resource (AWS::EC2::Instance.BlockDeviceMapping) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html -type AWSEC2Instance_BlockDeviceMapping struct { - - // DeviceName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-devicename - DeviceName string `json:"DeviceName,omitempty"` - - // Ebs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-ebs - Ebs *AWSEC2Instance_Ebs `json:"Ebs,omitempty"` - - // NoDevice AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-nodevice - NoDevice *AWSEC2Instance_NoDevice `json:"NoDevice,omitempty"` - - // VirtualName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-virtualname - VirtualName string `json:"VirtualName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_BlockDeviceMapping) AWSCloudFormationType() string { - return "AWS::EC2::Instance.BlockDeviceMapping" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_BlockDeviceMapping) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_BlockDeviceMapping) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_BlockDeviceMapping) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_creditspecification.go b/cloudformation/resources/aws-ec2-instance_creditspecification.go deleted file mode 100644 index fcbecd909a..0000000000 --- a/cloudformation/resources/aws-ec2-instance_creditspecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_CreditSpecification AWS CloudFormation Resource (AWS::EC2::Instance.CreditSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html -type AWSEC2Instance_CreditSpecification struct { - - // CPUCredits AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html#cfn-ec2-instance-creditspecification-cpucredits - CPUCredits string `json:"CPUCredits,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_CreditSpecification) AWSCloudFormationType() string { - return "AWS::EC2::Instance.CreditSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_CreditSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_CreditSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_CreditSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_CreditSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_CreditSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_CreditSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_elasticgpuspecification.go b/cloudformation/resources/aws-ec2-instance_elasticgpuspecification.go deleted file mode 100644 index ee82bd93d7..0000000000 --- a/cloudformation/resources/aws-ec2-instance_elasticgpuspecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_ElasticGpuSpecification AWS CloudFormation Resource (AWS::EC2::Instance.ElasticGpuSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html -type AWSEC2Instance_ElasticGpuSpecification struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html#cfn-ec2-instance-elasticgpuspecification-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_ElasticGpuSpecification) AWSCloudFormationType() string { - return "AWS::EC2::Instance.ElasticGpuSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_ElasticGpuSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_ElasticGpuSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_ElasticGpuSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_ElasticGpuSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_ElasticGpuSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_ElasticGpuSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_elasticinferenceaccelerator.go b/cloudformation/resources/aws-ec2-instance_elasticinferenceaccelerator.go deleted file mode 100644 index 0650ec0422..0000000000 --- a/cloudformation/resources/aws-ec2-instance_elasticinferenceaccelerator.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_ElasticInferenceAccelerator AWS CloudFormation Resource (AWS::EC2::Instance.ElasticInferenceAccelerator) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html -type AWSEC2Instance_ElasticInferenceAccelerator struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html#cfn-ec2-instance-elasticinferenceaccelerator-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_ElasticInferenceAccelerator) AWSCloudFormationType() string { - return "AWS::EC2::Instance.ElasticInferenceAccelerator" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_ElasticInferenceAccelerator) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_ElasticInferenceAccelerator) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_ElasticInferenceAccelerator) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_ElasticInferenceAccelerator) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_ElasticInferenceAccelerator) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_ElasticInferenceAccelerator) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_instanceipv6address.go b/cloudformation/resources/aws-ec2-instance_instanceipv6address.go deleted file mode 100644 index 6f57aa3490..0000000000 --- a/cloudformation/resources/aws-ec2-instance_instanceipv6address.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::Instance.InstanceIpv6Address) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html -type AWSEC2Instance_InstanceIpv6Address struct { - - // Ipv6Address AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html#cfn-ec2-instance-instanceipv6address-ipv6address - Ipv6Address string `json:"Ipv6Address,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_InstanceIpv6Address) AWSCloudFormationType() string { - return "AWS::EC2::Instance.InstanceIpv6Address" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_InstanceIpv6Address) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_InstanceIpv6Address) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_InstanceIpv6Address) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_licensespecification.go b/cloudformation/resources/aws-ec2-instance_licensespecification.go deleted file mode 100644 index b960233b1a..0000000000 --- a/cloudformation/resources/aws-ec2-instance_licensespecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_LicenseSpecification AWS CloudFormation Resource (AWS::EC2::Instance.LicenseSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html -type AWSEC2Instance_LicenseSpecification struct { - - // LicenseConfigurationArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html#cfn-ec2-instance-licensespecification-licenseconfigurationarn - LicenseConfigurationArn string `json:"LicenseConfigurationArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_LicenseSpecification) AWSCloudFormationType() string { - return "AWS::EC2::Instance.LicenseSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_LicenseSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_LicenseSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_LicenseSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_LicenseSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_LicenseSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_LicenseSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_nodevice.go b/cloudformation/resources/aws-ec2-instance_nodevice.go deleted file mode 100644 index cf3a6b2644..0000000000 --- a/cloudformation/resources/aws-ec2-instance_nodevice.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_NoDevice AWS CloudFormation Resource (AWS::EC2::Instance.NoDevice) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-nodevice.html -type AWSEC2Instance_NoDevice struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_NoDevice) AWSCloudFormationType() string { - return "AWS::EC2::Instance.NoDevice" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_NoDevice) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_NoDevice) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_NoDevice) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_NoDevice) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_NoDevice) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_NoDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_privateipaddressspecification.go b/cloudformation/resources/aws-ec2-instance_privateipaddressspecification.go deleted file mode 100644 index eb105f077f..0000000000 --- a/cloudformation/resources/aws-ec2-instance_privateipaddressspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::Instance.PrivateIpAddressSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html -type AWSEC2Instance_PrivateIpAddressSpecification struct { - - // Primary AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary - Primary bool `json:"Primary"` - - // PrivateIpAddress AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress - PrivateIpAddress string `json:"PrivateIpAddress,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_PrivateIpAddressSpecification) AWSCloudFormationType() string { - return "AWS::EC2::Instance.PrivateIpAddressSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_PrivateIpAddressSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_PrivateIpAddressSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-instance_ssmassociation.go b/cloudformation/resources/aws-ec2-instance_ssmassociation.go deleted file mode 100644 index 73197d57af..0000000000 --- a/cloudformation/resources/aws-ec2-instance_ssmassociation.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2Instance_SsmAssociation AWS CloudFormation Resource (AWS::EC2::Instance.SsmAssociation) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html -type AWSEC2Instance_SsmAssociation struct { - - // AssociationParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-associationparameters - AssociationParameters []AWSEC2Instance_AssociationParameter `json:"AssociationParameters,omitempty"` - - // DocumentName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-documentname - DocumentName string `json:"DocumentName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_SsmAssociation) AWSCloudFormationType() string { - return "AWS::EC2::Instance.SsmAssociation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_SsmAssociation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2Instance_SsmAssociation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_SsmAssociation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2Instance_SsmAssociation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_SsmAssociation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2Instance_SsmAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationpreference.go b/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationpreference.go deleted file mode 100644 index c02e118638..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationpreference.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_CapacityReservationPreference AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationPreference) -// See: -type AWSEC2LaunchTemplate_CapacityReservationPreference struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CapacityReservationPreference) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.CapacityReservationPreference" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CapacityReservationPreference) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CapacityReservationPreference) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CapacityReservationPreference) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CapacityReservationPreference) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CapacityReservationPreference) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CapacityReservationPreference) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationspecification.go b/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationspecification.go deleted file mode 100644 index ca37fe3292..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_CapacityReservationSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html -type AWSEC2LaunchTemplate_CapacityReservationSpecification struct { - - // CapacityReservationPreference AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification-capacityreservationpreference - CapacityReservationPreference *AWSEC2LaunchTemplate_CapacityReservationPreference `json:"CapacityReservationPreference,omitempty"` - - // CapacityReservationTarget AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification-capacityreservationtarget - CapacityReservationTarget *AWSEC2LaunchTemplate_CapacityReservationTarget `json:"CapacityReservationTarget,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CapacityReservationSpecification) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.CapacityReservationSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CapacityReservationSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CapacityReservationSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CapacityReservationSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CapacityReservationSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CapacityReservationSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CapacityReservationSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationtarget.go b/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationtarget.go deleted file mode 100644 index 5ce4383fe1..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationtarget.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_CapacityReservationTarget AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationTarget) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html -type AWSEC2LaunchTemplate_CapacityReservationTarget struct { - - // CapacityReservationId AWS CloudFormation Property - // Required: false - // 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"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CapacityReservationTarget) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.CapacityReservationTarget" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CapacityReservationTarget) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CapacityReservationTarget) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CapacityReservationTarget) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CapacityReservationTarget) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CapacityReservationTarget) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CapacityReservationTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_creditspecification.go b/cloudformation/resources/aws-ec2-launchtemplate_creditspecification.go deleted file mode 100644 index 36885758b6..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_creditspecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_CreditSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CreditSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-creditspecification.html -type AWSEC2LaunchTemplate_CreditSpecification struct { - - // CpuCredits AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-creditspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-creditspecification-cpucredits - CpuCredits string `json:"CpuCredits,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CreditSpecification) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.CreditSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CreditSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_CreditSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CreditSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_CreditSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CreditSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_CreditSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_elasticgpuspecification.go b/cloudformation/resources/aws-ec2-launchtemplate_elasticgpuspecification.go deleted file mode 100644 index 87e85d0fc9..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_elasticgpuspecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_ElasticGpuSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.ElasticGpuSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-elasticgpuspecification.html -type AWSEC2LaunchTemplate_ElasticGpuSpecification struct { - - // Type AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-elasticgpuspecification.html#cfn-ec2-launchtemplate-elasticgpuspecification-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_ElasticGpuSpecification) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.ElasticGpuSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_ElasticGpuSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_ElasticGpuSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_ElasticGpuSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_ElasticGpuSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_ElasticGpuSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_ElasticGpuSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_hibernationoptions.go b/cloudformation/resources/aws-ec2-launchtemplate_hibernationoptions.go deleted file mode 100644 index be98b64448..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_hibernationoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_HibernationOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.HibernationOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-hibernationoptions.html -type AWSEC2LaunchTemplate_HibernationOptions struct { - - // Configured AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-hibernationoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-hibernationoptions-configured - Configured bool `json:"Configured,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_HibernationOptions) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.HibernationOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_HibernationOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_HibernationOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_HibernationOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_HibernationOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_HibernationOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_HibernationOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_iaminstanceprofile.go b/cloudformation/resources/aws-ec2-launchtemplate_iaminstanceprofile.go deleted file mode 100644 index 2a287a721e..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_iaminstanceprofile.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_IamInstanceProfile AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.IamInstanceProfile) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html -type AWSEC2LaunchTemplate_IamInstanceProfile struct { - - // Arn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile-arn - Arn string `json:"Arn,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_IamInstanceProfile) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.IamInstanceProfile" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_IamInstanceProfile) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_IamInstanceProfile) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_IamInstanceProfile) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_IamInstanceProfile) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_IamInstanceProfile) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_IamInstanceProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_instancemarketoptions.go b/cloudformation/resources/aws-ec2-launchtemplate_instancemarketoptions.go deleted file mode 100644 index 78bcda2e10..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_instancemarketoptions.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_InstanceMarketOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.InstanceMarketOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html -type AWSEC2LaunchTemplate_InstanceMarketOptions struct { - - // MarketType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-markettype - MarketType string `json:"MarketType,omitempty"` - - // SpotOptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions - SpotOptions *AWSEC2LaunchTemplate_SpotOptions `json:"SpotOptions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_InstanceMarketOptions) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.InstanceMarketOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_InstanceMarketOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_InstanceMarketOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_InstanceMarketOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_InstanceMarketOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_InstanceMarketOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_InstanceMarketOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_ipv6add.go b/cloudformation/resources/aws-ec2-launchtemplate_ipv6add.go deleted file mode 100644 index 4368437e97..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_ipv6add.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_Ipv6Add AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Ipv6Add) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ipv6add.html -type AWSEC2LaunchTemplate_Ipv6Add struct { - - // Ipv6Address AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ipv6add.html#cfn-ec2-launchtemplate-ipv6add-ipv6address - Ipv6Address string `json:"Ipv6Address,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_Ipv6Add) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.Ipv6Add" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_Ipv6Add) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_Ipv6Add) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_Ipv6Add) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_Ipv6Add) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_Ipv6Add) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_Ipv6Add) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go b/cloudformation/resources/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go deleted file mode 100644 index 7503424215..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.LaunchTemplateElasticInferenceAccelerator) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html -type AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator struct { - - // Type AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html#cfn-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.LaunchTemplateElasticInferenceAccelerator" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_licensespecification.go b/cloudformation/resources/aws-ec2-launchtemplate_licensespecification.go deleted file mode 100644 index ff34c20c19..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_licensespecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_LicenseSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.LicenseSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-licensespecification.html -type AWSEC2LaunchTemplate_LicenseSpecification struct { - - // LicenseConfigurationArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-licensespecification.html#cfn-ec2-launchtemplate-licensespecification-licenseconfigurationarn - LicenseConfigurationArn string `json:"LicenseConfigurationArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_LicenseSpecification) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.LicenseSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_LicenseSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_LicenseSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_LicenseSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_LicenseSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_LicenseSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_LicenseSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_monitoring.go b/cloudformation/resources/aws-ec2-launchtemplate_monitoring.go deleted file mode 100644 index b597ec247b..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_monitoring.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_Monitoring AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Monitoring) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-monitoring.html -type AWSEC2LaunchTemplate_Monitoring struct { - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-monitoring.html#cfn-ec2-launchtemplate-launchtemplatedata-monitoring-enabled - Enabled bool `json:"Enabled,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_Monitoring) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.Monitoring" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_Monitoring) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_Monitoring) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_Monitoring) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_Monitoring) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_Monitoring) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_Monitoring) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_privateipadd.go b/cloudformation/resources/aws-ec2-launchtemplate_privateipadd.go deleted file mode 100644 index 9d41fd14f2..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_privateipadd.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_PrivateIpAdd AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.PrivateIpAdd) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html -type AWSEC2LaunchTemplate_PrivateIpAdd struct { - - // Primary AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html#cfn-ec2-launchtemplate-privateipadd-primary - Primary bool `json:"Primary,omitempty"` - - // PrivateIpAddress AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html#cfn-ec2-launchtemplate-privateipadd-privateipaddress - PrivateIpAddress string `json:"PrivateIpAddress,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_PrivateIpAdd) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.PrivateIpAdd" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_PrivateIpAdd) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_PrivateIpAdd) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_PrivateIpAdd) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_PrivateIpAdd) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_PrivateIpAdd) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_PrivateIpAdd) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-launchtemplate_tagspecification.go b/cloudformation/resources/aws-ec2-launchtemplate_tagspecification.go deleted file mode 100644 index 57c3d652cd..0000000000 --- a/cloudformation/resources/aws-ec2-launchtemplate_tagspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2LaunchTemplate_TagSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.TagSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html -type AWSEC2LaunchTemplate_TagSpecification struct { - - // ResourceType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html#cfn-ec2-launchtemplate-tagspecification-resourcetype - ResourceType string `json:"ResourceType,omitempty"` - - // Tags AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html#cfn-ec2-launchtemplate-tagspecification-tags - Tags []Tag `json:"Tags,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_TagSpecification) AWSCloudFormationType() string { - return "AWS::EC2::LaunchTemplate.TagSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_TagSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2LaunchTemplate_TagSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_TagSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2LaunchTemplate_TagSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_TagSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2LaunchTemplate_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-networkaclentry_portrange.go b/cloudformation/resources/aws-ec2-networkaclentry_portrange.go deleted file mode 100644 index 794b440a6b..0000000000 --- a/cloudformation/resources/aws-ec2-networkaclentry_portrange.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2NetworkAclEntry_PortRange AWS CloudFormation Resource (AWS::EC2::NetworkAclEntry.PortRange) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html -type AWSEC2NetworkAclEntry_PortRange struct { - - // From AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-from - From int `json:"From,omitempty"` - - // To AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-to - To int `json:"To,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkAclEntry_PortRange) AWSCloudFormationType() string { - return "AWS::EC2::NetworkAclEntry.PortRange" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkAclEntry_PortRange) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkAclEntry_PortRange) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkAclEntry_PortRange) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkAclEntry_PortRange) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkAclEntry_PortRange) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkAclEntry_PortRange) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-networkinterface_instanceipv6address.go b/cloudformation/resources/aws-ec2-networkinterface_instanceipv6address.go deleted file mode 100644 index 7a0bae4f0f..0000000000 --- a/cloudformation/resources/aws-ec2-networkinterface_instanceipv6address.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2NetworkInterface_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::NetworkInterface.InstanceIpv6Address) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html -type AWSEC2NetworkInterface_InstanceIpv6Address struct { - - // Ipv6Address AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html#cfn-ec2-networkinterface-instanceipv6address-ipv6address - Ipv6Address string `json:"Ipv6Address,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkInterface_InstanceIpv6Address) AWSCloudFormationType() string { - return "AWS::EC2::NetworkInterface.InstanceIpv6Address" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterface_InstanceIpv6Address) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterface_InstanceIpv6Address) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterface_InstanceIpv6Address) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterface_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterface_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterface_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-networkinterface_privateipaddressspecification.go b/cloudformation/resources/aws-ec2-networkinterface_privateipaddressspecification.go deleted file mode 100644 index 3328cb3ada..0000000000 --- a/cloudformation/resources/aws-ec2-networkinterface_privateipaddressspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2NetworkInterface_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::NetworkInterface.PrivateIpAddressSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html -type AWSEC2NetworkInterface_PrivateIpAddressSpecification struct { - - // Primary AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary - Primary bool `json:"Primary"` - - // PrivateIpAddress AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress - PrivateIpAddress string `json:"PrivateIpAddress,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkInterface_PrivateIpAddressSpecification) AWSCloudFormationType() string { - return "AWS::EC2::NetworkInterface.PrivateIpAddressSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterface_PrivateIpAddressSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2NetworkInterface_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterface_PrivateIpAddressSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2NetworkInterface_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterface_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2NetworkInterface_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancer.go b/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancer.go deleted file mode 100644 index fae1f0d4a5..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancer.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_ClassicLoadBalancer AWS CloudFormation Resource (AWS::EC2::SpotFleet.ClassicLoadBalancer) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancer.html -type AWSEC2SpotFleet_ClassicLoadBalancer struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancer.html#cfn-ec2-spotfleet-classicloadbalancer-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_ClassicLoadBalancer) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.ClassicLoadBalancer" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancer) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancer) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancer) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancer) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancer) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancersconfig.go b/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancersconfig.go deleted file mode 100644 index cbbe12e14e..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancersconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_ClassicLoadBalancersConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.ClassicLoadBalancersConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html -type AWSEC2SpotFleet_ClassicLoadBalancersConfig struct { - - // ClassicLoadBalancers AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html#cfn-ec2-spotfleet-classicloadbalancersconfig-classicloadbalancers - ClassicLoadBalancers []AWSEC2SpotFleet_ClassicLoadBalancer `json:"ClassicLoadBalancers,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_ClassicLoadBalancersConfig) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.ClassicLoadBalancersConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancersConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancersConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancersConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancersConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancersConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_ClassicLoadBalancersConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go b/cloudformation/resources/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go deleted file mode 100644 index 533274060a..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_FleetLaunchTemplateSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.FleetLaunchTemplateSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html -type AWSEC2SpotFleet_FleetLaunchTemplateSpecification struct { - - // LaunchTemplateId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-launchtemplateid - LaunchTemplateId string `json:"LaunchTemplateId,omitempty"` - - // LaunchTemplateName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-launchtemplatename - LaunchTemplateName string `json:"LaunchTemplateName,omitempty"` - - // Version AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.FleetLaunchTemplateSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_groupidentifier.go b/cloudformation/resources/aws-ec2-spotfleet_groupidentifier.go deleted file mode 100644 index 1f4e25eff2..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_groupidentifier.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_GroupIdentifier AWS CloudFormation Resource (AWS::EC2::SpotFleet.GroupIdentifier) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html -type AWSEC2SpotFleet_GroupIdentifier struct { - - // GroupId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html#cfn-ec2-spotfleet-groupidentifier-groupid - GroupId string `json:"GroupId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_GroupIdentifier) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.GroupIdentifier" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_GroupIdentifier) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_GroupIdentifier) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_GroupIdentifier) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_GroupIdentifier) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_GroupIdentifier) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_GroupIdentifier) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_iaminstanceprofilespecification.go b/cloudformation/resources/aws-ec2-spotfleet_iaminstanceprofilespecification.go deleted file mode 100644 index 4d944f61e2..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_iaminstanceprofilespecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_IamInstanceProfileSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.IamInstanceProfileSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html -type AWSEC2SpotFleet_IamInstanceProfileSpecification struct { - - // Arn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html#cfn-ec2-spotfleet-iaminstanceprofilespecification-arn - Arn string `json:"Arn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_IamInstanceProfileSpecification) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.IamInstanceProfileSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_IamInstanceProfileSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_IamInstanceProfileSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_IamInstanceProfileSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_IamInstanceProfileSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_IamInstanceProfileSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_IamInstanceProfileSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_instanceipv6address.go b/cloudformation/resources/aws-ec2-spotfleet_instanceipv6address.go deleted file mode 100644 index d139bdaaa5..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_instanceipv6address.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::SpotFleet.InstanceIpv6Address) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html -type AWSEC2SpotFleet_InstanceIpv6Address struct { - - // Ipv6Address AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html#cfn-ec2-spotfleet-instanceipv6address-ipv6address - Ipv6Address string `json:"Ipv6Address,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_InstanceIpv6Address) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.InstanceIpv6Address" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_InstanceIpv6Address) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_InstanceIpv6Address) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_InstanceIpv6Address) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_launchtemplateconfig.go b/cloudformation/resources/aws-ec2-spotfleet_launchtemplateconfig.go deleted file mode 100644 index 968c21c441..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_launchtemplateconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_LaunchTemplateConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.LaunchTemplateConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html -type AWSEC2SpotFleet_LaunchTemplateConfig struct { - - // LaunchTemplateSpecification AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html#cfn-ec2-spotfleet-launchtemplateconfig-launchtemplatespecification - LaunchTemplateSpecification *AWSEC2SpotFleet_FleetLaunchTemplateSpecification `json:"LaunchTemplateSpecification,omitempty"` - - // Overrides AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html#cfn-ec2-spotfleet-launchtemplateconfig-overrides - Overrides []AWSEC2SpotFleet_LaunchTemplateOverrides `json:"Overrides,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_LaunchTemplateConfig) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.LaunchTemplateConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_LaunchTemplateConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_LaunchTemplateConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_LaunchTemplateConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_LaunchTemplateConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_LaunchTemplateConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_LaunchTemplateConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_loadbalancersconfig.go b/cloudformation/resources/aws-ec2-spotfleet_loadbalancersconfig.go deleted file mode 100644 index 08c83bb740..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_loadbalancersconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_LoadBalancersConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.LoadBalancersConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html -type AWSEC2SpotFleet_LoadBalancersConfig struct { - - // ClassicLoadBalancersConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html#cfn-ec2-spotfleet-loadbalancersconfig-classicloadbalancersconfig - ClassicLoadBalancersConfig *AWSEC2SpotFleet_ClassicLoadBalancersConfig `json:"ClassicLoadBalancersConfig,omitempty"` - - // TargetGroupsConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html#cfn-ec2-spotfleet-loadbalancersconfig-targetgroupsconfig - TargetGroupsConfig *AWSEC2SpotFleet_TargetGroupsConfig `json:"TargetGroupsConfig,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_LoadBalancersConfig) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.LoadBalancersConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_LoadBalancersConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_LoadBalancersConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_LoadBalancersConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_LoadBalancersConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_LoadBalancersConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_LoadBalancersConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_privateipaddressspecification.go b/cloudformation/resources/aws-ec2-spotfleet_privateipaddressspecification.go deleted file mode 100644 index f94abfbc6f..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_privateipaddressspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.PrivateIpAddressSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html -type AWSEC2SpotFleet_PrivateIpAddressSpecification struct { - - // Primary AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-primary - Primary bool `json:"Primary,omitempty"` - - // PrivateIpAddress AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-privateipaddress - PrivateIpAddress string `json:"PrivateIpAddress,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_PrivateIpAddressSpecification) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.PrivateIpAddressSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_PrivateIpAddressSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_PrivateIpAddressSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_spotfleetmonitoring.go b/cloudformation/resources/aws-ec2-spotfleet_spotfleetmonitoring.go deleted file mode 100644 index b2716ae5fb..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_spotfleetmonitoring.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_SpotFleetMonitoring AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetMonitoring) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html -type AWSEC2SpotFleet_SpotFleetMonitoring struct { - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html#cfn-ec2-spotfleet-spotfleetmonitoring-enabled - Enabled bool `json:"Enabled,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_SpotFleetMonitoring) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.SpotFleetMonitoring" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotFleetMonitoring) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotFleetMonitoring) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotFleetMonitoring) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotFleetMonitoring) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotFleetMonitoring) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotFleetMonitoring) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_spotfleettagspecification.go b/cloudformation/resources/aws-ec2-spotfleet_spotfleettagspecification.go deleted file mode 100644 index a885280113..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_spotfleettagspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_SpotFleetTagSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetTagSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html -type AWSEC2SpotFleet_SpotFleetTagSpecification struct { - - // ResourceType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html#cfn-ec2-spotfleet-spotfleettagspecification-resourcetype - ResourceType string `json:"ResourceType,omitempty"` - - // Tags AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html#cfn-ec2-spotfleet-tags - Tags []Tag `json:"Tags,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_SpotFleetTagSpecification) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.SpotFleetTagSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotFleetTagSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_SpotFleetTagSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotFleetTagSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_SpotFleetTagSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotFleetTagSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_SpotFleetTagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_targetgroup.go b/cloudformation/resources/aws-ec2-spotfleet_targetgroup.go deleted file mode 100644 index 2bbfe94f68..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_targetgroup.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_TargetGroup AWS CloudFormation Resource (AWS::EC2::SpotFleet.TargetGroup) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroup.html -type AWSEC2SpotFleet_TargetGroup struct { - - // Arn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroup.html#cfn-ec2-spotfleet-targetgroup-arn - Arn string `json:"Arn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_TargetGroup) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.TargetGroup" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_TargetGroup) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_TargetGroup) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_TargetGroup) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_TargetGroup) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_TargetGroup) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_TargetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-spotfleet_targetgroupsconfig.go b/cloudformation/resources/aws-ec2-spotfleet_targetgroupsconfig.go deleted file mode 100644 index c4d7c15784..0000000000 --- a/cloudformation/resources/aws-ec2-spotfleet_targetgroupsconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2SpotFleet_TargetGroupsConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.TargetGroupsConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroupsconfig.html -type AWSEC2SpotFleet_TargetGroupsConfig struct { - - // TargetGroups AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroupsconfig.html#cfn-ec2-spotfleet-targetgroupsconfig-targetgroups - TargetGroups []AWSEC2SpotFleet_TargetGroup `json:"TargetGroups,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_TargetGroupsConfig) AWSCloudFormationType() string { - return "AWS::EC2::SpotFleet.TargetGroupsConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_TargetGroupsConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2SpotFleet_TargetGroupsConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_TargetGroupsConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2SpotFleet_TargetGroupsConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_TargetGroupsConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2SpotFleet_TargetGroupsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go b/cloudformation/resources/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go deleted file mode 100644 index 873ce148aa..0000000000 --- a/cloudformation/resources/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange AWS CloudFormation Resource (AWS::EC2::TrafficMirrorFilterRule.TrafficMirrorPortRange) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html -type AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange struct { - - // FromPort AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorportrange-fromport - FromPort int `json:"FromPort"` - - // ToPort AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorportrange-toport - ToPort int `json:"ToPort"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) AWSCloudFormationType() string { - return "AWS::EC2::TrafficMirrorFilterRule.TrafficMirrorPortRange" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ec2-vpnconnection_vpntunneloptionsspecification.go b/cloudformation/resources/aws-ec2-vpnconnection_vpntunneloptionsspecification.go deleted file mode 100644 index 1ae463be2a..0000000000 --- a/cloudformation/resources/aws-ec2-vpnconnection_vpntunneloptionsspecification.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEC2VPNConnection_VpnTunnelOptionsSpecification AWS CloudFormation Resource (AWS::EC2::VPNConnection.VpnTunnelOptionsSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html -type AWSEC2VPNConnection_VpnTunnelOptionsSpecification struct { - - // PreSharedKey AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html#cfn-ec2-vpnconnection-vpntunneloptionsspecification-presharedkey - PreSharedKey string `json:"PreSharedKey,omitempty"` - - // TunnelInsideCidr AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html#cfn-ec2-vpnconnection-vpntunneloptionsspecification-tunnelinsidecidr - TunnelInsideCidr string `json:"TunnelInsideCidr,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) AWSCloudFormationType() string { - return "AWS::EC2::VPNConnection.VpnTunnelOptionsSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecr-repository_lifecyclepolicy.go b/cloudformation/resources/aws-ecr-repository_lifecyclepolicy.go deleted file mode 100644 index 320ba7565b..0000000000 --- a/cloudformation/resources/aws-ecr-repository_lifecyclepolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECRRepository_LifecyclePolicy AWS CloudFormation Resource (AWS::ECR::Repository.LifecyclePolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html -type AWSECRRepository_LifecyclePolicy struct { - - // LifecyclePolicyText AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-lifecyclepolicytext - LifecyclePolicyText string `json:"LifecyclePolicyText,omitempty"` - - // RegistryId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-registryid - RegistryId string `json:"RegistryId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECRRepository_LifecyclePolicy) AWSCloudFormationType() string { - return "AWS::ECR::Repository.LifecyclePolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECRRepository_LifecyclePolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECRRepository_LifecyclePolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECRRepository_LifecyclePolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECRRepository_LifecyclePolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECRRepository_LifecyclePolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECRRepository_LifecyclePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-service_deploymentconfiguration.go b/cloudformation/resources/aws-ecs-service_deploymentconfiguration.go deleted file mode 100644 index def218e178..0000000000 --- a/cloudformation/resources/aws-ecs-service_deploymentconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSService_DeploymentConfiguration AWS CloudFormation Resource (AWS::ECS::Service.DeploymentConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html -type AWSECSService_DeploymentConfiguration struct { - - // MaximumPercent AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-maximumpercent - MaximumPercent int `json:"MaximumPercent,omitempty"` - - // MinimumHealthyPercent AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-minimumhealthypercent - MinimumHealthyPercent int `json:"MinimumHealthyPercent,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_DeploymentConfiguration) AWSCloudFormationType() string { - return "AWS::ECS::Service.DeploymentConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_DeploymentConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_DeploymentConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_DeploymentConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_DeploymentConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_DeploymentConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_DeploymentConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-service_networkconfiguration.go b/cloudformation/resources/aws-ecs-service_networkconfiguration.go deleted file mode 100644 index 5beff2350b..0000000000 --- a/cloudformation/resources/aws-ecs-service_networkconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSService_NetworkConfiguration AWS CloudFormation Resource (AWS::ECS::Service.NetworkConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html -type AWSECSService_NetworkConfiguration struct { - - // AwsvpcConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html#cfn-ecs-service-networkconfiguration-awsvpcconfiguration - AwsvpcConfiguration *AWSECSService_AwsVpcConfiguration `json:"AwsvpcConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_NetworkConfiguration) AWSCloudFormationType() string { - return "AWS::ECS::Service.NetworkConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_NetworkConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_NetworkConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_NetworkConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_NetworkConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_NetworkConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-service_placementconstraint.go b/cloudformation/resources/aws-ecs-service_placementconstraint.go deleted file mode 100644 index 145bb0ac9a..0000000000 --- a/cloudformation/resources/aws-ecs-service_placementconstraint.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSService_PlacementConstraint AWS CloudFormation Resource (AWS::ECS::Service.PlacementConstraint) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html -type AWSECSService_PlacementConstraint struct { - - // Expression AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-expression - Expression string `json:"Expression,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_PlacementConstraint) AWSCloudFormationType() string { - return "AWS::ECS::Service.PlacementConstraint" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_PlacementConstraint) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_PlacementConstraint) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_PlacementConstraint) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_PlacementConstraint) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_PlacementConstraint) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_PlacementConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-service_placementstrategy.go b/cloudformation/resources/aws-ecs-service_placementstrategy.go deleted file mode 100644 index 7a011f4050..0000000000 --- a/cloudformation/resources/aws-ecs-service_placementstrategy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSService_PlacementStrategy AWS CloudFormation Resource (AWS::ECS::Service.PlacementStrategy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html -type AWSECSService_PlacementStrategy struct { - - // Field AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-field - Field string `json:"Field,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_PlacementStrategy) AWSCloudFormationType() string { - return "AWS::ECS::Service.PlacementStrategy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_PlacementStrategy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSService_PlacementStrategy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_PlacementStrategy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSService_PlacementStrategy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_PlacementStrategy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSService_PlacementStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_containerdependency.go b/cloudformation/resources/aws-ecs-taskdefinition_containerdependency.go deleted file mode 100644 index 56a22bb498..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_containerdependency.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_ContainerDependency AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ContainerDependency) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html -type AWSECSTaskDefinition_ContainerDependency struct { - - // Condition AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-condition - Condition string `json:"Condition,omitempty"` - - // ContainerName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-containername - ContainerName string `json:"ContainerName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_ContainerDependency) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.ContainerDependency" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_ContainerDependency) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_ContainerDependency) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_ContainerDependency) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_ContainerDependency) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_ContainerDependency) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_ContainerDependency) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_hostvolumeproperties.go b/cloudformation/resources/aws-ecs-taskdefinition_hostvolumeproperties.go deleted file mode 100644 index 9af9a0d937..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_hostvolumeproperties.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_HostVolumeProperties AWS CloudFormation Resource (AWS::ECS::TaskDefinition.HostVolumeProperties) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html -type AWSECSTaskDefinition_HostVolumeProperties struct { - - // SourcePath AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html#cfn-ecs-taskdefinition-volumes-host-sourcepath - SourcePath string `json:"SourcePath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_HostVolumeProperties) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.HostVolumeProperties" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_HostVolumeProperties) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_HostVolumeProperties) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_HostVolumeProperties) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_HostVolumeProperties) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_HostVolumeProperties) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_HostVolumeProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_kernelcapabilities.go b/cloudformation/resources/aws-ecs-taskdefinition_kernelcapabilities.go deleted file mode 100644 index 33052c74b5..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_kernelcapabilities.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_KernelCapabilities AWS CloudFormation Resource (AWS::ECS::TaskDefinition.KernelCapabilities) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html -type AWSECSTaskDefinition_KernelCapabilities struct { - - // Add AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html#cfn-ecs-taskdefinition-kernelcapabilities-add - Add []string `json:"Add,omitempty"` - - // Drop AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html#cfn-ecs-taskdefinition-kernelcapabilities-drop - Drop []string `json:"Drop,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_KernelCapabilities) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.KernelCapabilities" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_KernelCapabilities) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_KernelCapabilities) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_KernelCapabilities) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_KernelCapabilities) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_KernelCapabilities) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_KernelCapabilities) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_keyvaluepair.go b/cloudformation/resources/aws-ecs-taskdefinition_keyvaluepair.go deleted file mode 100644 index 8edb858c17..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_keyvaluepair.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_KeyValuePair AWS CloudFormation Resource (AWS::ECS::TaskDefinition.KeyValuePair) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html -type AWSECSTaskDefinition_KeyValuePair struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_KeyValuePair) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.KeyValuePair" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_KeyValuePair) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_KeyValuePair) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_KeyValuePair) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_KeyValuePair) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_KeyValuePair) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_KeyValuePair) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_linuxparameters.go b/cloudformation/resources/aws-ecs-taskdefinition_linuxparameters.go deleted file mode 100644 index 21ae551219..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_linuxparameters.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_LinuxParameters AWS CloudFormation Resource (AWS::ECS::TaskDefinition.LinuxParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html -type AWSECSTaskDefinition_LinuxParameters struct { - - // Capabilities AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-capabilities - Capabilities *AWSECSTaskDefinition_KernelCapabilities `json:"Capabilities,omitempty"` - - // Devices AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-devices - Devices []AWSECSTaskDefinition_Device `json:"Devices,omitempty"` - - // InitProcessEnabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-initprocessenabled - InitProcessEnabled bool `json:"InitProcessEnabled,omitempty"` - - // SharedMemorySize AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-sharedmemorysize - SharedMemorySize int `json:"SharedMemorySize,omitempty"` - - // Tmpfs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-tmpfs - Tmpfs []AWSECSTaskDefinition_Tmpfs `json:"Tmpfs,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_LinuxParameters) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.LinuxParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_LinuxParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_LinuxParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_LinuxParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_LinuxParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_LinuxParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_LinuxParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_logconfiguration.go b/cloudformation/resources/aws-ecs-taskdefinition_logconfiguration.go deleted file mode 100644 index 927bf61af8..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_logconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_LogConfiguration AWS CloudFormation Resource (AWS::ECS::TaskDefinition.LogConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html -type AWSECSTaskDefinition_LogConfiguration struct { - - // LogDriver AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-logdriver - LogDriver string `json:"LogDriver,omitempty"` - - // Options AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-options - Options map[string]string `json:"Options,omitempty"` - - // SecretOptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-logconfiguration-secretoptions - SecretOptions []AWSECSTaskDefinition_Secret `json:"SecretOptions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_LogConfiguration) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.LogConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_LogConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_LogConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_LogConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_LogConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_LogConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_LogConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_proxyconfiguration.go b/cloudformation/resources/aws-ecs-taskdefinition_proxyconfiguration.go deleted file mode 100644 index 9059acd781..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_proxyconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_ProxyConfiguration AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ProxyConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html -type AWSECSTaskDefinition_ProxyConfiguration struct { - - // ContainerName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-containername - ContainerName string `json:"ContainerName,omitempty"` - - // ProxyConfigurationProperties AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-proxyconfigurationproperties - ProxyConfigurationProperties []AWSECSTaskDefinition_KeyValuePair `json:"ProxyConfigurationProperties,omitempty"` - - // Type AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_ProxyConfiguration) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.ProxyConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_ProxyConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_ProxyConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_ProxyConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_ProxyConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_ProxyConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_ProxyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_repositorycredentials.go b/cloudformation/resources/aws-ecs-taskdefinition_repositorycredentials.go deleted file mode 100644 index c3a4cea179..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_repositorycredentials.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_RepositoryCredentials AWS CloudFormation Resource (AWS::ECS::TaskDefinition.RepositoryCredentials) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html -type AWSECSTaskDefinition_RepositoryCredentials struct { - - // CredentialsParameter AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html#cfn-ecs-taskdefinition-repositorycredentials-credentialsparameter - CredentialsParameter string `json:"CredentialsParameter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_RepositoryCredentials) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.RepositoryCredentials" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_RepositoryCredentials) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_RepositoryCredentials) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_RepositoryCredentials) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_RepositoryCredentials) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_RepositoryCredentials) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_RepositoryCredentials) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_resourcerequirement.go b/cloudformation/resources/aws-ecs-taskdefinition_resourcerequirement.go deleted file mode 100644 index 1bf5004248..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_resourcerequirement.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_ResourceRequirement AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ResourceRequirement) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html -type AWSECSTaskDefinition_ResourceRequirement struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html#cfn-ecs-taskdefinition-resourcerequirement-type - Type string `json:"Type,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html#cfn-ecs-taskdefinition-resourcerequirement-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_ResourceRequirement) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.ResourceRequirement" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_ResourceRequirement) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_ResourceRequirement) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_ResourceRequirement) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_ResourceRequirement) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_ResourceRequirement) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_ResourceRequirement) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_systemcontrol.go b/cloudformation/resources/aws-ecs-taskdefinition_systemcontrol.go deleted file mode 100644 index be47940a75..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_systemcontrol.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_SystemControl AWS CloudFormation Resource (AWS::ECS::TaskDefinition.SystemControl) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html -type AWSECSTaskDefinition_SystemControl struct { - - // Namespace AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-namespace - Namespace string `json:"Namespace,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_SystemControl) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.SystemControl" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_SystemControl) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_SystemControl) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_SystemControl) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_SystemControl) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_SystemControl) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_SystemControl) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go b/cloudformation/resources/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go deleted file mode 100644 index 2c269b7b2a..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_TaskDefinitionPlacementConstraint AWS CloudFormation Resource (AWS::ECS::TaskDefinition.TaskDefinitionPlacementConstraint) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html -type AWSECSTaskDefinition_TaskDefinitionPlacementConstraint struct { - - // Expression AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-expression - Expression string `json:"Expression,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.TaskDefinitionPlacementConstraint" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ecs-taskdefinition_volume.go b/cloudformation/resources/aws-ecs-taskdefinition_volume.go deleted file mode 100644 index 6b73979916..0000000000 --- a/cloudformation/resources/aws-ecs-taskdefinition_volume.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSECSTaskDefinition_Volume AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Volume) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html -type AWSECSTaskDefinition_Volume struct { - - // DockerVolumeConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volume-dockervolumeconfiguration - DockerVolumeConfiguration *AWSECSTaskDefinition_DockerVolumeConfiguration `json:"DockerVolumeConfiguration,omitempty"` - - // Host AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-host - Host *AWSECSTaskDefinition_HostVolumeProperties `json:"Host,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_Volume) AWSCloudFormationType() string { - return "AWS::ECS::TaskDefinition.Volume" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Volume) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSECSTaskDefinition_Volume) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Volume) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSECSTaskDefinition_Volume) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Volume) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSECSTaskDefinition_Volume) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-efs-filesystem_elasticfilesystemtag.go b/cloudformation/resources/aws-efs-filesystem_elasticfilesystemtag.go deleted file mode 100644 index 60f878d1de..0000000000 --- a/cloudformation/resources/aws-efs-filesystem_elasticfilesystemtag.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEFSFileSystem_ElasticFileSystemTag AWS CloudFormation Resource (AWS::EFS::FileSystem.ElasticFileSystemTag) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html -type AWSEFSFileSystem_ElasticFileSystemTag struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html#cfn-efs-filesystem-filesystemtags-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html#cfn-efs-filesystem-filesystemtags-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEFSFileSystem_ElasticFileSystemTag) AWSCloudFormationType() string { - return "AWS::EFS::FileSystem.ElasticFileSystemTag" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEFSFileSystem_ElasticFileSystemTag) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEFSFileSystem_ElasticFileSystemTag) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEFSFileSystem_ElasticFileSystemTag) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEFSFileSystem_ElasticFileSystemTag) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEFSFileSystem_ElasticFileSystemTag) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEFSFileSystem_ElasticFileSystemTag) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-efs-filesystem_lifecyclepolicy.go b/cloudformation/resources/aws-efs-filesystem_lifecyclepolicy.go deleted file mode 100644 index 2d5751090e..0000000000 --- a/cloudformation/resources/aws-efs-filesystem_lifecyclepolicy.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEFSFileSystem_LifecyclePolicy AWS CloudFormation Resource (AWS::EFS::FileSystem.LifecyclePolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticfilesystem-filesystem-lifecyclepolicy.html -type AWSEFSFileSystem_LifecyclePolicy struct { - - // TransitionToIA AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticfilesystem-filesystem-lifecyclepolicy.html#cfn-elasticfilesystem-filesystem-lifecyclepolicy-transitiontoia - TransitionToIA string `json:"TransitionToIA,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEFSFileSystem_LifecyclePolicy) AWSCloudFormationType() string { - return "AWS::EFS::FileSystem.LifecyclePolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEFSFileSystem_LifecyclePolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEFSFileSystem_LifecyclePolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEFSFileSystem_LifecyclePolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEFSFileSystem_LifecyclePolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEFSFileSystem_LifecyclePolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEFSFileSystem_LifecyclePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-eks-cluster_resourcesvpcconfig.go b/cloudformation/resources/aws-eks-cluster_resourcesvpcconfig.go deleted file mode 100644 index 19e6f2d76d..0000000000 --- a/cloudformation/resources/aws-eks-cluster_resourcesvpcconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEKSCluster_ResourcesVpcConfig AWS CloudFormation Resource (AWS::EKS::Cluster.ResourcesVpcConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html -type AWSEKSCluster_ResourcesVpcConfig struct { - - // SecurityGroupIds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-securitygroupids - SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` - - // SubnetIds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-subnetids - SubnetIds []string `json:"SubnetIds,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEKSCluster_ResourcesVpcConfig) AWSCloudFormationType() string { - return "AWS::EKS::Cluster.ResourcesVpcConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEKSCluster_ResourcesVpcConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEKSCluster_ResourcesVpcConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEKSCluster_ResourcesVpcConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEKSCluster_ResourcesVpcConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEKSCluster_ResourcesVpcConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEKSCluster_ResourcesVpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go b/cloudformation/resources/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go deleted file mode 100644 index d5a05d3b12..0000000000 --- a/cloudformation/resources/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.ApplicationResourceLifecycleConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html -type AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig struct { - - // ServiceRole AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html#cfn-elasticbeanstalk-application-applicationresourcelifecycleconfig-servicerole - ServiceRole string `json:"ServiceRole,omitempty"` - - // VersionLifecycleConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html#cfn-elasticbeanstalk-application-applicationresourcelifecycleconfig-versionlifecycleconfig - VersionLifecycleConfig *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig `json:"VersionLifecycleConfig,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) AWSCloudFormationType() string { - return "AWS::ElasticBeanstalk::Application.ApplicationResourceLifecycleConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go b/cloudformation/resources/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go deleted file mode 100644 index e15517f046..0000000000 --- a/cloudformation/resources/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.ApplicationVersionLifecycleConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html -type AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig struct { - - // MaxAgeRule AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html#cfn-elasticbeanstalk-application-applicationversionlifecycleconfig-maxagerule - MaxAgeRule *AWSElasticBeanstalkApplication_MaxAgeRule `json:"MaxAgeRule,omitempty"` - - // MaxCountRule AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html#cfn-elasticbeanstalk-application-applicationversionlifecycleconfig-maxcountrule - MaxCountRule *AWSElasticBeanstalkApplication_MaxCountRule `json:"MaxCountRule,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) AWSCloudFormationType() string { - return "AWS::ElasticBeanstalk::Application.ApplicationVersionLifecycleConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticbeanstalk-application_maxcountrule.go b/cloudformation/resources/aws-elasticbeanstalk-application_maxcountrule.go deleted file mode 100644 index cecef14752..0000000000 --- a/cloudformation/resources/aws-elasticbeanstalk-application_maxcountrule.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticBeanstalkApplication_MaxCountRule AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.MaxCountRule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html -type AWSElasticBeanstalkApplication_MaxCountRule struct { - - // DeleteSourceFromS3 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-deletesourcefroms3 - DeleteSourceFromS3 bool `json:"DeleteSourceFromS3,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-enabled - Enabled bool `json:"Enabled,omitempty"` - - // MaxCount AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-maxcount - MaxCount int `json:"MaxCount,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplication_MaxCountRule) AWSCloudFormationType() string { - return "AWS::ElasticBeanstalk::Application.MaxCountRule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication_MaxCountRule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplication_MaxCountRule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication_MaxCountRule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplication_MaxCountRule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication_MaxCountRule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplication_MaxCountRule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticbeanstalk-applicationversion_sourcebundle.go b/cloudformation/resources/aws-elasticbeanstalk-applicationversion_sourcebundle.go deleted file mode 100644 index 5e8b778501..0000000000 --- a/cloudformation/resources/aws-elasticbeanstalk-applicationversion_sourcebundle.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticBeanstalkApplicationVersion_SourceBundle AWS CloudFormation Resource (AWS::ElasticBeanstalk::ApplicationVersion.SourceBundle) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html -type AWSElasticBeanstalkApplicationVersion_SourceBundle struct { - - // S3Bucket AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3bucket - S3Bucket string `json:"S3Bucket,omitempty"` - - // S3Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3key - S3Key string `json:"S3Key,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplicationVersion_SourceBundle) AWSCloudFormationType() string { - return "AWS::ElasticBeanstalk::ApplicationVersion.SourceBundle" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplicationVersion_SourceBundle) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkApplicationVersion_SourceBundle) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplicationVersion_SourceBundle) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkApplicationVersion_SourceBundle) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplicationVersion_SourceBundle) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkApplicationVersion_SourceBundle) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go b/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go deleted file mode 100644 index 1fa57ba465..0000000000 --- a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting AWS CloudFormation Resource (AWS::ElasticBeanstalk::ConfigurationTemplate.ConfigurationOptionSetting) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html -type AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting struct { - - // Namespace AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-namespace - Namespace string `json:"Namespace,omitempty"` - - // OptionName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-optionname - OptionName string `json:"OptionName,omitempty"` - - // ResourceName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-resourcename - ResourceName string `json:"ResourceName,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) AWSCloudFormationType() string { - return "AWS::ElasticBeanstalk::ConfigurationTemplate.ConfigurationOptionSetting" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go b/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go deleted file mode 100644 index f298b3249e..0000000000 --- a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration AWS CloudFormation Resource (AWS::ElasticBeanstalk::ConfigurationTemplate.SourceConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html -type AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration struct { - - // ApplicationName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration-applicationname - ApplicationName string `json:"ApplicationName,omitempty"` - - // TemplateName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration-templatename - TemplateName string `json:"TemplateName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) AWSCloudFormationType() string { - return "AWS::ElasticBeanstalk::ConfigurationTemplate.SourceConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go b/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go deleted file mode 100644 index 97a676671b..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.AccessLoggingPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html -type AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy struct { - - // EmitInterval AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-emitinterval - EmitInterval int `json:"EmitInterval,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-enabled - Enabled bool `json:"Enabled"` - - // S3BucketName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketname - S3BucketName string `json:"S3BucketName,omitempty"` - - // S3BucketPrefix AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketprefix - S3BucketPrefix string `json:"S3BucketPrefix,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancing::LoadBalancer.AccessLoggingPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go b/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go deleted file mode 100644 index ae752b8249..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.AppCookieStickinessPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html -type AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy struct { - - // CookieName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-cookiename - CookieName string `json:"CookieName,omitempty"` - - // PolicyName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-policyname - PolicyName string `json:"PolicyName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancing::LoadBalancer.AppCookieStickinessPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go b/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go deleted file mode 100644 index 5c48842fa0..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.ConnectionDrainingPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html -type AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy struct { - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-enabled - Enabled bool `json:"Enabled"` - - // Timeout AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-timeout - Timeout int `json:"Timeout,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancing::LoadBalancer.ConnectionDrainingPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectionsettings.go b/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectionsettings.go deleted file mode 100644 index a702467f43..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectionsettings.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingLoadBalancer_ConnectionSettings AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.ConnectionSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html -type AWSElasticLoadBalancingLoadBalancer_ConnectionSettings struct { - - // IdleTimeout AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html#cfn-elb-connectionsettings-idletimeout - IdleTimeout int `json:"IdleTimeout"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancing::LoadBalancer.ConnectionSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go b/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go deleted file mode 100644 index 04a2abc5b6..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.LBCookieStickinessPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html -type AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy struct { - - // CookieExpirationPeriod AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-cookieexpirationperiod - CookieExpirationPeriod string `json:"CookieExpirationPeriod,omitempty"` - - // PolicyName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-policyname - PolicyName string `json:"PolicyName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancing::LoadBalancer.LBCookieStickinessPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listener_action.go b/cloudformation/resources/aws-elasticloadbalancingv2-listener_action.go deleted file mode 100644 index 2081a70de4..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_action.go +++ /dev/null @@ -1,93 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2Listener_Action AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.Action) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html -type AWSElasticLoadBalancingV2Listener_Action struct { - - // AuthenticateCognitoConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-authenticatecognitoconfig - AuthenticateCognitoConfig *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig `json:"AuthenticateCognitoConfig,omitempty"` - - // AuthenticateOidcConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-authenticateoidcconfig - AuthenticateOidcConfig *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig `json:"AuthenticateOidcConfig,omitempty"` - - // FixedResponseConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-fixedresponseconfig - FixedResponseConfig *AWSElasticLoadBalancingV2Listener_FixedResponseConfig `json:"FixedResponseConfig,omitempty"` - - // Order AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-order - Order int `json:"Order,omitempty"` - - // RedirectConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-redirectconfig - RedirectConfig *AWSElasticLoadBalancingV2Listener_RedirectConfig `json:"RedirectConfig,omitempty"` - - // TargetGroupArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-defaultactions-targetgrouparn - TargetGroupArn string `json:"TargetGroupArn,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-defaultactions-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_Action) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::Listener.Action" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_Action) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_Action) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_Action) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_Action) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_Action) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listener_certificate.go b/cloudformation/resources/aws-elasticloadbalancingv2-listener_certificate.go deleted file mode 100644 index af99ba4993..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_certificate.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2Listener_Certificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.Certificate) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html -type AWSElasticLoadBalancingV2Listener_Certificate struct { - - // CertificateArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html#cfn-elasticloadbalancingv2-listener-certificates-certificatearn - CertificateArn string `json:"CertificateArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_Certificate) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::Listener.Certificate" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_Certificate) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_Certificate) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_Certificate) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_Certificate) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_Certificate) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go b/cloudformation/resources/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go deleted file mode 100644 index 1bbef4564d..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2Listener_FixedResponseConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.FixedResponseConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html -type AWSElasticLoadBalancingV2Listener_FixedResponseConfig struct { - - // ContentType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-contenttype - ContentType string `json:"ContentType,omitempty"` - - // MessageBody AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-messagebody - MessageBody string `json:"MessageBody,omitempty"` - - // StatusCode AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-statuscode - StatusCode string `json:"StatusCode,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::Listener.FixedResponseConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate.go deleted file mode 100644 index dca2fed129..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSElasticLoadBalancingV2ListenerCertificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerCertificate) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html -type AWSElasticLoadBalancingV2ListenerCertificate struct { - - // Certificates AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html#cfn-elasticloadbalancingv2-listenercertificate-certificates - Certificates []AWSElasticLoadBalancingV2ListenerCertificate_Certificate `json:"Certificates,omitempty"` - - // ListenerArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html#cfn-elasticloadbalancingv2-listenercertificate-listenerarn - ListenerArn string `json:"ListenerArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerCertificate) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerCertificate" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSElasticLoadBalancingV2ListenerCertificate) MarshalJSON() ([]byte, error) { - type Properties AWSElasticLoadBalancingV2ListenerCertificate - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSElasticLoadBalancingV2ListenerCertificate) UnmarshalJSON(b []byte) error { - type Properties AWSElasticLoadBalancingV2ListenerCertificate - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSElasticLoadBalancingV2ListenerCertificate(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate_certificate.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate_certificate.go deleted file mode 100644 index c5616ec8a2..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate_certificate.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerCertificate_Certificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerCertificate.Certificate) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html -type AWSElasticLoadBalancingV2ListenerCertificate_Certificate struct { - - // CertificateArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html#cfn-elasticloadbalancingv2-listener-certificates-certificatearn - CertificateArn string `json:"CertificateArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerCertificate.Certificate" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_action.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_action.go deleted file mode 100644 index 5d5004d78d..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_action.go +++ /dev/null @@ -1,93 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_Action AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.Action) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html -type AWSElasticLoadBalancingV2ListenerRule_Action struct { - - // AuthenticateCognitoConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-authenticatecognitoconfig - AuthenticateCognitoConfig *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig `json:"AuthenticateCognitoConfig,omitempty"` - - // AuthenticateOidcConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-authenticateoidcconfig - AuthenticateOidcConfig *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig `json:"AuthenticateOidcConfig,omitempty"` - - // FixedResponseConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-fixedresponseconfig - FixedResponseConfig *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig `json:"FixedResponseConfig,omitempty"` - - // Order AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-order - Order int `json:"Order,omitempty"` - - // RedirectConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-redirectconfig - RedirectConfig *AWSElasticLoadBalancingV2ListenerRule_RedirectConfig `json:"RedirectConfig,omitempty"` - - // TargetGroupArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listener-actions-targetgrouparn - TargetGroupArn string `json:"TargetGroupArn,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listener-actions-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_Action) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.Action" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_Action) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_Action) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_Action) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_Action) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_Action) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go deleted file mode 100644 index d16ca7d4ff..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.FixedResponseConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html -type AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig struct { - - // ContentType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-contenttype - ContentType string `json:"ContentType,omitempty"` - - // MessageBody AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-messagebody - MessageBody string `json:"MessageBody,omitempty"` - - // StatusCode AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-statuscode - StatusCode string `json:"StatusCode,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.FixedResponseConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go deleted file mode 100644 index f42e23b8be..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HostHeaderConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html -type AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig struct { - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-hostheaderconfig-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.HostHeaderConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go deleted file mode 100644 index f395f04155..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HttpHeaderConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html -type AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig struct { - - // HttpHeaderName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-httpheaderconfig-httpheadername - HttpHeaderName string `json:"HttpHeaderName,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-httpheaderconfig-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.HttpHeaderConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go deleted file mode 100644 index 9f657634cc..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HttpRequestMethodConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html -type AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig struct { - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html#cfn-elasticloadbalancingv2-listenerrule-httprequestmethodconfig-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.HttpRequestMethodConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go deleted file mode 100644 index 3af8e605da..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.PathPatternConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html -type AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig struct { - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html#cfn-elasticloadbalancingv2-listenerrule-pathpatternconfig-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.PathPatternConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go deleted file mode 100644 index adeef2ab83..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html -type AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig struct { - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html#cfn-elasticloadbalancingv2-listenerrule-querystringconfig-values - Values []AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go deleted file mode 100644 index d085049e3c..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringKeyValue) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html -type AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html#cfn-elasticloadbalancingv2-listenerrule-querystringkeyvalue-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html#cfn-elasticloadbalancingv2-listenerrule-querystringkeyvalue-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringKeyValue" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_rulecondition.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_rulecondition.go deleted file mode 100644 index 1a5b326a0a..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_rulecondition.go +++ /dev/null @@ -1,98 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_RuleCondition AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.RuleCondition) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html -type AWSElasticLoadBalancingV2ListenerRule_RuleCondition struct { - - // Field AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-conditions-field - Field string `json:"Field,omitempty"` - - // HostHeaderConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-hostheaderconfig - HostHeaderConfig *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig `json:"HostHeaderConfig,omitempty"` - - // HttpHeaderConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-httpheaderconfig - HttpHeaderConfig *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig `json:"HttpHeaderConfig,omitempty"` - - // HttpRequestMethodConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-httprequestmethodconfig - HttpRequestMethodConfig *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig `json:"HttpRequestMethodConfig,omitempty"` - - // PathPatternConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-pathpatternconfig - PathPatternConfig *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig `json:"PathPatternConfig,omitempty"` - - // QueryStringConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-querystringconfig - QueryStringConfig *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig `json:"QueryStringConfig,omitempty"` - - // SourceIpConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-sourceipconfig - SourceIpConfig *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig `json:"SourceIpConfig,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-conditions-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.RuleCondition" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go b/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go deleted file mode 100644 index 750bc2ec1d..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.SourceIpConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html -type AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig struct { - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html#cfn-elasticloadbalancingv2-listenerrule-sourceipconfig-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::ListenerRule.SourceIpConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go b/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go deleted file mode 100644 index 69151f44a5..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::LoadBalancer.LoadBalancerAttribute) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html -type AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::LoadBalancer.LoadBalancerAttribute" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go b/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go deleted file mode 100644 index 9ce198969c..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::LoadBalancer.SubnetMapping) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html -type AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping struct { - - // AllocationId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-allocationid - AllocationId string `json:"AllocationId,omitempty"` - - // SubnetId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-subnetid - SubnetId string `json:"SubnetId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::LoadBalancer.SubnetMapping" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_matcher.go b/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_matcher.go deleted file mode 100644 index 58e4f6ebd5..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_matcher.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2TargetGroup_Matcher AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.Matcher) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html -type AWSElasticLoadBalancingV2TargetGroup_Matcher struct { - - // HttpCode AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html#cfn-elasticloadbalancingv2-targetgroup-matcher-httpcode - HttpCode string `json:"HttpCode,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2TargetGroup_Matcher) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::TargetGroup.Matcher" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2TargetGroup_Matcher) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2TargetGroup_Matcher) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2TargetGroup_Matcher) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2TargetGroup_Matcher) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2TargetGroup_Matcher) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2TargetGroup_Matcher) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetdescription.go b/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetdescription.go deleted file mode 100644 index 39b66f60f8..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetdescription.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2TargetGroup_TargetDescription AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.TargetDescription) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html -type AWSElasticLoadBalancingV2TargetGroup_TargetDescription struct { - - // AvailabilityZone AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-availabilityzone - AvailabilityZone string `json:"AvailabilityZone,omitempty"` - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-id - Id string `json:"Id,omitempty"` - - // Port AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-port - Port int `json:"Port,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::TargetGroup.TargetDescription" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go b/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go deleted file mode 100644 index 22d87c0b71..0000000000 --- a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.TargetGroupAttribute) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html -type AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattribute-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattribute-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) AWSCloudFormationType() string { - return "AWS::ElasticLoadBalancingV2::TargetGroup.TargetGroupAttribute" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticsearch-domain_encryptionatrestoptions.go b/cloudformation/resources/aws-elasticsearch-domain_encryptionatrestoptions.go deleted file mode 100644 index 8a5ddf4537..0000000000 --- a/cloudformation/resources/aws-elasticsearch-domain_encryptionatrestoptions.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticsearchDomain_EncryptionAtRestOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.EncryptionAtRestOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html -type AWSElasticsearchDomain_EncryptionAtRestOptions struct { - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-enabled - Enabled bool `json:"Enabled,omitempty"` - - // KmsKeyId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-kmskeyid - KmsKeyId string `json:"KmsKeyId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_EncryptionAtRestOptions) AWSCloudFormationType() string { - return "AWS::Elasticsearch::Domain.EncryptionAtRestOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_EncryptionAtRestOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_EncryptionAtRestOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_EncryptionAtRestOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_EncryptionAtRestOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_EncryptionAtRestOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_EncryptionAtRestOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticsearch-domain_nodetonodeencryptionoptions.go b/cloudformation/resources/aws-elasticsearch-domain_nodetonodeencryptionoptions.go deleted file mode 100644 index 70ce068c14..0000000000 --- a/cloudformation/resources/aws-elasticsearch-domain_nodetonodeencryptionoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticsearchDomain_NodeToNodeEncryptionOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.NodeToNodeEncryptionOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html -type AWSElasticsearchDomain_NodeToNodeEncryptionOptions struct { - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions-enabled - Enabled bool `json:"Enabled,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) AWSCloudFormationType() string { - return "AWS::Elasticsearch::Domain.NodeToNodeEncryptionOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticsearch-domain_snapshotoptions.go b/cloudformation/resources/aws-elasticsearch-domain_snapshotoptions.go deleted file mode 100644 index 55c3190717..0000000000 --- a/cloudformation/resources/aws-elasticsearch-domain_snapshotoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticsearchDomain_SnapshotOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.SnapshotOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html -type AWSElasticsearchDomain_SnapshotOptions struct { - - // AutomatedSnapshotStartHour AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html#cfn-elasticsearch-domain-snapshotoptions-automatedsnapshotstarthour - AutomatedSnapshotStartHour int `json:"AutomatedSnapshotStartHour,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_SnapshotOptions) AWSCloudFormationType() string { - return "AWS::Elasticsearch::Domain.SnapshotOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_SnapshotOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_SnapshotOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_SnapshotOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_SnapshotOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_SnapshotOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_SnapshotOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticsearch-domain_vpcoptions.go b/cloudformation/resources/aws-elasticsearch-domain_vpcoptions.go deleted file mode 100644 index 93ce129b5f..0000000000 --- a/cloudformation/resources/aws-elasticsearch-domain_vpcoptions.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticsearchDomain_VPCOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.VPCOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html -type AWSElasticsearchDomain_VPCOptions struct { - - // SecurityGroupIds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-securitygroupids - SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` - - // SubnetIds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-subnetids - SubnetIds []string `json:"SubnetIds,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_VPCOptions) AWSCloudFormationType() string { - return "AWS::Elasticsearch::Domain.VPCOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_VPCOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_VPCOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_VPCOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_VPCOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_VPCOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_VPCOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-elasticsearch-domain_zoneawarenessconfig.go b/cloudformation/resources/aws-elasticsearch-domain_zoneawarenessconfig.go deleted file mode 100644 index 3ac5b3a702..0000000000 --- a/cloudformation/resources/aws-elasticsearch-domain_zoneawarenessconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSElasticsearchDomain_ZoneAwarenessConfig AWS CloudFormation Resource (AWS::Elasticsearch::Domain.ZoneAwarenessConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html -type AWSElasticsearchDomain_ZoneAwarenessConfig struct { - - // AvailabilityZoneCount AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html#cfn-elasticsearch-domain-zoneawarenessconfig-availabilityzonecount - AvailabilityZoneCount int `json:"AvailabilityZoneCount,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_ZoneAwarenessConfig) AWSCloudFormationType() string { - return "AWS::Elasticsearch::Domain.ZoneAwarenessConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_ZoneAwarenessConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSElasticsearchDomain_ZoneAwarenessConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_ZoneAwarenessConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSElasticsearchDomain_ZoneAwarenessConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_ZoneAwarenessConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSElasticsearchDomain_ZoneAwarenessConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_autoscalingpolicy.go b/cloudformation/resources/aws-emr-cluster_autoscalingpolicy.go deleted file mode 100644 index f2edbfa6fb..0000000000 --- a/cloudformation/resources/aws-emr-cluster_autoscalingpolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_AutoScalingPolicy AWS CloudFormation Resource (AWS::EMR::Cluster.AutoScalingPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html -type AWSEMRCluster_AutoScalingPolicy struct { - - // Constraints AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-constraints - Constraints *AWSEMRCluster_ScalingConstraints `json:"Constraints,omitempty"` - - // Rules AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-rules - Rules []AWSEMRCluster_ScalingRule `json:"Rules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_AutoScalingPolicy) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.AutoScalingPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_AutoScalingPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_AutoScalingPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_AutoScalingPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_AutoScalingPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_AutoScalingPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_AutoScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_bootstrapactionconfig.go b/cloudformation/resources/aws-emr-cluster_bootstrapactionconfig.go deleted file mode 100644 index 7ace93c080..0000000000 --- a/cloudformation/resources/aws-emr-cluster_bootstrapactionconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_BootstrapActionConfig AWS CloudFormation Resource (AWS::EMR::Cluster.BootstrapActionConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html -type AWSEMRCluster_BootstrapActionConfig struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-name - Name string `json:"Name,omitempty"` - - // ScriptBootstrapAction AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-scriptbootstrapaction - ScriptBootstrapAction *AWSEMRCluster_ScriptBootstrapActionConfig `json:"ScriptBootstrapAction,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_BootstrapActionConfig) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.BootstrapActionConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_BootstrapActionConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_BootstrapActionConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_BootstrapActionConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_BootstrapActionConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_BootstrapActionConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_BootstrapActionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_ebsblockdeviceconfig.go b/cloudformation/resources/aws-emr-cluster_ebsblockdeviceconfig.go deleted file mode 100644 index 1ce65b220f..0000000000 --- a/cloudformation/resources/aws-emr-cluster_ebsblockdeviceconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::Cluster.EbsBlockDeviceConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html -type AWSEMRCluster_EbsBlockDeviceConfig struct { - - // VolumeSpecification AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumespecification - VolumeSpecification *AWSEMRCluster_VolumeSpecification `json:"VolumeSpecification,omitempty"` - - // VolumesPerInstance AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumesperinstance - VolumesPerInstance int `json:"VolumesPerInstance,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_EbsBlockDeviceConfig) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.EbsBlockDeviceConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_EbsBlockDeviceConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_EbsBlockDeviceConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_ebsconfiguration.go b/cloudformation/resources/aws-emr-cluster_ebsconfiguration.go deleted file mode 100644 index f5d3c49d52..0000000000 --- a/cloudformation/resources/aws-emr-cluster_ebsconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::Cluster.EbsConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html -type AWSEMRCluster_EbsConfiguration struct { - - // EbsBlockDeviceConfigs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsblockdeviceconfigs - EbsBlockDeviceConfigs []AWSEMRCluster_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` - - // EbsOptimized AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsoptimized - EbsOptimized bool `json:"EbsOptimized,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_EbsConfiguration) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.EbsConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_EbsConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_EbsConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_EbsConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_instancefleetprovisioningspecifications.go b/cloudformation/resources/aws-emr-cluster_instancefleetprovisioningspecifications.go deleted file mode 100644 index c642751c15..0000000000 --- a/cloudformation/resources/aws-emr-cluster_instancefleetprovisioningspecifications.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_InstanceFleetProvisioningSpecifications AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceFleetProvisioningSpecifications) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html -type AWSEMRCluster_InstanceFleetProvisioningSpecifications struct { - - // SpotSpecification AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-cluster-instancefleetprovisioningspecifications-spotspecification - SpotSpecification *AWSEMRCluster_SpotProvisioningSpecification `json:"SpotSpecification,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_InstanceFleetProvisioningSpecifications) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.InstanceFleetProvisioningSpecifications" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_InstanceFleetProvisioningSpecifications) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_InstanceFleetProvisioningSpecifications) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_InstanceFleetProvisioningSpecifications) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_InstanceFleetProvisioningSpecifications) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_InstanceFleetProvisioningSpecifications) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_InstanceFleetProvisioningSpecifications) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_placementtype.go b/cloudformation/resources/aws-emr-cluster_placementtype.go deleted file mode 100644 index d0d454da96..0000000000 --- a/cloudformation/resources/aws-emr-cluster_placementtype.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_PlacementType AWS CloudFormation Resource (AWS::EMR::Cluster.PlacementType) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html -type AWSEMRCluster_PlacementType struct { - - // AvailabilityZone AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html#cfn-elasticmapreduce-cluster-placementtype-availabilityzone - AvailabilityZone string `json:"AvailabilityZone,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_PlacementType) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.PlacementType" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_PlacementType) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_PlacementType) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_PlacementType) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_PlacementType) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_PlacementType) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_PlacementType) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_scalingaction.go b/cloudformation/resources/aws-emr-cluster_scalingaction.go deleted file mode 100644 index 194f50e06a..0000000000 --- a/cloudformation/resources/aws-emr-cluster_scalingaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_ScalingAction AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html -type AWSEMRCluster_ScalingAction struct { - - // Market AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-market - Market string `json:"Market,omitempty"` - - // SimpleScalingPolicyConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-simplescalingpolicyconfiguration - SimpleScalingPolicyConfiguration *AWSEMRCluster_SimpleScalingPolicyConfiguration `json:"SimpleScalingPolicyConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScalingAction) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.ScalingAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScalingAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScalingAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScalingAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScalingAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScalingAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScalingAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_scalingconstraints.go b/cloudformation/resources/aws-emr-cluster_scalingconstraints.go deleted file mode 100644 index 347beafa4b..0000000000 --- a/cloudformation/resources/aws-emr-cluster_scalingconstraints.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_ScalingConstraints AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingConstraints) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html -type AWSEMRCluster_ScalingConstraints struct { - - // MaxCapacity AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-maxcapacity - MaxCapacity int `json:"MaxCapacity"` - - // MinCapacity AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-mincapacity - MinCapacity int `json:"MinCapacity"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScalingConstraints) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.ScalingConstraints" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScalingConstraints) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScalingConstraints) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScalingConstraints) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScalingConstraints) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScalingConstraints) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScalingConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_scalingtrigger.go b/cloudformation/resources/aws-emr-cluster_scalingtrigger.go deleted file mode 100644 index 29c68fb987..0000000000 --- a/cloudformation/resources/aws-emr-cluster_scalingtrigger.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_ScalingTrigger AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingTrigger) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html -type AWSEMRCluster_ScalingTrigger struct { - - // CloudWatchAlarmDefinition AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html#cfn-elasticmapreduce-cluster-scalingtrigger-cloudwatchalarmdefinition - CloudWatchAlarmDefinition *AWSEMRCluster_CloudWatchAlarmDefinition `json:"CloudWatchAlarmDefinition,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScalingTrigger) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.ScalingTrigger" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScalingTrigger) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScalingTrigger) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScalingTrigger) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScalingTrigger) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScalingTrigger) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScalingTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-cluster_scriptbootstrapactionconfig.go b/cloudformation/resources/aws-emr-cluster_scriptbootstrapactionconfig.go deleted file mode 100644 index 53d520dd35..0000000000 --- a/cloudformation/resources/aws-emr-cluster_scriptbootstrapactionconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRCluster_ScriptBootstrapActionConfig AWS CloudFormation Resource (AWS::EMR::Cluster.ScriptBootstrapActionConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html -type AWSEMRCluster_ScriptBootstrapActionConfig struct { - - // Args AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-args - Args []string `json:"Args,omitempty"` - - // Path AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-path - Path string `json:"Path,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScriptBootstrapActionConfig) AWSCloudFormationType() string { - return "AWS::EMR::Cluster.ScriptBootstrapActionConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScriptBootstrapActionConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRCluster_ScriptBootstrapActionConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScriptBootstrapActionConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRCluster_ScriptBootstrapActionConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScriptBootstrapActionConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRCluster_ScriptBootstrapActionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_configuration.go b/cloudformation/resources/aws-emr-instancefleetconfig_configuration.go deleted file mode 100644 index e1f6d429aa..0000000000 --- a/cloudformation/resources/aws-emr-instancefleetconfig_configuration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceFleetConfig_Configuration AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.Configuration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html -type AWSEMRInstanceFleetConfig_Configuration struct { - - // Classification AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-classification - Classification string `json:"Classification,omitempty"` - - // ConfigurationProperties AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurationproperties - ConfigurationProperties map[string]string `json:"ConfigurationProperties,omitempty"` - - // Configurations AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurations - Configurations []AWSEMRInstanceFleetConfig_Configuration `json:"Configurations,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_Configuration) AWSCloudFormationType() string { - return "AWS::EMR::InstanceFleetConfig.Configuration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_Configuration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_Configuration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_Configuration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_Configuration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_Configuration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go b/cloudformation/resources/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go deleted file mode 100644 index 376a2180b0..0000000000 --- a/cloudformation/resources/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.EbsBlockDeviceConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html -type AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig struct { - - // VolumeSpecification AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumespecification - VolumeSpecification *AWSEMRInstanceFleetConfig_VolumeSpecification `json:"VolumeSpecification,omitempty"` - - // VolumesPerInstance AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumesperinstance - VolumesPerInstance int `json:"VolumesPerInstance,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) AWSCloudFormationType() string { - return "AWS::EMR::InstanceFleetConfig.EbsBlockDeviceConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_ebsconfiguration.go b/cloudformation/resources/aws-emr-instancefleetconfig_ebsconfiguration.go deleted file mode 100644 index ad522d87f9..0000000000 --- a/cloudformation/resources/aws-emr-instancefleetconfig_ebsconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceFleetConfig_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.EbsConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html -type AWSEMRInstanceFleetConfig_EbsConfiguration struct { - - // EbsBlockDeviceConfigs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsblockdeviceconfigs - EbsBlockDeviceConfigs []AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` - - // EbsOptimized AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsoptimized - EbsOptimized bool `json:"EbsOptimized,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_EbsConfiguration) AWSCloudFormationType() string { - return "AWS::EMR::InstanceFleetConfig.EbsConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_EbsConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_EbsConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_EbsConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go b/cloudformation/resources/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go deleted file mode 100644 index bf638cf52b..0000000000 --- a/cloudformation/resources/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.InstanceFleetProvisioningSpecifications) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html -type AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications struct { - - // SpotSpecification AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications-spotspecification - SpotSpecification *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification `json:"SpotSpecification,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) AWSCloudFormationType() string { - return "AWS::EMR::InstanceFleetConfig.InstanceFleetProvisioningSpecifications" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_spotprovisioningspecification.go b/cloudformation/resources/aws-emr-instancefleetconfig_spotprovisioningspecification.go deleted file mode 100644 index fa7d2416fc..0000000000 --- a/cloudformation/resources/aws-emr-instancefleetconfig_spotprovisioningspecification.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceFleetConfig_SpotProvisioningSpecification AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.SpotProvisioningSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html -type AWSEMRInstanceFleetConfig_SpotProvisioningSpecification struct { - - // BlockDurationMinutes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-blockdurationminutes - BlockDurationMinutes int `json:"BlockDurationMinutes,omitempty"` - - // TimeoutAction AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutaction - TimeoutAction string `json:"TimeoutAction,omitempty"` - - // TimeoutDurationMinutes AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutdurationminutes - TimeoutDurationMinutes int `json:"TimeoutDurationMinutes"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) AWSCloudFormationType() string { - return "AWS::EMR::InstanceFleetConfig.SpotProvisioningSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_volumespecification.go b/cloudformation/resources/aws-emr-instancefleetconfig_volumespecification.go deleted file mode 100644 index 76dec24849..0000000000 --- a/cloudformation/resources/aws-emr-instancefleetconfig_volumespecification.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceFleetConfig_VolumeSpecification AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.VolumeSpecification) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html -type AWSEMRInstanceFleetConfig_VolumeSpecification struct { - - // Iops AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-iops - Iops int `json:"Iops,omitempty"` - - // SizeInGB AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-sizeingb - SizeInGB int `json:"SizeInGB"` - - // VolumeType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-volumetype - VolumeType string `json:"VolumeType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_VolumeSpecification) AWSCloudFormationType() string { - return "AWS::EMR::InstanceFleetConfig.VolumeSpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_VolumeSpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceFleetConfig_VolumeSpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_VolumeSpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceFleetConfig_VolumeSpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_VolumeSpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceFleetConfig_VolumeSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_autoscalingpolicy.go b/cloudformation/resources/aws-emr-instancegroupconfig_autoscalingpolicy.go deleted file mode 100644 index 6d04b7c3b5..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_autoscalingpolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_AutoScalingPolicy AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.AutoScalingPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html -type AWSEMRInstanceGroupConfig_AutoScalingPolicy struct { - - // Constraints AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-constraints - Constraints *AWSEMRInstanceGroupConfig_ScalingConstraints `json:"Constraints,omitempty"` - - // Rules AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-rules - Rules []AWSEMRInstanceGroupConfig_ScalingRule `json:"Rules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_AutoScalingPolicy) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.AutoScalingPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_AutoScalingPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_AutoScalingPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_AutoScalingPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_AutoScalingPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_AutoScalingPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_AutoScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_configuration.go b/cloudformation/resources/aws-emr-instancegroupconfig_configuration.go deleted file mode 100644 index 10382f7e3a..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_configuration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_Configuration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.Configuration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html -type AWSEMRInstanceGroupConfig_Configuration struct { - - // Classification AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-classification - Classification string `json:"Classification,omitempty"` - - // ConfigurationProperties AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurationproperties - ConfigurationProperties map[string]string `json:"ConfigurationProperties,omitempty"` - - // Configurations AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurations - Configurations []AWSEMRInstanceGroupConfig_Configuration `json:"Configurations,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_Configuration) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.Configuration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_Configuration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_Configuration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_Configuration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_Configuration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_Configuration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go b/cloudformation/resources/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go deleted file mode 100644 index 17fec8e791..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.EbsBlockDeviceConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html -type AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig struct { - - // VolumeSpecification AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification - VolumeSpecification *AWSEMRInstanceGroupConfig_VolumeSpecification `json:"VolumeSpecification,omitempty"` - - // VolumesPerInstance AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumesperinstance - VolumesPerInstance int `json:"VolumesPerInstance,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.EbsBlockDeviceConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_ebsconfiguration.go b/cloudformation/resources/aws-emr-instancegroupconfig_ebsconfiguration.go deleted file mode 100644 index 2c7ccc6449..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_ebsconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.EbsConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html -type AWSEMRInstanceGroupConfig_EbsConfiguration struct { - - // EbsBlockDeviceConfigs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfigs - EbsBlockDeviceConfigs []AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` - - // EbsOptimized AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsoptimized - EbsOptimized bool `json:"EbsOptimized,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_EbsConfiguration) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.EbsConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_EbsConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_EbsConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_EbsConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_metricdimension.go b/cloudformation/resources/aws-emr-instancegroupconfig_metricdimension.go deleted file mode 100644 index 45e09959ce..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_metricdimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_MetricDimension AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.MetricDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html -type AWSEMRInstanceGroupConfig_MetricDimension struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_MetricDimension) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.MetricDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_MetricDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_MetricDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_MetricDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_MetricDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_MetricDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_scalingaction.go b/cloudformation/resources/aws-emr-instancegroupconfig_scalingaction.go deleted file mode 100644 index 34d336dab9..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_scalingaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_ScalingAction AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html -type AWSEMRInstanceGroupConfig_ScalingAction struct { - - // Market AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-market - Market string `json:"Market,omitempty"` - - // SimpleScalingPolicyConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-simplescalingpolicyconfiguration - SimpleScalingPolicyConfiguration *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration `json:"SimpleScalingPolicyConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_ScalingAction) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.ScalingAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_ScalingAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_ScalingAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_ScalingAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_ScalingAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_ScalingAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_ScalingAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_scalingconstraints.go b/cloudformation/resources/aws-emr-instancegroupconfig_scalingconstraints.go deleted file mode 100644 index 423690e155..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_scalingconstraints.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_ScalingConstraints AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingConstraints) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html -type AWSEMRInstanceGroupConfig_ScalingConstraints struct { - - // MaxCapacity AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-maxcapacity - MaxCapacity int `json:"MaxCapacity"` - - // MinCapacity AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-mincapacity - MinCapacity int `json:"MinCapacity"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_ScalingConstraints) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.ScalingConstraints" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_ScalingConstraints) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_ScalingConstraints) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_ScalingConstraints) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_ScalingConstraints) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_ScalingConstraints) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_ScalingConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_scalingrule.go b/cloudformation/resources/aws-emr-instancegroupconfig_scalingrule.go deleted file mode 100644 index 3d204d9f25..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_scalingrule.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_ScalingRule AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingRule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html -type AWSEMRInstanceGroupConfig_ScalingRule struct { - - // Action AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-action - Action *AWSEMRInstanceGroupConfig_ScalingAction `json:"Action,omitempty"` - - // Description AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-description - Description string `json:"Description,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-name - Name string `json:"Name,omitempty"` - - // Trigger AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-trigger - Trigger *AWSEMRInstanceGroupConfig_ScalingTrigger `json:"Trigger,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_ScalingRule) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.ScalingRule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_ScalingRule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_ScalingRule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_ScalingRule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_ScalingRule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_ScalingRule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_ScalingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_scalingtrigger.go b/cloudformation/resources/aws-emr-instancegroupconfig_scalingtrigger.go deleted file mode 100644 index 33a0c14109..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_scalingtrigger.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_ScalingTrigger AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingTrigger) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html -type AWSEMRInstanceGroupConfig_ScalingTrigger struct { - - // CloudWatchAlarmDefinition AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html#cfn-elasticmapreduce-instancegroupconfig-scalingtrigger-cloudwatchalarmdefinition - CloudWatchAlarmDefinition *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition `json:"CloudWatchAlarmDefinition,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_ScalingTrigger) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.ScalingTrigger" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_ScalingTrigger) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_ScalingTrigger) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_ScalingTrigger) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_ScalingTrigger) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_ScalingTrigger) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_ScalingTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go b/cloudformation/resources/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go deleted file mode 100644 index a4a80dc867..0000000000 --- a/cloudformation/resources/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.SimpleScalingPolicyConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html -type AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration struct { - - // AdjustmentType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-adjustmenttype - AdjustmentType string `json:"AdjustmentType,omitempty"` - - // CoolDown AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-cooldown - CoolDown int `json:"CoolDown,omitempty"` - - // ScalingAdjustment AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-scalingadjustment - ScalingAdjustment int `json:"ScalingAdjustment"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) AWSCloudFormationType() string { - return "AWS::EMR::InstanceGroupConfig.SimpleScalingPolicyConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-events-rule_kinesisparameters.go b/cloudformation/resources/aws-events-rule_kinesisparameters.go deleted file mode 100644 index 01c057ac5b..0000000000 --- a/cloudformation/resources/aws-events-rule_kinesisparameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEventsRule_KinesisParameters AWS CloudFormation Resource (AWS::Events::Rule.KinesisParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-kinesisparameters.html -type AWSEventsRule_KinesisParameters struct { - - // PartitionKeyPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-kinesisparameters.html#cfn-events-rule-kinesisparameters-partitionkeypath - PartitionKeyPath string `json:"PartitionKeyPath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_KinesisParameters) AWSCloudFormationType() string { - return "AWS::Events::Rule.KinesisParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_KinesisParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_KinesisParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_KinesisParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_KinesisParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_KinesisParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_KinesisParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-events-rule_networkconfiguration.go b/cloudformation/resources/aws-events-rule_networkconfiguration.go deleted file mode 100644 index 5ccb97d734..0000000000 --- a/cloudformation/resources/aws-events-rule_networkconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEventsRule_NetworkConfiguration AWS CloudFormation Resource (AWS::Events::Rule.NetworkConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-networkconfiguration.html -type AWSEventsRule_NetworkConfiguration struct { - - // AwsVpcConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-networkconfiguration.html#cfn-events-rule-networkconfiguration-awsvpcconfiguration - AwsVpcConfiguration *AWSEventsRule_AwsVpcConfiguration `json:"AwsVpcConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_NetworkConfiguration) AWSCloudFormationType() string { - return "AWS::Events::Rule.NetworkConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_NetworkConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_NetworkConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_NetworkConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_NetworkConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_NetworkConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-events-rule_runcommandparameters.go b/cloudformation/resources/aws-events-rule_runcommandparameters.go deleted file mode 100644 index fe307eeaa4..0000000000 --- a/cloudformation/resources/aws-events-rule_runcommandparameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEventsRule_RunCommandParameters AWS CloudFormation Resource (AWS::Events::Rule.RunCommandParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandparameters.html -type AWSEventsRule_RunCommandParameters struct { - - // RunCommandTargets AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandparameters.html#cfn-events-rule-runcommandparameters-runcommandtargets - RunCommandTargets []AWSEventsRule_RunCommandTarget `json:"RunCommandTargets,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_RunCommandParameters) AWSCloudFormationType() string { - return "AWS::Events::Rule.RunCommandParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_RunCommandParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_RunCommandParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_RunCommandParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_RunCommandParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_RunCommandParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_RunCommandParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-events-rule_runcommandtarget.go b/cloudformation/resources/aws-events-rule_runcommandtarget.go deleted file mode 100644 index 981d89065f..0000000000 --- a/cloudformation/resources/aws-events-rule_runcommandtarget.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEventsRule_RunCommandTarget AWS CloudFormation Resource (AWS::Events::Rule.RunCommandTarget) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html -type AWSEventsRule_RunCommandTarget struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html#cfn-events-rule-runcommandtarget-key - Key string `json:"Key,omitempty"` - - // Values AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html#cfn-events-rule-runcommandtarget-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_RunCommandTarget) AWSCloudFormationType() string { - return "AWS::Events::Rule.RunCommandTarget" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_RunCommandTarget) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_RunCommandTarget) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_RunCommandTarget) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_RunCommandTarget) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_RunCommandTarget) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_RunCommandTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-events-rule_sqsparameters.go b/cloudformation/resources/aws-events-rule_sqsparameters.go deleted file mode 100644 index b108e93d47..0000000000 --- a/cloudformation/resources/aws-events-rule_sqsparameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSEventsRule_SqsParameters AWS CloudFormation Resource (AWS::Events::Rule.SqsParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-sqsparameters.html -type AWSEventsRule_SqsParameters struct { - - // MessageGroupId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-sqsparameters.html#cfn-events-rule-sqsparameters-messagegroupid - MessageGroupId string `json:"MessageGroupId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_SqsParameters) AWSCloudFormationType() string { - return "AWS::Events::Rule.SqsParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_SqsParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSEventsRule_SqsParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_SqsParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSEventsRule_SqsParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_SqsParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSEventsRule_SqsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-classifier_jsonclassifier.go b/cloudformation/resources/aws-glue-classifier_jsonclassifier.go deleted file mode 100644 index b89c735744..0000000000 --- a/cloudformation/resources/aws-glue-classifier_jsonclassifier.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueClassifier_JsonClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.JsonClassifier) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html -type AWSGlueClassifier_JsonClassifier struct { - - // JsonPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html#cfn-glue-classifier-jsonclassifier-jsonpath - JsonPath string `json:"JsonPath,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html#cfn-glue-classifier-jsonclassifier-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueClassifier_JsonClassifier) AWSCloudFormationType() string { - return "AWS::Glue::Classifier.JsonClassifier" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier_JsonClassifier) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueClassifier_JsonClassifier) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier_JsonClassifier) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueClassifier_JsonClassifier) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier_JsonClassifier) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueClassifier_JsonClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-connection_physicalconnectionrequirements.go b/cloudformation/resources/aws-glue-connection_physicalconnectionrequirements.go deleted file mode 100644 index 0acfe05193..0000000000 --- a/cloudformation/resources/aws-glue-connection_physicalconnectionrequirements.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueConnection_PhysicalConnectionRequirements AWS CloudFormation Resource (AWS::Glue::Connection.PhysicalConnectionRequirements) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html -type AWSGlueConnection_PhysicalConnectionRequirements struct { - - // AvailabilityZone AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-availabilityzone - AvailabilityZone string `json:"AvailabilityZone,omitempty"` - - // SecurityGroupIdList AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-securitygroupidlist - SecurityGroupIdList []string `json:"SecurityGroupIdList,omitempty"` - - // SubnetId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-subnetid - SubnetId string `json:"SubnetId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueConnection_PhysicalConnectionRequirements) AWSCloudFormationType() string { - return "AWS::Glue::Connection.PhysicalConnectionRequirements" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueConnection_PhysicalConnectionRequirements) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueConnection_PhysicalConnectionRequirements) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueConnection_PhysicalConnectionRequirements) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueConnection_PhysicalConnectionRequirements) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueConnection_PhysicalConnectionRequirements) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueConnection_PhysicalConnectionRequirements) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-crawler_schedule.go b/cloudformation/resources/aws-glue-crawler_schedule.go deleted file mode 100644 index 99a5cff6d1..0000000000 --- a/cloudformation/resources/aws-glue-crawler_schedule.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueCrawler_Schedule AWS CloudFormation Resource (AWS::Glue::Crawler.Schedule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schedule.html -type AWSGlueCrawler_Schedule struct { - - // ScheduleExpression AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schedule.html#cfn-glue-crawler-schedule-scheduleexpression - ScheduleExpression string `json:"ScheduleExpression,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler_Schedule) AWSCloudFormationType() string { - return "AWS::Glue::Crawler.Schedule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_Schedule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_Schedule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_Schedule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_Schedule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_Schedule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-crawler_schemachangepolicy.go b/cloudformation/resources/aws-glue-crawler_schemachangepolicy.go deleted file mode 100644 index 98e6ac83f3..0000000000 --- a/cloudformation/resources/aws-glue-crawler_schemachangepolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueCrawler_SchemaChangePolicy AWS CloudFormation Resource (AWS::Glue::Crawler.SchemaChangePolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html -type AWSGlueCrawler_SchemaChangePolicy struct { - - // DeleteBehavior AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html#cfn-glue-crawler-schemachangepolicy-deletebehavior - DeleteBehavior string `json:"DeleteBehavior,omitempty"` - - // UpdateBehavior AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html#cfn-glue-crawler-schemachangepolicy-updatebehavior - UpdateBehavior string `json:"UpdateBehavior,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler_SchemaChangePolicy) AWSCloudFormationType() string { - return "AWS::Glue::Crawler.SchemaChangePolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_SchemaChangePolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_SchemaChangePolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_SchemaChangePolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_SchemaChangePolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_SchemaChangePolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_SchemaChangePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-crawler_targets.go b/cloudformation/resources/aws-glue-crawler_targets.go deleted file mode 100644 index a7ea193bf6..0000000000 --- a/cloudformation/resources/aws-glue-crawler_targets.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueCrawler_Targets AWS CloudFormation Resource (AWS::Glue::Crawler.Targets) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html -type AWSGlueCrawler_Targets struct { - - // JdbcTargets AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-jdbctargets - JdbcTargets []AWSGlueCrawler_JdbcTarget `json:"JdbcTargets,omitempty"` - - // S3Targets AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-s3targets - S3Targets []AWSGlueCrawler_S3Target `json:"S3Targets,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler_Targets) AWSCloudFormationType() string { - return "AWS::Glue::Crawler.Targets" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_Targets) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueCrawler_Targets) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_Targets) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueCrawler_Targets) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_Targets) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueCrawler_Targets) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-datacatalogencryptionsettings.go b/cloudformation/resources/aws-glue-datacatalogencryptionsettings.go deleted file mode 100644 index 55ff3296e6..0000000000 --- a/cloudformation/resources/aws-glue-datacatalogencryptionsettings.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSGlueDataCatalogEncryptionSettings AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html -type AWSGlueDataCatalogEncryptionSettings struct { - - // CatalogId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-catalogid - CatalogId string `json:"CatalogId,omitempty"` - - // DataCatalogEncryptionSettings AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings - DataCatalogEncryptionSettings *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings `json:"DataCatalogEncryptionSettings,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDataCatalogEncryptionSettings) AWSCloudFormationType() string { - return "AWS::Glue::DataCatalogEncryptionSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDataCatalogEncryptionSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDataCatalogEncryptionSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDataCatalogEncryptionSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDataCatalogEncryptionSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDataCatalogEncryptionSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDataCatalogEncryptionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGlueDataCatalogEncryptionSettings) MarshalJSON() ([]byte, error) { - type Properties AWSGlueDataCatalogEncryptionSettings - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGlueDataCatalogEncryptionSettings) UnmarshalJSON(b []byte) error { - type Properties AWSGlueDataCatalogEncryptionSettings - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSGlueDataCatalogEncryptionSettings(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go b/cloudformation/resources/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go deleted file mode 100644 index 8e2f06e4d6..0000000000 --- a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.ConnectionPasswordEncryption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html -type AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption struct { - - // KmsKeyId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html#cfn-glue-datacatalogencryptionsettings-connectionpasswordencryption-kmskeyid - KmsKeyId string `json:"KmsKeyId,omitempty"` - - // ReturnConnectionPasswordEncrypted AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html#cfn-glue-datacatalogencryptionsettings-connectionpasswordencryption-returnconnectionpasswordencrypted - ReturnConnectionPasswordEncrypted bool `json:"ReturnConnectionPasswordEncrypted,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) AWSCloudFormationType() string { - return "AWS::Glue::DataCatalogEncryptionSettings.ConnectionPasswordEncryption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go b/cloudformation/resources/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go deleted file mode 100644 index 2c3687e461..0000000000 --- a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.DataCatalogEncryptionSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html -type AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings struct { - - // ConnectionPasswordEncryption AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings-connectionpasswordencryption - ConnectionPasswordEncryption *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption `json:"ConnectionPasswordEncryption,omitempty"` - - // EncryptionAtRest AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings-encryptionatrest - EncryptionAtRest *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest `json:"EncryptionAtRest,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) AWSCloudFormationType() string { - return "AWS::Glue::DataCatalogEncryptionSettings.DataCatalogEncryptionSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_encryptionatrest.go b/cloudformation/resources/aws-glue-datacatalogencryptionsettings_encryptionatrest.go deleted file mode 100644 index 0befca6a4f..0000000000 --- a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_encryptionatrest.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.EncryptionAtRest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html -type AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest struct { - - // CatalogEncryptionMode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html#cfn-glue-datacatalogencryptionsettings-encryptionatrest-catalogencryptionmode - CatalogEncryptionMode string `json:"CatalogEncryptionMode,omitempty"` - - // SseAwsKmsKeyId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html#cfn-glue-datacatalogencryptionsettings-encryptionatrest-sseawskmskeyid - SseAwsKmsKeyId string `json:"SseAwsKmsKeyId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) AWSCloudFormationType() string { - return "AWS::Glue::DataCatalogEncryptionSettings.EncryptionAtRest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-job_connectionslist.go b/cloudformation/resources/aws-glue-job_connectionslist.go deleted file mode 100644 index 4e95ba9b5c..0000000000 --- a/cloudformation/resources/aws-glue-job_connectionslist.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueJob_ConnectionsList AWS CloudFormation Resource (AWS::Glue::Job.ConnectionsList) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-connectionslist.html -type AWSGlueJob_ConnectionsList struct { - - // Connections AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-connectionslist.html#cfn-glue-job-connectionslist-connections - Connections []string `json:"Connections,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueJob_ConnectionsList) AWSCloudFormationType() string { - return "AWS::Glue::Job.ConnectionsList" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob_ConnectionsList) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob_ConnectionsList) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob_ConnectionsList) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob_ConnectionsList) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob_ConnectionsList) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob_ConnectionsList) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-job_executionproperty.go b/cloudformation/resources/aws-glue-job_executionproperty.go deleted file mode 100644 index 480eeb4f35..0000000000 --- a/cloudformation/resources/aws-glue-job_executionproperty.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueJob_ExecutionProperty AWS CloudFormation Resource (AWS::Glue::Job.ExecutionProperty) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-executionproperty.html -type AWSGlueJob_ExecutionProperty struct { - - // MaxConcurrentRuns AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-executionproperty.html#cfn-glue-job-executionproperty-maxconcurrentruns - MaxConcurrentRuns float64 `json:"MaxConcurrentRuns,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueJob_ExecutionProperty) AWSCloudFormationType() string { - return "AWS::Glue::Job.ExecutionProperty" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob_ExecutionProperty) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob_ExecutionProperty) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob_ExecutionProperty) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob_ExecutionProperty) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob_ExecutionProperty) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob_ExecutionProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-job_notificationproperty.go b/cloudformation/resources/aws-glue-job_notificationproperty.go deleted file mode 100644 index c2ce6c9cfb..0000000000 --- a/cloudformation/resources/aws-glue-job_notificationproperty.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueJob_NotificationProperty AWS CloudFormation Resource (AWS::Glue::Job.NotificationProperty) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-notificationproperty.html -type AWSGlueJob_NotificationProperty struct { - - // NotifyDelayAfter AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-notificationproperty.html#cfn-glue-job-notificationproperty-notifydelayafter - NotifyDelayAfter int `json:"NotifyDelayAfter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueJob_NotificationProperty) AWSCloudFormationType() string { - return "AWS::Glue::Job.NotificationProperty" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob_NotificationProperty) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueJob_NotificationProperty) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob_NotificationProperty) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueJob_NotificationProperty) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob_NotificationProperty) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueJob_NotificationProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-mltransform_inputrecordtables.go b/cloudformation/resources/aws-glue-mltransform_inputrecordtables.go deleted file mode 100644 index beb7bd89a5..0000000000 --- a/cloudformation/resources/aws-glue-mltransform_inputrecordtables.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueMLTransform_InputRecordTables AWS CloudFormation Resource (AWS::Glue::MLTransform.InputRecordTables) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables.html -type AWSGlueMLTransform_InputRecordTables struct { - - // GlueTables AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables.html#cfn-glue-mltransform-inputrecordtables-gluetables - GlueTables []AWSGlueMLTransform_GlueTables `json:"GlueTables,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueMLTransform_InputRecordTables) AWSCloudFormationType() string { - return "AWS::Glue::MLTransform.InputRecordTables" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform_InputRecordTables) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform_InputRecordTables) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform_InputRecordTables) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform_InputRecordTables) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform_InputRecordTables) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform_InputRecordTables) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-mltransform_transformparameters.go b/cloudformation/resources/aws-glue-mltransform_transformparameters.go deleted file mode 100644 index 3e1e6fa4d8..0000000000 --- a/cloudformation/resources/aws-glue-mltransform_transformparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueMLTransform_TransformParameters AWS CloudFormation Resource (AWS::Glue::MLTransform.TransformParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html -type AWSGlueMLTransform_TransformParameters struct { - - // FindMatchesParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters - FindMatchesParameters *AWSGlueMLTransform_FindMatchesParameters `json:"FindMatchesParameters,omitempty"` - - // TransformType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html#cfn-glue-mltransform-transformparameters-transformtype - TransformType string `json:"TransformType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueMLTransform_TransformParameters) AWSCloudFormationType() string { - return "AWS::Glue::MLTransform.TransformParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform_TransformParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueMLTransform_TransformParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform_TransformParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueMLTransform_TransformParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform_TransformParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueMLTransform_TransformParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-partition_partitioninput.go b/cloudformation/resources/aws-glue-partition_partitioninput.go deleted file mode 100644 index 1a094b8dd5..0000000000 --- a/cloudformation/resources/aws-glue-partition_partitioninput.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGluePartition_PartitionInput AWS CloudFormation Resource (AWS::Glue::Partition.PartitionInput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html -type AWSGluePartition_PartitionInput struct { - - // Parameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-parameters - Parameters interface{} `json:"Parameters,omitempty"` - - // StorageDescriptor AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-storagedescriptor - StorageDescriptor *AWSGluePartition_StorageDescriptor `json:"StorageDescriptor,omitempty"` - - // Values AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGluePartition_PartitionInput) AWSCloudFormationType() string { - return "AWS::Glue::Partition.PartitionInput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_PartitionInput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGluePartition_PartitionInput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_PartitionInput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGluePartition_PartitionInput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_PartitionInput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGluePartition_PartitionInput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-securityconfiguration_cloudwatchencryption.go b/cloudformation/resources/aws-glue-securityconfiguration_cloudwatchencryption.go deleted file mode 100644 index 6a6d52e6ae..0000000000 --- a/cloudformation/resources/aws-glue-securityconfiguration_cloudwatchencryption.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueSecurityConfiguration_CloudWatchEncryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.CloudWatchEncryption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html -type AWSGlueSecurityConfiguration_CloudWatchEncryption struct { - - // CloudWatchEncryptionMode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html#cfn-glue-securityconfiguration-cloudwatchencryption-cloudwatchencryptionmode - CloudWatchEncryptionMode string `json:"CloudWatchEncryptionMode,omitempty"` - - // KmsKeyArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html#cfn-glue-securityconfiguration-cloudwatchencryption-kmskeyarn - KmsKeyArn string `json:"KmsKeyArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_CloudWatchEncryption) AWSCloudFormationType() string { - return "AWS::Glue::SecurityConfiguration.CloudWatchEncryption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_CloudWatchEncryption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_CloudWatchEncryption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_CloudWatchEncryption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_CloudWatchEncryption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_CloudWatchEncryption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_CloudWatchEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-securityconfiguration_encryptionconfiguration.go b/cloudformation/resources/aws-glue-securityconfiguration_encryptionconfiguration.go deleted file mode 100644 index 4aa220f32d..0000000000 --- a/cloudformation/resources/aws-glue-securityconfiguration_encryptionconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueSecurityConfiguration_EncryptionConfiguration AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.EncryptionConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html -type AWSGlueSecurityConfiguration_EncryptionConfiguration struct { - - // CloudWatchEncryption AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-cloudwatchencryption - CloudWatchEncryption *AWSGlueSecurityConfiguration_CloudWatchEncryption `json:"CloudWatchEncryption,omitempty"` - - // JobBookmarksEncryption AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-jobbookmarksencryption - JobBookmarksEncryption *AWSGlueSecurityConfiguration_JobBookmarksEncryption `json:"JobBookmarksEncryption,omitempty"` - - // S3Encryptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-s3encryptions - S3Encryptions *AWSGlueSecurityConfiguration_S3Encryptions `json:"S3Encryptions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_EncryptionConfiguration) AWSCloudFormationType() string { - return "AWS::Glue::SecurityConfiguration.EncryptionConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_EncryptionConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_EncryptionConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_EncryptionConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-securityconfiguration_jobbookmarksencryption.go b/cloudformation/resources/aws-glue-securityconfiguration_jobbookmarksencryption.go deleted file mode 100644 index d72b4d2656..0000000000 --- a/cloudformation/resources/aws-glue-securityconfiguration_jobbookmarksencryption.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueSecurityConfiguration_JobBookmarksEncryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.JobBookmarksEncryption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html -type AWSGlueSecurityConfiguration_JobBookmarksEncryption struct { - - // JobBookmarksEncryptionMode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html#cfn-glue-securityconfiguration-jobbookmarksencryption-jobbookmarksencryptionmode - JobBookmarksEncryptionMode string `json:"JobBookmarksEncryptionMode,omitempty"` - - // KmsKeyArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html#cfn-glue-securityconfiguration-jobbookmarksencryption-kmskeyarn - KmsKeyArn string `json:"KmsKeyArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_JobBookmarksEncryption) AWSCloudFormationType() string { - return "AWS::Glue::SecurityConfiguration.JobBookmarksEncryption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_JobBookmarksEncryption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_JobBookmarksEncryption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_JobBookmarksEncryption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_JobBookmarksEncryption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_JobBookmarksEncryption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_JobBookmarksEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-securityconfiguration_s3encryption.go b/cloudformation/resources/aws-glue-securityconfiguration_s3encryption.go deleted file mode 100644 index b2dadd9316..0000000000 --- a/cloudformation/resources/aws-glue-securityconfiguration_s3encryption.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueSecurityConfiguration_S3Encryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.S3Encryption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html -type AWSGlueSecurityConfiguration_S3Encryption struct { - - // KmsKeyArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html#cfn-glue-securityconfiguration-s3encryption-kmskeyarn - KmsKeyArn string `json:"KmsKeyArn,omitempty"` - - // S3EncryptionMode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html#cfn-glue-securityconfiguration-s3encryption-s3encryptionmode - S3EncryptionMode string `json:"S3EncryptionMode,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_S3Encryption) AWSCloudFormationType() string { - return "AWS::Glue::SecurityConfiguration.S3Encryption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_S3Encryption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_S3Encryption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_S3Encryption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_S3Encryption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_S3Encryption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_S3Encryption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-securityconfiguration_s3encryptions.go b/cloudformation/resources/aws-glue-securityconfiguration_s3encryptions.go deleted file mode 100644 index 4cc71da5c0..0000000000 --- a/cloudformation/resources/aws-glue-securityconfiguration_s3encryptions.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueSecurityConfiguration_S3Encryptions AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.S3Encryptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryptions.html -type AWSGlueSecurityConfiguration_S3Encryptions struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_S3Encryptions) AWSCloudFormationType() string { - return "AWS::Glue::SecurityConfiguration.S3Encryptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_S3Encryptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueSecurityConfiguration_S3Encryptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_S3Encryptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueSecurityConfiguration_S3Encryptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_S3Encryptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueSecurityConfiguration_S3Encryptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-trigger_notificationproperty.go b/cloudformation/resources/aws-glue-trigger_notificationproperty.go deleted file mode 100644 index 9292aaf281..0000000000 --- a/cloudformation/resources/aws-glue-trigger_notificationproperty.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueTrigger_NotificationProperty AWS CloudFormation Resource (AWS::Glue::Trigger.NotificationProperty) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-notificationproperty.html -type AWSGlueTrigger_NotificationProperty struct { - - // NotifyDelayAfter AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-notificationproperty.html#cfn-glue-trigger-notificationproperty-notifydelayafter - NotifyDelayAfter int `json:"NotifyDelayAfter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTrigger_NotificationProperty) AWSCloudFormationType() string { - return "AWS::Glue::Trigger.NotificationProperty" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger_NotificationProperty) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger_NotificationProperty) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger_NotificationProperty) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger_NotificationProperty) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger_NotificationProperty) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger_NotificationProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-glue-trigger_predicate.go b/cloudformation/resources/aws-glue-trigger_predicate.go deleted file mode 100644 index 96a2c20403..0000000000 --- a/cloudformation/resources/aws-glue-trigger_predicate.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGlueTrigger_Predicate AWS CloudFormation Resource (AWS::Glue::Trigger.Predicate) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html -type AWSGlueTrigger_Predicate struct { - - // Conditions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html#cfn-glue-trigger-predicate-conditions - Conditions []AWSGlueTrigger_Condition `json:"Conditions,omitempty"` - - // Logical AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html#cfn-glue-trigger-predicate-logical - Logical string `json:"Logical,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTrigger_Predicate) AWSCloudFormationType() string { - return "AWS::Glue::Trigger.Predicate" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger_Predicate) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGlueTrigger_Predicate) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger_Predicate) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGlueTrigger_Predicate) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger_Predicate) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGlueTrigger_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-connectordefinition_connector.go b/cloudformation/resources/aws-greengrass-connectordefinition_connector.go deleted file mode 100644 index 3bea236bfb..0000000000 --- a/cloudformation/resources/aws-greengrass-connectordefinition_connector.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassConnectorDefinition_Connector AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinition.Connector) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html -type AWSGreengrassConnectorDefinition_Connector struct { - - // ConnectorArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-connectorarn - ConnectorArn string `json:"ConnectorArn,omitempty"` - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-id - Id string `json:"Id,omitempty"` - - // Parameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-parameters - Parameters interface{} `json:"Parameters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassConnectorDefinition_Connector) AWSCloudFormationType() string { - return "AWS::Greengrass::ConnectorDefinition.Connector" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinition_Connector) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinition_Connector) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinition_Connector) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinition_Connector) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinition_Connector) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinition_Connector) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-connectordefinition_connectordefinitionversion.go b/cloudformation/resources/aws-greengrass-connectordefinition_connectordefinitionversion.go deleted file mode 100644 index 89c63b1f6c..0000000000 --- a/cloudformation/resources/aws-greengrass-connectordefinition_connectordefinitionversion.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinition.ConnectorDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html -type AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion struct { - - // Connectors AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html#cfn-greengrass-connectordefinition-connectordefinitionversion-connectors - Connectors []AWSGreengrassConnectorDefinition_Connector `json:"Connectors,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::ConnectorDefinition.ConnectorDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-connectordefinitionversion_connector.go b/cloudformation/resources/aws-greengrass-connectordefinitionversion_connector.go deleted file mode 100644 index 232c49f931..0000000000 --- a/cloudformation/resources/aws-greengrass-connectordefinitionversion_connector.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassConnectorDefinitionVersion_Connector AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinitionVersion.Connector) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html -type AWSGreengrassConnectorDefinitionVersion_Connector struct { - - // ConnectorArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-connectorarn - ConnectorArn string `json:"ConnectorArn,omitempty"` - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-id - Id string `json:"Id,omitempty"` - - // Parameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-parameters - Parameters interface{} `json:"Parameters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassConnectorDefinitionVersion_Connector) AWSCloudFormationType() string { - return "AWS::Greengrass::ConnectorDefinitionVersion.Connector" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinitionVersion_Connector) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassConnectorDefinitionVersion_Connector) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinitionVersion_Connector) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassConnectorDefinitionVersion_Connector) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinitionVersion_Connector) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassConnectorDefinitionVersion_Connector) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-coredefinition_coredefinitionversion.go b/cloudformation/resources/aws-greengrass-coredefinition_coredefinitionversion.go deleted file mode 100644 index 4c5ad8bf36..0000000000 --- a/cloudformation/resources/aws-greengrass-coredefinition_coredefinitionversion.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassCoreDefinition_CoreDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::CoreDefinition.CoreDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html -type AWSGreengrassCoreDefinition_CoreDefinitionVersion struct { - - // Cores AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html#cfn-greengrass-coredefinition-coredefinitionversion-cores - Cores []AWSGreengrassCoreDefinition_Core `json:"Cores,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassCoreDefinition_CoreDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::CoreDefinition.CoreDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinition_CoreDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassCoreDefinition_CoreDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinition_CoreDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassCoreDefinition_CoreDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinition_CoreDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassCoreDefinition_CoreDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-devicedefinition_devicedefinitionversion.go b/cloudformation/resources/aws-greengrass-devicedefinition_devicedefinitionversion.go deleted file mode 100644 index 9815d0dff4..0000000000 --- a/cloudformation/resources/aws-greengrass-devicedefinition_devicedefinitionversion.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassDeviceDefinition_DeviceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinition.DeviceDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html -type AWSGreengrassDeviceDefinition_DeviceDefinitionVersion struct { - - // Devices AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html#cfn-greengrass-devicedefinition-devicedefinitionversion-devices - Devices []AWSGreengrassDeviceDefinition_Device `json:"Devices,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::DeviceDefinition.DeviceDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_defaultconfig.go b/cloudformation/resources/aws-greengrass-functiondefinition_defaultconfig.go deleted file mode 100644 index 02d3ea285b..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinition_defaultconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinition_DefaultConfig AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.DefaultConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html -type AWSGreengrassFunctionDefinition_DefaultConfig struct { - - // Execution AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html#cfn-greengrass-functiondefinition-defaultconfig-execution - Execution *AWSGreengrassFunctionDefinition_Execution `json:"Execution,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_DefaultConfig) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinition.DefaultConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_DefaultConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_DefaultConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_DefaultConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_DefaultConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_DefaultConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_DefaultConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_environment.go b/cloudformation/resources/aws-greengrass-functiondefinition_environment.go deleted file mode 100644 index e9b18c0898..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinition_environment.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinition_Environment AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Environment) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html -type AWSGreengrassFunctionDefinition_Environment struct { - - // AccessSysfs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-accesssysfs - AccessSysfs bool `json:"AccessSysfs,omitempty"` - - // Execution AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-execution - Execution *AWSGreengrassFunctionDefinition_Execution `json:"Execution,omitempty"` - - // ResourceAccessPolicies AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-resourceaccesspolicies - ResourceAccessPolicies []AWSGreengrassFunctionDefinition_ResourceAccessPolicy `json:"ResourceAccessPolicies,omitempty"` - - // Variables AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-variables - Variables interface{} `json:"Variables,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_Environment) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinition.Environment" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_Environment) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_Environment) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_Environment) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_Environment) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_Environment) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_execution.go b/cloudformation/resources/aws-greengrass-functiondefinition_execution.go deleted file mode 100644 index 5ea586bd24..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinition_execution.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinition_Execution AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Execution) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html -type AWSGreengrassFunctionDefinition_Execution struct { - - // IsolationMode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-isolationmode - IsolationMode string `json:"IsolationMode,omitempty"` - - // RunAs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-runas - RunAs *AWSGreengrassFunctionDefinition_RunAs `json:"RunAs,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_Execution) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinition.Execution" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_Execution) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_Execution) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_Execution) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_Execution) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_Execution) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_Execution) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_function.go b/cloudformation/resources/aws-greengrass-functiondefinition_function.go deleted file mode 100644 index cc6b960e30..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinition_function.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinition_Function AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Function) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html -type AWSGreengrassFunctionDefinition_Function struct { - - // FunctionArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionarn - FunctionArn string `json:"FunctionArn,omitempty"` - - // FunctionConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionconfiguration - FunctionConfiguration *AWSGreengrassFunctionDefinition_FunctionConfiguration `json:"FunctionConfiguration,omitempty"` - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-id - Id string `json:"Id,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_Function) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinition.Function" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_Function) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_Function) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_Function) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_Function) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_Function) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_Function) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_functiondefinitionversion.go b/cloudformation/resources/aws-greengrass-functiondefinition_functiondefinitionversion.go deleted file mode 100644 index 1264bc2ee1..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinition_functiondefinitionversion.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinition_FunctionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.FunctionDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html -type AWSGreengrassFunctionDefinition_FunctionDefinitionVersion struct { - - // DefaultConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-defaultconfig - DefaultConfig *AWSGreengrassFunctionDefinition_DefaultConfig `json:"DefaultConfig,omitempty"` - - // Functions AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-functions - Functions []AWSGreengrassFunctionDefinition_Function `json:"Functions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinition.FunctionDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_resourceaccesspolicy.go b/cloudformation/resources/aws-greengrass-functiondefinition_resourceaccesspolicy.go deleted file mode 100644 index 14b4c3d900..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinition_resourceaccesspolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinition_ResourceAccessPolicy AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.ResourceAccessPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html -type AWSGreengrassFunctionDefinition_ResourceAccessPolicy struct { - - // Permission AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-permission - Permission string `json:"Permission,omitempty"` - - // ResourceId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-resourceid - ResourceId string `json:"ResourceId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinition.ResourceAccessPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_runas.go b/cloudformation/resources/aws-greengrass-functiondefinition_runas.go deleted file mode 100644 index 322c84930b..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinition_runas.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinition_RunAs AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.RunAs) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html -type AWSGreengrassFunctionDefinition_RunAs struct { - - // Gid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-gid - Gid int `json:"Gid,omitempty"` - - // Uid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-uid - Uid int `json:"Uid,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_RunAs) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinition.RunAs" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_RunAs) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinition_RunAs) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_RunAs) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinition_RunAs) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_RunAs) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinition_RunAs) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion.go b/cloudformation/resources/aws-greengrass-functiondefinitionversion.go deleted file mode 100644 index f7487f0e8f..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion.go +++ /dev/null @@ -1,133 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSGreengrassFunctionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html -type AWSGreengrassFunctionDefinitionVersion struct { - - // DefaultConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-defaultconfig - DefaultConfig *AWSGreengrassFunctionDefinitionVersion_DefaultConfig `json:"DefaultConfig,omitempty"` - - // FunctionDefinitionId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functiondefinitionid - FunctionDefinitionId string `json:"FunctionDefinitionId,omitempty"` - - // Functions AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functions - Functions []AWSGreengrassFunctionDefinitionVersion_Function `json:"Functions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassFunctionDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassFunctionDefinitionVersion - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassFunctionDefinitionVersion) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassFunctionDefinitionVersion - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSGreengrassFunctionDefinitionVersion(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_defaultconfig.go b/cloudformation/resources/aws-greengrass-functiondefinitionversion_defaultconfig.go deleted file mode 100644 index 172ac88466..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_defaultconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinitionVersion_DefaultConfig AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.DefaultConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html -type AWSGreengrassFunctionDefinitionVersion_DefaultConfig struct { - - // Execution AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html#cfn-greengrass-functiondefinitionversion-defaultconfig-execution - Execution *AWSGreengrassFunctionDefinitionVersion_Execution `json:"Execution,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinitionVersion.DefaultConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_environment.go b/cloudformation/resources/aws-greengrass-functiondefinitionversion_environment.go deleted file mode 100644 index bdf52d2917..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_environment.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinitionVersion_Environment AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Environment) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html -type AWSGreengrassFunctionDefinitionVersion_Environment struct { - - // AccessSysfs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-accesssysfs - AccessSysfs bool `json:"AccessSysfs,omitempty"` - - // Execution AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-execution - Execution *AWSGreengrassFunctionDefinitionVersion_Execution `json:"Execution,omitempty"` - - // ResourceAccessPolicies AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-resourceaccesspolicies - ResourceAccessPolicies []AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy `json:"ResourceAccessPolicies,omitempty"` - - // Variables AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-variables - Variables interface{} `json:"Variables,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_Environment) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinitionVersion.Environment" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_Environment) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_Environment) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_Environment) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_Environment) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_Environment) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_execution.go b/cloudformation/resources/aws-greengrass-functiondefinitionversion_execution.go deleted file mode 100644 index 7cd12f5f88..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_execution.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinitionVersion_Execution AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Execution) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html -type AWSGreengrassFunctionDefinitionVersion_Execution struct { - - // IsolationMode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-isolationmode - IsolationMode string `json:"IsolationMode,omitempty"` - - // RunAs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-runas - RunAs *AWSGreengrassFunctionDefinitionVersion_RunAs `json:"RunAs,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_Execution) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinitionVersion.Execution" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_Execution) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_Execution) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_Execution) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_Execution) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_Execution) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_Execution) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_function.go b/cloudformation/resources/aws-greengrass-functiondefinitionversion_function.go deleted file mode 100644 index 8a73f8c490..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_function.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinitionVersion_Function AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Function) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html -type AWSGreengrassFunctionDefinitionVersion_Function struct { - - // FunctionArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionarn - FunctionArn string `json:"FunctionArn,omitempty"` - - // FunctionConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionconfiguration - FunctionConfiguration *AWSGreengrassFunctionDefinitionVersion_FunctionConfiguration `json:"FunctionConfiguration,omitempty"` - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-id - Id string `json:"Id,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_Function) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinitionVersion.Function" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_Function) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_Function) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_Function) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_Function) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_Function) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_Function) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go b/cloudformation/resources/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go deleted file mode 100644 index fcda4b7612..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.ResourceAccessPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html -type AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy struct { - - // Permission AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-permission - Permission string `json:"Permission,omitempty"` - - // ResourceId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-resourceid - ResourceId string `json:"ResourceId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinitionVersion.ResourceAccessPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_runas.go b/cloudformation/resources/aws-greengrass-functiondefinitionversion_runas.go deleted file mode 100644 index 0288cce07f..0000000000 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_runas.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassFunctionDefinitionVersion_RunAs AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.RunAs) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html -type AWSGreengrassFunctionDefinitionVersion_RunAs struct { - - // Gid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-gid - Gid int `json:"Gid,omitempty"` - - // Uid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-uid - Uid int `json:"Uid,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_RunAs) AWSCloudFormationType() string { - return "AWS::Greengrass::FunctionDefinitionVersion.RunAs" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_RunAs) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassFunctionDefinitionVersion_RunAs) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_RunAs) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassFunctionDefinitionVersion_RunAs) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_RunAs) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassFunctionDefinitionVersion_RunAs) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-loggerdefinition_loggerdefinitionversion.go b/cloudformation/resources/aws-greengrass-loggerdefinition_loggerdefinitionversion.go deleted file mode 100644 index 20c497fb30..0000000000 --- a/cloudformation/resources/aws-greengrass-loggerdefinition_loggerdefinitionversion.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassLoggerDefinition_LoggerDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinition.LoggerDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html -type AWSGreengrassLoggerDefinition_LoggerDefinitionVersion struct { - - // Loggers AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html#cfn-greengrass-loggerdefinition-loggerdefinitionversion-loggers - Loggers []AWSGreengrassLoggerDefinition_Logger `json:"Loggers,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::LoggerDefinition.LoggerDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_groupownersetting.go b/cloudformation/resources/aws-greengrass-resourcedefinition_groupownersetting.go deleted file mode 100644 index cb9decfe90..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_groupownersetting.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_GroupOwnerSetting AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.GroupOwnerSetting) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html -type AWSGreengrassResourceDefinition_GroupOwnerSetting struct { - - // AutoAddGroupOwner AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-autoaddgroupowner - AutoAddGroupOwner bool `json:"AutoAddGroupOwner"` - - // GroupOwner AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-groupowner - GroupOwner string `json:"GroupOwner,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_GroupOwnerSetting) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.GroupOwnerSetting" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_GroupOwnerSetting) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_GroupOwnerSetting) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_GroupOwnerSetting) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_GroupOwnerSetting) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_GroupOwnerSetting) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_GroupOwnerSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_localdeviceresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinition_localdeviceresourcedata.go deleted file mode 100644 index 7ad6318387..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_localdeviceresourcedata.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_LocalDeviceResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.LocalDeviceResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html -type AWSGreengrassResourceDefinition_LocalDeviceResourceData struct { - - // GroupOwnerSetting AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-groupownersetting - GroupOwnerSetting *AWSGreengrassResourceDefinition_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` - - // SourcePath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-sourcepath - SourcePath string `json:"SourcePath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_LocalDeviceResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.LocalDeviceResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_LocalDeviceResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_LocalDeviceResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_LocalDeviceResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_LocalDeviceResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_LocalDeviceResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_LocalDeviceResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_localvolumeresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinition_localvolumeresourcedata.go deleted file mode 100644 index eee815fa01..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_localvolumeresourcedata.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_LocalVolumeResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.LocalVolumeResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html -type AWSGreengrassResourceDefinition_LocalVolumeResourceData struct { - - // DestinationPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-destinationpath - DestinationPath string `json:"DestinationPath,omitempty"` - - // GroupOwnerSetting AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-groupownersetting - GroupOwnerSetting *AWSGreengrassResourceDefinition_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` - - // SourcePath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-sourcepath - SourcePath string `json:"SourcePath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_LocalVolumeResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.LocalVolumeResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_LocalVolumeResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_LocalVolumeResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_LocalVolumeResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_LocalVolumeResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_LocalVolumeResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_LocalVolumeResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedatacontainer.go b/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedatacontainer.go deleted file mode 100644 index b965473385..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedatacontainer.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_ResourceDataContainer AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceDataContainer) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html -type AWSGreengrassResourceDefinition_ResourceDataContainer struct { - - // LocalDeviceResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localdeviceresourcedata - LocalDeviceResourceData *AWSGreengrassResourceDefinition_LocalDeviceResourceData `json:"LocalDeviceResourceData,omitempty"` - - // LocalVolumeResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localvolumeresourcedata - LocalVolumeResourceData *AWSGreengrassResourceDefinition_LocalVolumeResourceData `json:"LocalVolumeResourceData,omitempty"` - - // S3MachineLearningModelResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-s3machinelearningmodelresourcedata - S3MachineLearningModelResourceData *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData `json:"S3MachineLearningModelResourceData,omitempty"` - - // SageMakerMachineLearningModelResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-sagemakermachinelearningmodelresourcedata - SageMakerMachineLearningModelResourceData *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData `json:"SageMakerMachineLearningModelResourceData,omitempty"` - - // SecretsManagerSecretResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-secretsmanagersecretresourcedata - SecretsManagerSecretResourceData *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData `json:"SecretsManagerSecretResourceData,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_ResourceDataContainer) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.ResourceDataContainer" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_ResourceDataContainer) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_ResourceDataContainer) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_ResourceDataContainer) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_ResourceDataContainer) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_ResourceDataContainer) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_ResourceDataContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedefinitionversion.go b/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedefinitionversion.go deleted file mode 100644 index 10ef365ee4..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedefinitionversion.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_ResourceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html -type AWSGreengrassResourceDefinition_ResourceDefinitionVersion struct { - - // Resources AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html#cfn-greengrass-resourcedefinition-resourcedefinitionversion-resources - Resources []AWSGreengrassResourceDefinition_ResourceInstance `json:"Resources,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.ResourceDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_resourceinstance.go b/cloudformation/resources/aws-greengrass-resourcedefinition_resourceinstance.go deleted file mode 100644 index 6a47e0d5bb..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_resourceinstance.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_ResourceInstance AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceInstance) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html -type AWSGreengrassResourceDefinition_ResourceInstance struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-id - Id string `json:"Id,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-name - Name string `json:"Name,omitempty"` - - // ResourceDataContainer AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-resourcedatacontainer - ResourceDataContainer *AWSGreengrassResourceDefinition_ResourceDataContainer `json:"ResourceDataContainer,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_ResourceInstance) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.ResourceInstance" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_ResourceInstance) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_ResourceInstance) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_ResourceInstance) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_ResourceInstance) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_ResourceInstance) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_ResourceInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go deleted file mode 100644 index e25a5b7d46..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.S3MachineLearningModelResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html -type AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData struct { - - // DestinationPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-destinationpath - DestinationPath string `json:"DestinationPath,omitempty"` - - // S3Uri AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-s3uri - S3Uri string `json:"S3Uri,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.S3MachineLearningModelResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go deleted file mode 100644 index 5920b355e1..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.SageMakerMachineLearningModelResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html -type AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData struct { - - // DestinationPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-destinationpath - DestinationPath string `json:"DestinationPath,omitempty"` - - // SageMakerJobArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-sagemakerjobarn - SageMakerJobArn string `json:"SageMakerJobArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.SageMakerMachineLearningModelResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go deleted file mode 100644 index 2374c51511..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.SecretsManagerSecretResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html -type AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData struct { - - // ARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-arn - ARN string `json:"ARN,omitempty"` - - // AdditionalStagingLabelsToDownload AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-additionalstaginglabelstodownload - AdditionalStagingLabelsToDownload []string `json:"AdditionalStagingLabelsToDownload,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinition.SecretsManagerSecretResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_groupownersetting.go b/cloudformation/resources/aws-greengrass-resourcedefinitionversion_groupownersetting.go deleted file mode 100644 index 53d8e959a7..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_groupownersetting.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.GroupOwnerSetting) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html -type AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting struct { - - // AutoAddGroupOwner AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-autoaddgroupowner - AutoAddGroupOwner bool `json:"AutoAddGroupOwner"` - - // GroupOwner AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-groupowner - GroupOwner string `json:"GroupOwner,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinitionVersion.GroupOwnerSetting" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go deleted file mode 100644 index 7553404b39..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.LocalDeviceResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html -type AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData struct { - - // GroupOwnerSetting AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-groupownersetting - GroupOwnerSetting *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` - - // SourcePath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-sourcepath - SourcePath string `json:"SourcePath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinitionVersion.LocalDeviceResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go deleted file mode 100644 index 9d5df8536f..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.LocalVolumeResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html -type AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData struct { - - // DestinationPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-destinationpath - DestinationPath string `json:"DestinationPath,omitempty"` - - // GroupOwnerSetting AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-groupownersetting - GroupOwnerSetting *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` - - // SourcePath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-sourcepath - SourcePath string `json:"SourcePath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinitionVersion.LocalVolumeResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go b/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go deleted file mode 100644 index 9a19010676..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinitionVersion_ResourceDataContainer AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.ResourceDataContainer) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html -type AWSGreengrassResourceDefinitionVersion_ResourceDataContainer struct { - - // LocalDeviceResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localdeviceresourcedata - LocalDeviceResourceData *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData `json:"LocalDeviceResourceData,omitempty"` - - // LocalVolumeResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localvolumeresourcedata - LocalVolumeResourceData *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData `json:"LocalVolumeResourceData,omitempty"` - - // S3MachineLearningModelResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-s3machinelearningmodelresourcedata - S3MachineLearningModelResourceData *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData `json:"S3MachineLearningModelResourceData,omitempty"` - - // SageMakerMachineLearningModelResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-sagemakermachinelearningmodelresourcedata - SageMakerMachineLearningModelResourceData *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData `json:"SageMakerMachineLearningModelResourceData,omitempty"` - - // SecretsManagerSecretResourceData AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-secretsmanagersecretresourcedata - SecretsManagerSecretResourceData *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData `json:"SecretsManagerSecretResourceData,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinitionVersion.ResourceDataContainer" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourceinstance.go b/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourceinstance.go deleted file mode 100644 index 9af0e43b0b..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourceinstance.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinitionVersion_ResourceInstance AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.ResourceInstance) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html -type AWSGreengrassResourceDefinitionVersion_ResourceInstance struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-id - Id string `json:"Id,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-name - Name string `json:"Name,omitempty"` - - // ResourceDataContainer AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-resourcedatacontainer - ResourceDataContainer *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer `json:"ResourceDataContainer,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_ResourceInstance) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinitionVersion.ResourceInstance" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceInstance) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceInstance) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceInstance) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceInstance) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceInstance) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_ResourceInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go deleted file mode 100644 index 8cbab52501..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.S3MachineLearningModelResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html -type AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData struct { - - // DestinationPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-destinationpath - DestinationPath string `json:"DestinationPath,omitempty"` - - // S3Uri AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-s3uri - S3Uri string `json:"S3Uri,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinitionVersion.S3MachineLearningModelResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go deleted file mode 100644 index c1abafd879..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.SageMakerMachineLearningModelResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html -type AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData struct { - - // DestinationPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-destinationpath - DestinationPath string `json:"DestinationPath,omitempty"` - - // SageMakerJobArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-sagemakerjobarn - SageMakerJobArn string `json:"SageMakerJobArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinitionVersion.SageMakerMachineLearningModelResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go b/cloudformation/resources/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go deleted file mode 100644 index 725bc11f39..0000000000 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.SecretsManagerSecretResourceData) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html -type AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData struct { - - // ARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-arn - ARN string `json:"ARN,omitempty"` - - // AdditionalStagingLabelsToDownload AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-additionalstaginglabelstodownload - AdditionalStagingLabelsToDownload []string `json:"AdditionalStagingLabelsToDownload,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) AWSCloudFormationType() string { - return "AWS::Greengrass::ResourceDefinitionVersion.SecretsManagerSecretResourceData" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go b/cloudformation/resources/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go deleted file mode 100644 index 8222d341a2..0000000000 --- a/cloudformation/resources/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinition.SubscriptionDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html -type AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion struct { - - // Subscriptions AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinition-subscriptiondefinitionversion-subscriptions - Subscriptions []AWSGreengrassSubscriptionDefinition_Subscription `json:"Subscriptions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::SubscriptionDefinition.SubscriptionDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion.go b/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion.go deleted file mode 100644 index de78634e44..0000000000 --- a/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSGreengrassSubscriptionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinitionVersion) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html -type AWSGreengrassSubscriptionDefinitionVersion struct { - - // SubscriptionDefinitionId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptiondefinitionid - SubscriptionDefinitionId string `json:"SubscriptionDefinitionId,omitempty"` - - // Subscriptions AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptions - Subscriptions []AWSGreengrassSubscriptionDefinitionVersion_Subscription `json:"Subscriptions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassSubscriptionDefinitionVersion) AWSCloudFormationType() string { - return "AWS::Greengrass::SubscriptionDefinitionVersion" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinitionVersion) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinitionVersion) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinitionVersion) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSGreengrassSubscriptionDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassSubscriptionDefinitionVersion - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSGreengrassSubscriptionDefinitionVersion) UnmarshalJSON(b []byte) error { - type Properties AWSGreengrassSubscriptionDefinitionVersion - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSGreengrassSubscriptionDefinitionVersion(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion_subscription.go b/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion_subscription.go deleted file mode 100644 index 74558d8cfc..0000000000 --- a/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion_subscription.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGreengrassSubscriptionDefinitionVersion_Subscription AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinitionVersion.Subscription) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html -type AWSGreengrassSubscriptionDefinitionVersion_Subscription struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-id - Id string `json:"Id,omitempty"` - - // Source AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-source - Source string `json:"Source,omitempty"` - - // Subject AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-subject - Subject string `json:"Subject,omitempty"` - - // Target AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-target - Target string `json:"Target,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassSubscriptionDefinitionVersion_Subscription) AWSCloudFormationType() string { - return "AWS::Greengrass::SubscriptionDefinitionVersion.Subscription" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinitionVersion_Subscription) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGreengrassSubscriptionDefinitionVersion_Subscription) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinitionVersion_Subscription) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGreengrassSubscriptionDefinitionVersion_Subscription) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinitionVersion_Subscription) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGreengrassSubscriptionDefinitionVersion_Subscription) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-guardduty-filter_findingcriteria.go b/cloudformation/resources/aws-guardduty-filter_findingcriteria.go deleted file mode 100644 index a6d93ba771..0000000000 --- a/cloudformation/resources/aws-guardduty-filter_findingcriteria.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSGuardDutyFilter_FindingCriteria AWS CloudFormation Resource (AWS::GuardDuty::Filter.FindingCriteria) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html -type AWSGuardDutyFilter_FindingCriteria struct { - - // Criterion AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html#cfn-guardduty-filter-findingcriteria-criterion - Criterion interface{} `json:"Criterion,omitempty"` - - // ItemType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html#cfn-guardduty-filter-findingcriteria-itemtype - ItemType *AWSGuardDutyFilter_Condition `json:"ItemType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyFilter_FindingCriteria) AWSCloudFormationType() string { - return "AWS::GuardDuty::Filter.FindingCriteria" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyFilter_FindingCriteria) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSGuardDutyFilter_FindingCriteria) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyFilter_FindingCriteria) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSGuardDutyFilter_FindingCriteria) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyFilter_FindingCriteria) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSGuardDutyFilter_FindingCriteria) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot-thing_attributepayload.go b/cloudformation/resources/aws-iot-thing_attributepayload.go deleted file mode 100644 index fbaa878cd2..0000000000 --- a/cloudformation/resources/aws-iot-thing_attributepayload.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTThing_AttributePayload AWS CloudFormation Resource (AWS::IoT::Thing.AttributePayload) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html -type AWSIoTThing_AttributePayload struct { - - // Attributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html#cfn-iot-thing-attributepayload-attributes - Attributes map[string]string `json:"Attributes,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTThing_AttributePayload) AWSCloudFormationType() string { - return "AWS::IoT::Thing.AttributePayload" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThing_AttributePayload) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThing_AttributePayload) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThing_AttributePayload) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThing_AttributePayload) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThing_AttributePayload) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThing_AttributePayload) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot-topicrule_action.go b/cloudformation/resources/aws-iot-topicrule_action.go deleted file mode 100644 index e6bb2c68da..0000000000 --- a/cloudformation/resources/aws-iot-topicrule_action.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTTopicRule_Action AWS CloudFormation Resource (AWS::IoT::TopicRule.Action) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html -type AWSIoTTopicRule_Action struct { - - // CloudwatchAlarm AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchalarm - CloudwatchAlarm *AWSIoTTopicRule_CloudwatchAlarmAction `json:"CloudwatchAlarm,omitempty"` - - // CloudwatchMetric AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchmetric - CloudwatchMetric *AWSIoTTopicRule_CloudwatchMetricAction `json:"CloudwatchMetric,omitempty"` - - // DynamoDB AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodb - DynamoDB *AWSIoTTopicRule_DynamoDBAction `json:"DynamoDB,omitempty"` - - // DynamoDBv2 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodbv2 - DynamoDBv2 *AWSIoTTopicRule_DynamoDBv2Action `json:"DynamoDBv2,omitempty"` - - // Elasticsearch AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-elasticsearch - Elasticsearch *AWSIoTTopicRule_ElasticsearchAction `json:"Elasticsearch,omitempty"` - - // Firehose AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-firehose - Firehose *AWSIoTTopicRule_FirehoseAction `json:"Firehose,omitempty"` - - // IotAnalytics AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotanalytics - IotAnalytics *AWSIoTTopicRule_IotAnalyticsAction `json:"IotAnalytics,omitempty"` - - // Kinesis AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-kinesis - Kinesis *AWSIoTTopicRule_KinesisAction `json:"Kinesis,omitempty"` - - // Lambda AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-lambda - Lambda *AWSIoTTopicRule_LambdaAction `json:"Lambda,omitempty"` - - // Republish AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-republish - Republish *AWSIoTTopicRule_RepublishAction `json:"Republish,omitempty"` - - // S3 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-s3 - S3 *AWSIoTTopicRule_S3Action `json:"S3,omitempty"` - - // Sns AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sns - Sns *AWSIoTTopicRule_SnsAction `json:"Sns,omitempty"` - - // Sqs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sqs - Sqs *AWSIoTTopicRule_SqsAction `json:"Sqs,omitempty"` - - // StepFunctions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-stepfunctions - StepFunctions *AWSIoTTopicRule_StepFunctionsAction `json:"StepFunctions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_Action) AWSCloudFormationType() string { - return "AWS::IoT::TopicRule.Action" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_Action) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_Action) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_Action) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_Action) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_Action) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot-topicrule_dynamodbv2action.go b/cloudformation/resources/aws-iot-topicrule_dynamodbv2action.go deleted file mode 100644 index c0a8431a0c..0000000000 --- a/cloudformation/resources/aws-iot-topicrule_dynamodbv2action.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTTopicRule_DynamoDBv2Action AWS CloudFormation Resource (AWS::IoT::TopicRule.DynamoDBv2Action) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html -type AWSIoTTopicRule_DynamoDBv2Action struct { - - // PutItem AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-putitem - PutItem *AWSIoTTopicRule_PutItemInput `json:"PutItem,omitempty"` - - // RoleArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-rolearn - RoleArn string `json:"RoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_DynamoDBv2Action) AWSCloudFormationType() string { - return "AWS::IoT::TopicRule.DynamoDBv2Action" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_DynamoDBv2Action) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_DynamoDBv2Action) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_DynamoDBv2Action) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_DynamoDBv2Action) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_DynamoDBv2Action) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_DynamoDBv2Action) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot-topicrule_iotanalyticsaction.go b/cloudformation/resources/aws-iot-topicrule_iotanalyticsaction.go deleted file mode 100644 index 2555466e93..0000000000 --- a/cloudformation/resources/aws-iot-topicrule_iotanalyticsaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTTopicRule_IotAnalyticsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.IotAnalyticsAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html -type AWSIoTTopicRule_IotAnalyticsAction struct { - - // ChannelName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-channelname - ChannelName string `json:"ChannelName,omitempty"` - - // RoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-rolearn - RoleArn string `json:"RoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_IotAnalyticsAction) AWSCloudFormationType() string { - return "AWS::IoT::TopicRule.IotAnalyticsAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_IotAnalyticsAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_IotAnalyticsAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_IotAnalyticsAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_IotAnalyticsAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_IotAnalyticsAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_IotAnalyticsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot-topicrule_lambdaaction.go b/cloudformation/resources/aws-iot-topicrule_lambdaaction.go deleted file mode 100644 index d9c357449b..0000000000 --- a/cloudformation/resources/aws-iot-topicrule_lambdaaction.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTTopicRule_LambdaAction AWS CloudFormation Resource (AWS::IoT::TopicRule.LambdaAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html -type AWSIoTTopicRule_LambdaAction struct { - - // FunctionArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html#cfn-iot-topicrule-lambdaaction-functionarn - FunctionArn string `json:"FunctionArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_LambdaAction) AWSCloudFormationType() string { - return "AWS::IoT::TopicRule.LambdaAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_LambdaAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_LambdaAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_LambdaAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_LambdaAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_LambdaAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_LambdaAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot-topicrule_putiteminput.go b/cloudformation/resources/aws-iot-topicrule_putiteminput.go deleted file mode 100644 index e04f11c520..0000000000 --- a/cloudformation/resources/aws-iot-topicrule_putiteminput.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTTopicRule_PutItemInput AWS CloudFormation Resource (AWS::IoT::TopicRule.PutItemInput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html -type AWSIoTTopicRule_PutItemInput struct { - - // TableName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html#cfn-iot-topicrule-putiteminput-tablename - TableName string `json:"TableName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_PutItemInput) AWSCloudFormationType() string { - return "AWS::IoT::TopicRule.PutItemInput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_PutItemInput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_PutItemInput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_PutItemInput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_PutItemInput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_PutItemInput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_PutItemInput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot-topicrule_republishaction.go b/cloudformation/resources/aws-iot-topicrule_republishaction.go deleted file mode 100644 index 3f54c8ce62..0000000000 --- a/cloudformation/resources/aws-iot-topicrule_republishaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTTopicRule_RepublishAction AWS CloudFormation Resource (AWS::IoT::TopicRule.RepublishAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html -type AWSIoTTopicRule_RepublishAction struct { - - // RoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-rolearn - RoleArn string `json:"RoleArn,omitempty"` - - // Topic AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-topic - Topic string `json:"Topic,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_RepublishAction) AWSCloudFormationType() string { - return "AWS::IoT::TopicRule.RepublishAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_RepublishAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTTopicRule_RepublishAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_RepublishAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTTopicRule_RepublishAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_RepublishAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTTopicRule_RepublishAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot1click-project_devicetemplate.go b/cloudformation/resources/aws-iot1click-project_devicetemplate.go deleted file mode 100644 index 83860af345..0000000000 --- a/cloudformation/resources/aws-iot1click-project_devicetemplate.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoT1ClickProject_DeviceTemplate AWS CloudFormation Resource (AWS::IoT1Click::Project.DeviceTemplate) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html -type AWSIoT1ClickProject_DeviceTemplate struct { - - // CallbackOverrides AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html#cfn-iot1click-project-devicetemplate-callbackoverrides - CallbackOverrides interface{} `json:"CallbackOverrides,omitempty"` - - // DeviceType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html#cfn-iot1click-project-devicetemplate-devicetype - DeviceType string `json:"DeviceType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoT1ClickProject_DeviceTemplate) AWSCloudFormationType() string { - return "AWS::IoT1Click::Project.DeviceTemplate" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickProject_DeviceTemplate) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickProject_DeviceTemplate) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickProject_DeviceTemplate) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickProject_DeviceTemplate) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickProject_DeviceTemplate) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickProject_DeviceTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iot1click-project_placementtemplate.go b/cloudformation/resources/aws-iot1click-project_placementtemplate.go deleted file mode 100644 index 22824a7512..0000000000 --- a/cloudformation/resources/aws-iot1click-project_placementtemplate.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoT1ClickProject_PlacementTemplate AWS CloudFormation Resource (AWS::IoT1Click::Project.PlacementTemplate) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html -type AWSIoT1ClickProject_PlacementTemplate struct { - - // DefaultAttributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html#cfn-iot1click-project-placementtemplate-defaultattributes - DefaultAttributes interface{} `json:"DefaultAttributes,omitempty"` - - // DeviceTemplates AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html#cfn-iot1click-project-placementtemplate-devicetemplates - DeviceTemplates interface{} `json:"DeviceTemplates,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoT1ClickProject_PlacementTemplate) AWSCloudFormationType() string { - return "AWS::IoT1Click::Project.PlacementTemplate" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickProject_PlacementTemplate) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoT1ClickProject_PlacementTemplate) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickProject_PlacementTemplate) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoT1ClickProject_PlacementTemplate) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickProject_PlacementTemplate) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoT1ClickProject_PlacementTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-channel_channelstorage.go b/cloudformation/resources/aws-iotanalytics-channel_channelstorage.go deleted file mode 100644 index 0fee5a473a..0000000000 --- a/cloudformation/resources/aws-iotanalytics-channel_channelstorage.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsChannel_ChannelStorage AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.ChannelStorage) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html -type AWSIoTAnalyticsChannel_ChannelStorage struct { - - // CustomerManagedS3 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html#cfn-iotanalytics-channel-channelstorage-customermanageds3 - CustomerManagedS3 *AWSIoTAnalyticsChannel_CustomerManagedS3 `json:"CustomerManagedS3,omitempty"` - - // ServiceManagedS3 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html#cfn-iotanalytics-channel-channelstorage-servicemanageds3 - ServiceManagedS3 *AWSIoTAnalyticsChannel_ServiceManagedS3 `json:"ServiceManagedS3,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsChannel_ChannelStorage) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Channel.ChannelStorage" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel_ChannelStorage) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel_ChannelStorage) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel_ChannelStorage) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel_ChannelStorage) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel_ChannelStorage) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel_ChannelStorage) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-channel_retentionperiod.go b/cloudformation/resources/aws-iotanalytics-channel_retentionperiod.go deleted file mode 100644 index 4f16932424..0000000000 --- a/cloudformation/resources/aws-iotanalytics-channel_retentionperiod.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsChannel_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.RetentionPeriod) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html -type AWSIoTAnalyticsChannel_RetentionPeriod struct { - - // NumberOfDays AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html#cfn-iotanalytics-channel-retentionperiod-numberofdays - NumberOfDays int `json:"NumberOfDays,omitempty"` - - // Unlimited AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html#cfn-iotanalytics-channel-retentionperiod-unlimited - Unlimited bool `json:"Unlimited,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsChannel_RetentionPeriod) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Channel.RetentionPeriod" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel_RetentionPeriod) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel_RetentionPeriod) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel_RetentionPeriod) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-channel_servicemanageds3.go b/cloudformation/resources/aws-iotanalytics-channel_servicemanageds3.go deleted file mode 100644 index b770e1fdef..0000000000 --- a/cloudformation/resources/aws-iotanalytics-channel_servicemanageds3.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsChannel_ServiceManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.ServiceManagedS3) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-servicemanageds3.html -type AWSIoTAnalyticsChannel_ServiceManagedS3 struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsChannel_ServiceManagedS3) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Channel.ServiceManagedS3" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel_ServiceManagedS3) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsChannel_ServiceManagedS3) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel_ServiceManagedS3) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsChannel_ServiceManagedS3) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel_ServiceManagedS3) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsChannel_ServiceManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_action.go b/cloudformation/resources/aws-iotanalytics-dataset_action.go deleted file mode 100644 index 32ad49909b..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_action.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_Action AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Action) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html -type AWSIoTAnalyticsDataset_Action struct { - - // ActionName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-actionname - ActionName string `json:"ActionName,omitempty"` - - // ContainerAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-containeraction - ContainerAction *AWSIoTAnalyticsDataset_ContainerAction `json:"ContainerAction,omitempty"` - - // QueryAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-queryaction - QueryAction *AWSIoTAnalyticsDataset_QueryAction `json:"QueryAction,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Action) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.Action" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Action) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Action) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Action) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Action) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Action) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_containeraction.go b/cloudformation/resources/aws-iotanalytics-dataset_containeraction.go deleted file mode 100644 index 77532e2691..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_containeraction.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_ContainerAction AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.ContainerAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html -type AWSIoTAnalyticsDataset_ContainerAction struct { - - // ExecutionRoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-executionrolearn - ExecutionRoleArn string `json:"ExecutionRoleArn,omitempty"` - - // Image AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-image - Image string `json:"Image,omitempty"` - - // ResourceConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-resourceconfiguration - ResourceConfiguration *AWSIoTAnalyticsDataset_ResourceConfiguration `json:"ResourceConfiguration,omitempty"` - - // Variables AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-variables - Variables []AWSIoTAnalyticsDataset_Variable `json:"Variables,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_ContainerAction) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.ContainerAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_ContainerAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_ContainerAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_ContainerAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_ContainerAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_ContainerAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_ContainerAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go b/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go deleted file mode 100644 index 1abc911321..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_DatasetContentDeliveryRule AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html -type AWSIoTAnalyticsDataset_DatasetContentDeliveryRule struct { - - // Destination AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html#cfn-iotanalytics-dataset-datasetcontentdeliveryrule-destination - Destination *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination `json:"Destination,omitempty"` - - // EntryName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html#cfn-iotanalytics-dataset-datasetcontentdeliveryrule-entryname - EntryName string `json:"EntryName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go b/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go deleted file mode 100644 index 6a8df76c8f..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRuleDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html -type AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination struct { - - // IotEventsDestinationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html#cfn-iotanalytics-dataset-datasetcontentdeliveryruledestination-ioteventsdestinationconfiguration - IotEventsDestinationConfiguration *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration `json:"IotEventsDestinationConfiguration,omitempty"` - - // S3DestinationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html#cfn-iotanalytics-dataset-datasetcontentdeliveryruledestination-s3destinationconfiguration - S3DestinationConfiguration *AWSIoTAnalyticsDataset_S3DestinationConfiguration `json:"S3DestinationConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRuleDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentversionvalue.go b/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentversionvalue.go deleted file mode 100644 index 849168cda1..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentversionvalue.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_DatasetContentVersionValue AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentVersionValue) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-datasetcontentversionvalue.html -type AWSIoTAnalyticsDataset_DatasetContentVersionValue struct { - - // DatasetName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-datasetcontentversionvalue.html#cfn-iotanalytics-dataset-variable-datasetcontentversionvalue-datasetname - DatasetName string `json:"DatasetName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_DatasetContentVersionValue) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.DatasetContentVersionValue" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_DatasetContentVersionValue) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_DatasetContentVersionValue) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_DatasetContentVersionValue) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_DatasetContentVersionValue) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_DatasetContentVersionValue) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_DatasetContentVersionValue) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_deltatime.go b/cloudformation/resources/aws-iotanalytics-dataset_deltatime.go deleted file mode 100644 index e17ac51ef4..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_deltatime.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_DeltaTime AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DeltaTime) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html -type AWSIoTAnalyticsDataset_DeltaTime struct { - - // OffsetSeconds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html#cfn-iotanalytics-dataset-deltatime-offsetseconds - OffsetSeconds int `json:"OffsetSeconds"` - - // TimeExpression AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html#cfn-iotanalytics-dataset-deltatime-timeexpression - TimeExpression string `json:"TimeExpression,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_DeltaTime) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.DeltaTime" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_DeltaTime) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_DeltaTime) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_DeltaTime) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_DeltaTime) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_DeltaTime) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_DeltaTime) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_filter.go b/cloudformation/resources/aws-iotanalytics-dataset_filter.go deleted file mode 100644 index ac78e57d7b..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_filter.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_Filter AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Filter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-filter.html -type AWSIoTAnalyticsDataset_Filter struct { - - // DeltaTime AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-filter.html#cfn-iotanalytics-dataset-filter-deltatime - DeltaTime *AWSIoTAnalyticsDataset_DeltaTime `json:"DeltaTime,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Filter) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.Filter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Filter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Filter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Filter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Filter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Filter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_glueconfiguration.go b/cloudformation/resources/aws-iotanalytics-dataset_glueconfiguration.go deleted file mode 100644 index 05f75bb88e..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_glueconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_GlueConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.GlueConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html -type AWSIoTAnalyticsDataset_GlueConfiguration struct { - - // DatabaseName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html#cfn-iotanalytics-dataset-glueconfiguration-databasename - DatabaseName string `json:"DatabaseName,omitempty"` - - // TableName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html#cfn-iotanalytics-dataset-glueconfiguration-tablename - TableName string `json:"TableName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_GlueConfiguration) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.GlueConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_GlueConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_GlueConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_GlueConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_GlueConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_GlueConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_GlueConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go b/cloudformation/resources/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go deleted file mode 100644 index 28cfae69dd..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.IotEventsDestinationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html -type AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration struct { - - // InputName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html#cfn-iotanalytics-dataset-ioteventsdestinationconfiguration-inputname - InputName string `json:"InputName,omitempty"` - - // RoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html#cfn-iotanalytics-dataset-ioteventsdestinationconfiguration-rolearn - RoleArn string `json:"RoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.IotEventsDestinationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_outputfileurivalue.go b/cloudformation/resources/aws-iotanalytics-dataset_outputfileurivalue.go deleted file mode 100644 index 9d70eee257..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_outputfileurivalue.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_OutputFileUriValue AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.OutputFileUriValue) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-outputfileurivalue.html -type AWSIoTAnalyticsDataset_OutputFileUriValue struct { - - // FileName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-outputfileurivalue.html#cfn-iotanalytics-dataset-variable-outputfileurivalue-filename - FileName string `json:"FileName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_OutputFileUriValue) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.OutputFileUriValue" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_OutputFileUriValue) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_OutputFileUriValue) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_OutputFileUriValue) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_OutputFileUriValue) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_OutputFileUriValue) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_OutputFileUriValue) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_queryaction.go b/cloudformation/resources/aws-iotanalytics-dataset_queryaction.go deleted file mode 100644 index 829f3cdf3f..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_queryaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_QueryAction AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.QueryAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html -type AWSIoTAnalyticsDataset_QueryAction struct { - - // Filters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html#cfn-iotanalytics-dataset-queryaction-filters - Filters []AWSIoTAnalyticsDataset_Filter `json:"Filters,omitempty"` - - // SqlQuery AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html#cfn-iotanalytics-dataset-queryaction-sqlquery - SqlQuery string `json:"SqlQuery,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_QueryAction) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.QueryAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_QueryAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_QueryAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_QueryAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_QueryAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_QueryAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_QueryAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_resourceconfiguration.go b/cloudformation/resources/aws-iotanalytics-dataset_resourceconfiguration.go deleted file mode 100644 index b7fe561018..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_resourceconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_ResourceConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.ResourceConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html -type AWSIoTAnalyticsDataset_ResourceConfiguration struct { - - // ComputeType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html#cfn-iotanalytics-dataset-resourceconfiguration-computetype - ComputeType string `json:"ComputeType,omitempty"` - - // VolumeSizeInGB AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html#cfn-iotanalytics-dataset-resourceconfiguration-volumesizeingb - VolumeSizeInGB int `json:"VolumeSizeInGB"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_ResourceConfiguration) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.ResourceConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_ResourceConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_ResourceConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_ResourceConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_ResourceConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_ResourceConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_ResourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_retentionperiod.go b/cloudformation/resources/aws-iotanalytics-dataset_retentionperiod.go deleted file mode 100644 index e19cd58a3a..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_retentionperiod.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.RetentionPeriod) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html -type AWSIoTAnalyticsDataset_RetentionPeriod struct { - - // NumberOfDays AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html#cfn-iotanalytics-dataset-retentionperiod-numberofdays - NumberOfDays int `json:"NumberOfDays"` - - // Unlimited AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html#cfn-iotanalytics-dataset-retentionperiod-unlimited - Unlimited bool `json:"Unlimited"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_RetentionPeriod) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.RetentionPeriod" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_RetentionPeriod) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_RetentionPeriod) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_RetentionPeriod) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_s3destinationconfiguration.go b/cloudformation/resources/aws-iotanalytics-dataset_s3destinationconfiguration.go deleted file mode 100644 index 2b4ab46b8c..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_s3destinationconfiguration.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_S3DestinationConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.S3DestinationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html -type AWSIoTAnalyticsDataset_S3DestinationConfiguration struct { - - // Bucket AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-bucket - Bucket string `json:"Bucket,omitempty"` - - // GlueConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-glueconfiguration - GlueConfiguration *AWSIoTAnalyticsDataset_GlueConfiguration `json:"GlueConfiguration,omitempty"` - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-key - Key string `json:"Key,omitempty"` - - // RoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-rolearn - RoleArn string `json:"RoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_S3DestinationConfiguration) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.S3DestinationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_S3DestinationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_S3DestinationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_S3DestinationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_S3DestinationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_S3DestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_S3DestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_schedule.go b/cloudformation/resources/aws-iotanalytics-dataset_schedule.go deleted file mode 100644 index 16cde592b8..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_schedule.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_Schedule AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Schedule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger-schedule.html -type AWSIoTAnalyticsDataset_Schedule struct { - - // ScheduleExpression AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger-schedule.html#cfn-iotanalytics-dataset-trigger-schedule-scheduleexpression - ScheduleExpression string `json:"ScheduleExpression,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Schedule) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.Schedule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Schedule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Schedule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Schedule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Schedule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Schedule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_trigger.go b/cloudformation/resources/aws-iotanalytics-dataset_trigger.go deleted file mode 100644 index 152f9ea465..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_trigger.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_Trigger AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Trigger) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html -type AWSIoTAnalyticsDataset_Trigger struct { - - // Schedule AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html#cfn-iotanalytics-dataset-trigger-schedule - Schedule *AWSIoTAnalyticsDataset_Schedule `json:"Schedule,omitempty"` - - // TriggeringDataset AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html#cfn-iotanalytics-dataset-trigger-triggeringdataset - TriggeringDataset *AWSIoTAnalyticsDataset_TriggeringDataset `json:"TriggeringDataset,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Trigger) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.Trigger" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Trigger) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_Trigger) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Trigger) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_Trigger) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Trigger) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_Trigger) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_triggeringdataset.go b/cloudformation/resources/aws-iotanalytics-dataset_triggeringdataset.go deleted file mode 100644 index 743c0c270a..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_triggeringdataset.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_TriggeringDataset AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.TriggeringDataset) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-triggeringdataset.html -type AWSIoTAnalyticsDataset_TriggeringDataset struct { - - // DatasetName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-triggeringdataset.html#cfn-iotanalytics-dataset-triggeringdataset-datasetname - DatasetName string `json:"DatasetName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_TriggeringDataset) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.TriggeringDataset" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_TriggeringDataset) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_TriggeringDataset) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_TriggeringDataset) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_TriggeringDataset) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_TriggeringDataset) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_TriggeringDataset) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-dataset_versioningconfiguration.go b/cloudformation/resources/aws-iotanalytics-dataset_versioningconfiguration.go deleted file mode 100644 index edc769cc84..0000000000 --- a/cloudformation/resources/aws-iotanalytics-dataset_versioningconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDataset_VersioningConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.VersioningConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html -type AWSIoTAnalyticsDataset_VersioningConfiguration struct { - - // MaxVersions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-maxversions - MaxVersions int `json:"MaxVersions,omitempty"` - - // Unlimited AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-unlimited - Unlimited bool `json:"Unlimited,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_VersioningConfiguration) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Dataset.VersioningConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_VersioningConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDataset_VersioningConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_VersioningConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDataset_VersioningConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_VersioningConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDataset_VersioningConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-datastore_customermanageds3.go b/cloudformation/resources/aws-iotanalytics-datastore_customermanageds3.go deleted file mode 100644 index f53959c393..0000000000 --- a/cloudformation/resources/aws-iotanalytics-datastore_customermanageds3.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDatastore_CustomerManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.CustomerManagedS3) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html -type AWSIoTAnalyticsDatastore_CustomerManagedS3 struct { - - // Bucket AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-bucket - Bucket string `json:"Bucket,omitempty"` - - // KeyPrefix AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-keyprefix - KeyPrefix string `json:"KeyPrefix,omitempty"` - - // RoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-rolearn - RoleArn string `json:"RoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore_CustomerManagedS3) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Datastore.CustomerManagedS3" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore_CustomerManagedS3) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore_CustomerManagedS3) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore_CustomerManagedS3) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore_CustomerManagedS3) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore_CustomerManagedS3) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore_CustomerManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-datastore_datastorestorage.go b/cloudformation/resources/aws-iotanalytics-datastore_datastorestorage.go deleted file mode 100644 index 778b401f59..0000000000 --- a/cloudformation/resources/aws-iotanalytics-datastore_datastorestorage.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDatastore_DatastoreStorage AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.DatastoreStorage) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html -type AWSIoTAnalyticsDatastore_DatastoreStorage struct { - - // CustomerManagedS3 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html#cfn-iotanalytics-datastore-datastorestorage-customermanageds3 - CustomerManagedS3 *AWSIoTAnalyticsDatastore_CustomerManagedS3 `json:"CustomerManagedS3,omitempty"` - - // ServiceManagedS3 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html#cfn-iotanalytics-datastore-datastorestorage-servicemanageds3 - ServiceManagedS3 *AWSIoTAnalyticsDatastore_ServiceManagedS3 `json:"ServiceManagedS3,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore_DatastoreStorage) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Datastore.DatastoreStorage" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore_DatastoreStorage) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore_DatastoreStorage) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore_DatastoreStorage) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore_DatastoreStorage) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore_DatastoreStorage) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore_DatastoreStorage) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-datastore_retentionperiod.go b/cloudformation/resources/aws-iotanalytics-datastore_retentionperiod.go deleted file mode 100644 index 574dcd0933..0000000000 --- a/cloudformation/resources/aws-iotanalytics-datastore_retentionperiod.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDatastore_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.RetentionPeriod) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html -type AWSIoTAnalyticsDatastore_RetentionPeriod struct { - - // NumberOfDays AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html#cfn-iotanalytics-datastore-retentionperiod-numberofdays - NumberOfDays int `json:"NumberOfDays,omitempty"` - - // Unlimited AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html#cfn-iotanalytics-datastore-retentionperiod-unlimited - Unlimited bool `json:"Unlimited,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore_RetentionPeriod) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Datastore.RetentionPeriod" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore_RetentionPeriod) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore_RetentionPeriod) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore_RetentionPeriod) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-datastore_servicemanageds3.go b/cloudformation/resources/aws-iotanalytics-datastore_servicemanageds3.go deleted file mode 100644 index db6903d9b4..0000000000 --- a/cloudformation/resources/aws-iotanalytics-datastore_servicemanageds3.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsDatastore_ServiceManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.ServiceManagedS3) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-servicemanageds3.html -type AWSIoTAnalyticsDatastore_ServiceManagedS3 struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore_ServiceManagedS3) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Datastore.ServiceManagedS3" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore_ServiceManagedS3) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsDatastore_ServiceManagedS3) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore_ServiceManagedS3) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsDatastore_ServiceManagedS3) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore_ServiceManagedS3) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsDatastore_ServiceManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_activity.go b/cloudformation/resources/aws-iotanalytics-pipeline_activity.go deleted file mode 100644 index 19546db48b..0000000000 --- a/cloudformation/resources/aws-iotanalytics-pipeline_activity.go +++ /dev/null @@ -1,108 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsPipeline_Activity AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Activity) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html -type AWSIoTAnalyticsPipeline_Activity struct { - - // AddAttributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-addattributes - AddAttributes *AWSIoTAnalyticsPipeline_AddAttributes `json:"AddAttributes,omitempty"` - - // Channel AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-channel - Channel *AWSIoTAnalyticsPipeline_Channel `json:"Channel,omitempty"` - - // Datastore AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-datastore - Datastore *AWSIoTAnalyticsPipeline_Datastore `json:"Datastore,omitempty"` - - // DeviceRegistryEnrich AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-deviceregistryenrich - DeviceRegistryEnrich *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich `json:"DeviceRegistryEnrich,omitempty"` - - // DeviceShadowEnrich AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-deviceshadowenrich - DeviceShadowEnrich *AWSIoTAnalyticsPipeline_DeviceShadowEnrich `json:"DeviceShadowEnrich,omitempty"` - - // Filter AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-filter - Filter *AWSIoTAnalyticsPipeline_Filter `json:"Filter,omitempty"` - - // Lambda AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-lambda - Lambda *AWSIoTAnalyticsPipeline_Lambda `json:"Lambda,omitempty"` - - // Math AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-math - Math *AWSIoTAnalyticsPipeline_Math `json:"Math,omitempty"` - - // RemoveAttributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-removeattributes - RemoveAttributes *AWSIoTAnalyticsPipeline_RemoveAttributes `json:"RemoveAttributes,omitempty"` - - // SelectAttributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-selectattributes - SelectAttributes *AWSIoTAnalyticsPipeline_SelectAttributes `json:"SelectAttributes,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_Activity) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Pipeline.Activity" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Activity) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Activity) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Activity) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Activity) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Activity) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Activity) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_datastore.go b/cloudformation/resources/aws-iotanalytics-pipeline_datastore.go deleted file mode 100644 index 6ae5fe284b..0000000000 --- a/cloudformation/resources/aws-iotanalytics-pipeline_datastore.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsPipeline_Datastore AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Datastore) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html -type AWSIoTAnalyticsPipeline_Datastore struct { - - // DatastoreName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html#cfn-iotanalytics-pipeline-datastore-datastorename - DatastoreName string `json:"DatastoreName,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html#cfn-iotanalytics-pipeline-datastore-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_Datastore) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Pipeline.Datastore" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Datastore) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_Datastore) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Datastore) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_Datastore) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Datastore) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_Datastore) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_removeattributes.go b/cloudformation/resources/aws-iotanalytics-pipeline_removeattributes.go deleted file mode 100644 index d2e00527ae..0000000000 --- a/cloudformation/resources/aws-iotanalytics-pipeline_removeattributes.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsPipeline_RemoveAttributes AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.RemoveAttributes) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html -type AWSIoTAnalyticsPipeline_RemoveAttributes struct { - - // Attributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-attributes - Attributes []string `json:"Attributes,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-name - Name string `json:"Name,omitempty"` - - // Next AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-next - Next string `json:"Next,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_RemoveAttributes) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Pipeline.RemoveAttributes" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_RemoveAttributes) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_RemoveAttributes) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_RemoveAttributes) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_RemoveAttributes) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_RemoveAttributes) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_RemoveAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_selectattributes.go b/cloudformation/resources/aws-iotanalytics-pipeline_selectattributes.go deleted file mode 100644 index bb21b54cf7..0000000000 --- a/cloudformation/resources/aws-iotanalytics-pipeline_selectattributes.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTAnalyticsPipeline_SelectAttributes AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.SelectAttributes) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html -type AWSIoTAnalyticsPipeline_SelectAttributes struct { - - // Attributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-attributes - Attributes []string `json:"Attributes,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-name - Name string `json:"Name,omitempty"` - - // Next AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-next - Next string `json:"Next,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_SelectAttributes) AWSCloudFormationType() string { - return "AWS::IoTAnalytics::Pipeline.SelectAttributes" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_SelectAttributes) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTAnalyticsPipeline_SelectAttributes) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_SelectAttributes) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTAnalyticsPipeline_SelectAttributes) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_SelectAttributes) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTAnalyticsPipeline_SelectAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_action.go b/cloudformation/resources/aws-iotevents-detectormodel_action.go deleted file mode 100644 index 44c91d4666..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_action.go +++ /dev/null @@ -1,108 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_Action AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Action) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html -type AWSIoTEventsDetectorModel_Action struct { - - // ClearTimer AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-cleartimer - ClearTimer *AWSIoTEventsDetectorModel_ClearTimer `json:"ClearTimer,omitempty"` - - // Firehose AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-firehose - Firehose *AWSIoTEventsDetectorModel_Firehose `json:"Firehose,omitempty"` - - // IotEvents AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iotevents - IotEvents *AWSIoTEventsDetectorModel_IotEvents `json:"IotEvents,omitempty"` - - // IotTopicPublish AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iottopicpublish - IotTopicPublish *AWSIoTEventsDetectorModel_IotTopicPublish `json:"IotTopicPublish,omitempty"` - - // Lambda AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-lambda - Lambda *AWSIoTEventsDetectorModel_Lambda `json:"Lambda,omitempty"` - - // ResetTimer AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-resettimer - ResetTimer *AWSIoTEventsDetectorModel_ResetTimer `json:"ResetTimer,omitempty"` - - // SetTimer AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-settimer - SetTimer *AWSIoTEventsDetectorModel_SetTimer `json:"SetTimer,omitempty"` - - // SetVariable AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-setvariable - SetVariable *AWSIoTEventsDetectorModel_SetVariable `json:"SetVariable,omitempty"` - - // Sns AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-sns - Sns *AWSIoTEventsDetectorModel_Sns `json:"Sns,omitempty"` - - // Sqs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-sqs - Sqs *AWSIoTEventsDetectorModel_Sqs `json:"Sqs,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Action) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.Action" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Action) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Action) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Action) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Action) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Action) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_cleartimer.go b/cloudformation/resources/aws-iotevents-detectormodel_cleartimer.go deleted file mode 100644 index f0e34d2e05..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_cleartimer.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_ClearTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.ClearTimer) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-cleartimer.html -type AWSIoTEventsDetectorModel_ClearTimer struct { - - // TimerName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-cleartimer.html#cfn-iotevents-detectormodel-cleartimer-timername - TimerName string `json:"TimerName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_ClearTimer) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.ClearTimer" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_ClearTimer) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_ClearTimer) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_ClearTimer) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_ClearTimer) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_ClearTimer) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_ClearTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_detectormodeldefinition.go b/cloudformation/resources/aws-iotevents-detectormodel_detectormodeldefinition.go deleted file mode 100644 index 3c74af09dd..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_detectormodeldefinition.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_DetectorModelDefinition AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.DetectorModelDefinition) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html -type AWSIoTEventsDetectorModel_DetectorModelDefinition struct { - - // InitialStateName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html#cfn-iotevents-detectormodel-detectormodeldefinition-initialstatename - InitialStateName string `json:"InitialStateName,omitempty"` - - // States AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html#cfn-iotevents-detectormodel-detectormodeldefinition-states - States []AWSIoTEventsDetectorModel_State `json:"States,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_DetectorModelDefinition) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.DetectorModelDefinition" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_DetectorModelDefinition) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_DetectorModelDefinition) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_DetectorModelDefinition) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_DetectorModelDefinition) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_DetectorModelDefinition) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_DetectorModelDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_firehose.go b/cloudformation/resources/aws-iotevents-detectormodel_firehose.go deleted file mode 100644 index 4172084aa0..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_firehose.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_Firehose AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Firehose) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html -type AWSIoTEventsDetectorModel_Firehose struct { - - // DeliveryStreamName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-deliverystreamname - DeliveryStreamName string `json:"DeliveryStreamName,omitempty"` - - // Separator AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-separator - Separator string `json:"Separator,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Firehose) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.Firehose" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Firehose) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Firehose) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Firehose) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Firehose) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Firehose) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Firehose) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_iotevents.go b/cloudformation/resources/aws-iotevents-detectormodel_iotevents.go deleted file mode 100644 index c8bb6b9fdc..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_iotevents.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_IotEvents AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.IotEvents) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html -type AWSIoTEventsDetectorModel_IotEvents struct { - - // InputName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html#cfn-iotevents-detectormodel-iotevents-inputname - InputName string `json:"InputName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_IotEvents) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.IotEvents" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_IotEvents) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_IotEvents) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_IotEvents) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_IotEvents) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_IotEvents) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_IotEvents) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_iottopicpublish.go b/cloudformation/resources/aws-iotevents-detectormodel_iottopicpublish.go deleted file mode 100644 index 1e2d1cc277..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_iottopicpublish.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_IotTopicPublish AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.IotTopicPublish) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html -type AWSIoTEventsDetectorModel_IotTopicPublish struct { - - // MqttTopic AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html#cfn-iotevents-detectormodel-iottopicpublish-mqtttopic - MqttTopic string `json:"MqttTopic,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_IotTopicPublish) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.IotTopicPublish" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_IotTopicPublish) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_IotTopicPublish) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_IotTopicPublish) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_IotTopicPublish) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_IotTopicPublish) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_IotTopicPublish) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_lambda.go b/cloudformation/resources/aws-iotevents-detectormodel_lambda.go deleted file mode 100644 index b28fb7ef25..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_lambda.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_Lambda AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Lambda) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html -type AWSIoTEventsDetectorModel_Lambda struct { - - // FunctionArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html#cfn-iotevents-detectormodel-lambda-functionarn - FunctionArn string `json:"FunctionArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Lambda) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.Lambda" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Lambda) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Lambda) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Lambda) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Lambda) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Lambda) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Lambda) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_onenter.go b/cloudformation/resources/aws-iotevents-detectormodel_onenter.go deleted file mode 100644 index 375e6f8ad4..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_onenter.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_OnEnter AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnEnter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onenter.html -type AWSIoTEventsDetectorModel_OnEnter struct { - - // Events AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onenter.html#cfn-iotevents-detectormodel-onenter-events - Events []AWSIoTEventsDetectorModel_Event `json:"Events,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_OnEnter) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.OnEnter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_OnEnter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_OnEnter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_OnEnter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_OnEnter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_OnEnter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_OnEnter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_onexit.go b/cloudformation/resources/aws-iotevents-detectormodel_onexit.go deleted file mode 100644 index 09cb01130f..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_onexit.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_OnExit AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnExit) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onexit.html -type AWSIoTEventsDetectorModel_OnExit struct { - - // Events AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onexit.html#cfn-iotevents-detectormodel-onexit-events - Events []AWSIoTEventsDetectorModel_Event `json:"Events,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_OnExit) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.OnExit" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_OnExit) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_OnExit) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_OnExit) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_OnExit) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_OnExit) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_OnExit) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_oninput.go b/cloudformation/resources/aws-iotevents-detectormodel_oninput.go deleted file mode 100644 index b4b7365aca..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_oninput.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_OnInput AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnInput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html -type AWSIoTEventsDetectorModel_OnInput struct { - - // Events AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html#cfn-iotevents-detectormodel-oninput-events - Events []AWSIoTEventsDetectorModel_Event `json:"Events,omitempty"` - - // TransitionEvents AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html#cfn-iotevents-detectormodel-oninput-transitionevents - TransitionEvents []AWSIoTEventsDetectorModel_TransitionEvent `json:"TransitionEvents,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_OnInput) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.OnInput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_OnInput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_OnInput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_OnInput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_OnInput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_OnInput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_OnInput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_resettimer.go b/cloudformation/resources/aws-iotevents-detectormodel_resettimer.go deleted file mode 100644 index cd8136abde..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_resettimer.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_ResetTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.ResetTimer) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-resettimer.html -type AWSIoTEventsDetectorModel_ResetTimer struct { - - // TimerName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-resettimer.html#cfn-iotevents-detectormodel-resettimer-timername - TimerName string `json:"TimerName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_ResetTimer) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.ResetTimer" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_ResetTimer) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_ResetTimer) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_ResetTimer) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_ResetTimer) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_ResetTimer) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_ResetTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_settimer.go b/cloudformation/resources/aws-iotevents-detectormodel_settimer.go deleted file mode 100644 index 93219f5e1b..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_settimer.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_SetTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.SetTimer) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html -type AWSIoTEventsDetectorModel_SetTimer struct { - - // Seconds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-seconds - Seconds int `json:"Seconds,omitempty"` - - // TimerName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-timername - TimerName string `json:"TimerName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_SetTimer) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.SetTimer" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_SetTimer) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_SetTimer) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_SetTimer) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_SetTimer) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_SetTimer) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_SetTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_setvariable.go b/cloudformation/resources/aws-iotevents-detectormodel_setvariable.go deleted file mode 100644 index 5953ebcfcf..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_setvariable.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_SetVariable AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.SetVariable) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html -type AWSIoTEventsDetectorModel_SetVariable struct { - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html#cfn-iotevents-detectormodel-setvariable-value - Value string `json:"Value,omitempty"` - - // VariableName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html#cfn-iotevents-detectormodel-setvariable-variablename - VariableName string `json:"VariableName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_SetVariable) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.SetVariable" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_SetVariable) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_SetVariable) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_SetVariable) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_SetVariable) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_SetVariable) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_SetVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_sns.go b/cloudformation/resources/aws-iotevents-detectormodel_sns.go deleted file mode 100644 index f9376ad7f6..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_sns.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_Sns AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Sns) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html -type AWSIoTEventsDetectorModel_Sns struct { - - // TargetArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html#cfn-iotevents-detectormodel-sns-targetarn - TargetArn string `json:"TargetArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Sns) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.Sns" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Sns) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Sns) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Sns) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Sns) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Sns) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Sns) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_sqs.go b/cloudformation/resources/aws-iotevents-detectormodel_sqs.go deleted file mode 100644 index f31f9e8fcb..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_sqs.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_Sqs AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Sqs) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html -type AWSIoTEventsDetectorModel_Sqs struct { - - // QueueUrl AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-queueurl - QueueUrl string `json:"QueueUrl,omitempty"` - - // UseBase64 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-usebase64 - UseBase64 bool `json:"UseBase64,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Sqs) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.Sqs" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Sqs) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_Sqs) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Sqs) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_Sqs) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Sqs) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_Sqs) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-detectormodel_state.go b/cloudformation/resources/aws-iotevents-detectormodel_state.go deleted file mode 100644 index 1da16cbbac..0000000000 --- a/cloudformation/resources/aws-iotevents-detectormodel_state.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsDetectorModel_State AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.State) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html -type AWSIoTEventsDetectorModel_State struct { - - // OnEnter AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-onenter - OnEnter *AWSIoTEventsDetectorModel_OnEnter `json:"OnEnter,omitempty"` - - // OnExit AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-onexit - OnExit *AWSIoTEventsDetectorModel_OnExit `json:"OnExit,omitempty"` - - // OnInput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-oninput - OnInput *AWSIoTEventsDetectorModel_OnInput `json:"OnInput,omitempty"` - - // StateName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-statename - StateName string `json:"StateName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_State) AWSCloudFormationType() string { - return "AWS::IoTEvents::DetectorModel.State" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_State) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsDetectorModel_State) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_State) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsDetectorModel_State) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_State) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsDetectorModel_State) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-input_attribute.go b/cloudformation/resources/aws-iotevents-input_attribute.go deleted file mode 100644 index 806376b085..0000000000 --- a/cloudformation/resources/aws-iotevents-input_attribute.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsInput_Attribute AWS CloudFormation Resource (AWS::IoTEvents::Input.Attribute) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-attribute.html -type AWSIoTEventsInput_Attribute struct { - - // JsonPath AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-attribute.html#cfn-iotevents-input-attribute-jsonpath - JsonPath string `json:"JsonPath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsInput_Attribute) AWSCloudFormationType() string { - return "AWS::IoTEvents::Input.Attribute" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsInput_Attribute) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsInput_Attribute) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsInput_Attribute) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsInput_Attribute) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsInput_Attribute) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsInput_Attribute) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotevents-input_inputdefinition.go b/cloudformation/resources/aws-iotevents-input_inputdefinition.go deleted file mode 100644 index da73147c1b..0000000000 --- a/cloudformation/resources/aws-iotevents-input_inputdefinition.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTEventsInput_InputDefinition AWS CloudFormation Resource (AWS::IoTEvents::Input.InputDefinition) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-inputdefinition.html -type AWSIoTEventsInput_InputDefinition struct { - - // Attributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-inputdefinition.html#cfn-iotevents-input-inputdefinition-attributes - Attributes []AWSIoTEventsInput_Attribute `json:"Attributes,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsInput_InputDefinition) AWSCloudFormationType() string { - return "AWS::IoTEvents::Input.InputDefinition" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsInput_InputDefinition) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTEventsInput_InputDefinition) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsInput_InputDefinition) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTEventsInput_InputDefinition) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsInput_InputDefinition) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTEventsInput_InputDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-iotthingsgraph-flowtemplate_definitiondocument.go b/cloudformation/resources/aws-iotthingsgraph-flowtemplate_definitiondocument.go deleted file mode 100644 index fce0cbd901..0000000000 --- a/cloudformation/resources/aws-iotthingsgraph-flowtemplate_definitiondocument.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSIoTThingsGraphFlowTemplate_DefinitionDocument AWS CloudFormation Resource (AWS::IoTThingsGraph::FlowTemplate.DefinitionDocument) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html -type AWSIoTThingsGraphFlowTemplate_DefinitionDocument struct { - - // Language AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html#cfn-iotthingsgraph-flowtemplate-definitiondocument-language - Language string `json:"Language,omitempty"` - - // Text AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html#cfn-iotthingsgraph-flowtemplate-definitiondocument-text - Text string `json:"Text,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) AWSCloudFormationType() string { - return "AWS::IoTThingsGraph::FlowTemplate.DefinitionDocument" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesis-stream_streamencryption.go b/cloudformation/resources/aws-kinesis-stream_streamencryption.go deleted file mode 100644 index 82b28e800e..0000000000 --- a/cloudformation/resources/aws-kinesis-stream_streamencryption.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisStream_StreamEncryption AWS CloudFormation Resource (AWS::Kinesis::Stream.StreamEncryption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html -type AWSKinesisStream_StreamEncryption struct { - - // EncryptionType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-encryptiontype - EncryptionType string `json:"EncryptionType,omitempty"` - - // KeyId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-keyid - KeyId string `json:"KeyId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisStream_StreamEncryption) AWSCloudFormationType() string { - return "AWS::Kinesis::Stream.StreamEncryption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisStream_StreamEncryption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisStream_StreamEncryption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisStream_StreamEncryption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisStream_StreamEncryption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisStream_StreamEncryption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisStream_StreamEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_csvmappingparameters.go b/cloudformation/resources/aws-kinesisanalytics-application_csvmappingparameters.go deleted file mode 100644 index 82109ce97f..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_csvmappingparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.CSVMappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html -type AWSKinesisAnalyticsApplication_CSVMappingParameters struct { - - // RecordColumnDelimiter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html#cfn-kinesisanalytics-application-csvmappingparameters-recordcolumndelimiter - RecordColumnDelimiter string `json:"RecordColumnDelimiter,omitempty"` - - // RecordRowDelimiter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html#cfn-kinesisanalytics-application-csvmappingparameters-recordrowdelimiter - RecordRowDelimiter string `json:"RecordRowDelimiter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_CSVMappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.CSVMappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_CSVMappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_CSVMappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_CSVMappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_input.go b/cloudformation/resources/aws-kinesisanalytics-application_input.go deleted file mode 100644 index c2687d4d10..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_input.go +++ /dev/null @@ -1,88 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_Input AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.Input) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html -type AWSKinesisAnalyticsApplication_Input struct { - - // InputParallelism AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputparallelism - InputParallelism *AWSKinesisAnalyticsApplication_InputParallelism `json:"InputParallelism,omitempty"` - - // InputProcessingConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputprocessingconfiguration - InputProcessingConfiguration *AWSKinesisAnalyticsApplication_InputProcessingConfiguration `json:"InputProcessingConfiguration,omitempty"` - - // InputSchema AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputschema - InputSchema *AWSKinesisAnalyticsApplication_InputSchema `json:"InputSchema,omitempty"` - - // KinesisFirehoseInput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-kinesisfirehoseinput - KinesisFirehoseInput *AWSKinesisAnalyticsApplication_KinesisFirehoseInput `json:"KinesisFirehoseInput,omitempty"` - - // KinesisStreamsInput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-kinesisstreamsinput - KinesisStreamsInput *AWSKinesisAnalyticsApplication_KinesisStreamsInput `json:"KinesisStreamsInput,omitempty"` - - // NamePrefix AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-nameprefix - NamePrefix string `json:"NamePrefix,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_Input) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.Input" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_Input) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_Input) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_Input) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_Input) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_Input) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_Input) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_inputlambdaprocessor.go b/cloudformation/resources/aws-kinesisanalytics-application_inputlambdaprocessor.go deleted file mode 100644 index 5be3755a8a..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_inputlambdaprocessor.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_InputLambdaProcessor AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputLambdaProcessor) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html -type AWSKinesisAnalyticsApplication_InputLambdaProcessor struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html#cfn-kinesisanalytics-application-inputlambdaprocessor-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // RoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html#cfn-kinesisanalytics-application-inputlambdaprocessor-rolearn - RoleARN string `json:"RoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_InputLambdaProcessor) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.InputLambdaProcessor" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_InputLambdaProcessor) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_InputLambdaProcessor) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_InputLambdaProcessor) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_InputLambdaProcessor) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_InputLambdaProcessor) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_InputLambdaProcessor) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_inputparallelism.go b/cloudformation/resources/aws-kinesisanalytics-application_inputparallelism.go deleted file mode 100644 index 4a89910c1b..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_inputparallelism.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_InputParallelism AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputParallelism) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputparallelism.html -type AWSKinesisAnalyticsApplication_InputParallelism struct { - - // Count AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputparallelism.html#cfn-kinesisanalytics-application-inputparallelism-count - Count int `json:"Count,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_InputParallelism) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.InputParallelism" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_InputParallelism) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_InputParallelism) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_InputParallelism) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_InputParallelism) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_InputParallelism) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_InputParallelism) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_inputprocessingconfiguration.go b/cloudformation/resources/aws-kinesisanalytics-application_inputprocessingconfiguration.go deleted file mode 100644 index b73ed3fad3..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_inputprocessingconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_InputProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputProcessingConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputprocessingconfiguration.html -type AWSKinesisAnalyticsApplication_InputProcessingConfiguration struct { - - // InputLambdaProcessor AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputprocessingconfiguration.html#cfn-kinesisanalytics-application-inputprocessingconfiguration-inputlambdaprocessor - InputLambdaProcessor *AWSKinesisAnalyticsApplication_InputLambdaProcessor `json:"InputLambdaProcessor,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.InputProcessingConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_inputschema.go b/cloudformation/resources/aws-kinesisanalytics-application_inputschema.go deleted file mode 100644 index 994f3d1474..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_inputschema.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_InputSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputSchema) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html -type AWSKinesisAnalyticsApplication_InputSchema struct { - - // RecordColumns AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordcolumns - RecordColumns []AWSKinesisAnalyticsApplication_RecordColumn `json:"RecordColumns,omitempty"` - - // RecordEncoding AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordencoding - RecordEncoding string `json:"RecordEncoding,omitempty"` - - // RecordFormat AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordformat - RecordFormat *AWSKinesisAnalyticsApplication_RecordFormat `json:"RecordFormat,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_InputSchema) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.InputSchema" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_InputSchema) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_InputSchema) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_InputSchema) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_InputSchema) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_InputSchema) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_InputSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_jsonmappingparameters.go b/cloudformation/resources/aws-kinesisanalytics-application_jsonmappingparameters.go deleted file mode 100644 index 6fed4ac8dd..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_jsonmappingparameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.JSONMappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-jsonmappingparameters.html -type AWSKinesisAnalyticsApplication_JSONMappingParameters struct { - - // RecordRowPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-jsonmappingparameters.html#cfn-kinesisanalytics-application-jsonmappingparameters-recordrowpath - RecordRowPath string `json:"RecordRowPath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_JSONMappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.JSONMappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_JSONMappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_JSONMappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_JSONMappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_kinesisfirehoseinput.go b/cloudformation/resources/aws-kinesisanalytics-application_kinesisfirehoseinput.go deleted file mode 100644 index edd914bd72..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_kinesisfirehoseinput.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_KinesisFirehoseInput AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.KinesisFirehoseInput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html -type AWSKinesisAnalyticsApplication_KinesisFirehoseInput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html#cfn-kinesisanalytics-application-kinesisfirehoseinput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // RoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html#cfn-kinesisanalytics-application-kinesisfirehoseinput-rolearn - RoleARN string `json:"RoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.KinesisFirehoseInput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_kinesisstreamsinput.go b/cloudformation/resources/aws-kinesisanalytics-application_kinesisstreamsinput.go deleted file mode 100644 index 0f2f37c5db..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_kinesisstreamsinput.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_KinesisStreamsInput AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.KinesisStreamsInput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html -type AWSKinesisAnalyticsApplication_KinesisStreamsInput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html#cfn-kinesisanalytics-application-kinesisstreamsinput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // RoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html#cfn-kinesisanalytics-application-kinesisstreamsinput-rolearn - RoleARN string `json:"RoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_KinesisStreamsInput) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.KinesisStreamsInput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_KinesisStreamsInput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_KinesisStreamsInput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_KinesisStreamsInput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_KinesisStreamsInput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_KinesisStreamsInput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_KinesisStreamsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_mappingparameters.go b/cloudformation/resources/aws-kinesisanalytics-application_mappingparameters.go deleted file mode 100644 index 42846eb5cd..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_mappingparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.MappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html -type AWSKinesisAnalyticsApplication_MappingParameters struct { - - // CSVMappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html#cfn-kinesisanalytics-application-mappingparameters-csvmappingparameters - CSVMappingParameters *AWSKinesisAnalyticsApplication_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` - - // JSONMappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html#cfn-kinesisanalytics-application-mappingparameters-jsonmappingparameters - JSONMappingParameters *AWSKinesisAnalyticsApplication_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_MappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.MappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_MappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_MappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_MappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_MappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_MappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_recordcolumn.go b/cloudformation/resources/aws-kinesisanalytics-application_recordcolumn.go deleted file mode 100644 index 71d8c17365..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_recordcolumn.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.RecordColumn) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html -type AWSKinesisAnalyticsApplication_RecordColumn struct { - - // Mapping AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-mapping - Mapping string `json:"Mapping,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-name - Name string `json:"Name,omitempty"` - - // SqlType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-sqltype - SqlType string `json:"SqlType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_RecordColumn) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.RecordColumn" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_RecordColumn) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_RecordColumn) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_RecordColumn) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_RecordColumn) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_RecordColumn) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-application_recordformat.go b/cloudformation/resources/aws-kinesisanalytics-application_recordformat.go deleted file mode 100644 index ef1e7a6051..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-application_recordformat.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplication_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.RecordFormat) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html -type AWSKinesisAnalyticsApplication_RecordFormat struct { - - // MappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html#cfn-kinesisanalytics-application-recordformat-mappingparameters - MappingParameters *AWSKinesisAnalyticsApplication_MappingParameters `json:"MappingParameters,omitempty"` - - // RecordFormatType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html#cfn-kinesisanalytics-application-recordformat-recordformattype - RecordFormatType string `json:"RecordFormatType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_RecordFormat) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::Application.RecordFormat" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_RecordFormat) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplication_RecordFormat) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_RecordFormat) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplication_RecordFormat) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_RecordFormat) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplication_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_destinationschema.go b/cloudformation/resources/aws-kinesisanalytics-applicationoutput_destinationschema.go deleted file mode 100644 index e8f5f25ab3..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_destinationschema.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationOutput_DestinationSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.DestinationSchema) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-destinationschema.html -type AWSKinesisAnalyticsApplicationOutput_DestinationSchema struct { - - // RecordFormatType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-destinationschema.html#cfn-kinesisanalytics-applicationoutput-destinationschema-recordformattype - RecordFormatType string `json:"RecordFormatType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationOutput.DestinationSchema" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go b/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go deleted file mode 100644 index 5dc3256cf1..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.KinesisFirehoseOutput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html -type AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisfirehoseoutput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // RoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisfirehoseoutput-rolearn - RoleARN string `json:"RoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationOutput.KinesisFirehoseOutput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go b/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go deleted file mode 100644 index 130ecac059..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.KinesisStreamsOutput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html -type AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisstreamsoutput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // RoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisstreamsoutput-rolearn - RoleARN string `json:"RoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationOutput.KinesisStreamsOutput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_lambdaoutput.go b/cloudformation/resources/aws-kinesisanalytics-applicationoutput_lambdaoutput.go deleted file mode 100644 index 6f045279a2..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_lambdaoutput.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationOutput_LambdaOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.LambdaOutput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html -type AWSKinesisAnalyticsApplicationOutput_LambdaOutput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html#cfn-kinesisanalytics-applicationoutput-lambdaoutput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // RoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html#cfn-kinesisanalytics-applicationoutput-lambdaoutput-rolearn - RoleARN string `json:"RoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationOutput.LambdaOutput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_output.go b/cloudformation/resources/aws-kinesisanalytics-applicationoutput_output.go deleted file mode 100644 index 21c220c0ac..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_output.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationOutput_Output AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.Output) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html -type AWSKinesisAnalyticsApplicationOutput_Output struct { - - // DestinationSchema AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-destinationschema - DestinationSchema *AWSKinesisAnalyticsApplicationOutput_DestinationSchema `json:"DestinationSchema,omitempty"` - - // KinesisFirehoseOutput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-kinesisfirehoseoutput - KinesisFirehoseOutput *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput `json:"KinesisFirehoseOutput,omitempty"` - - // KinesisStreamsOutput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-kinesisstreamsoutput - KinesisStreamsOutput *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput `json:"KinesisStreamsOutput,omitempty"` - - // LambdaOutput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-lambdaoutput - LambdaOutput *AWSKinesisAnalyticsApplicationOutput_LambdaOutput `json:"LambdaOutput,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_Output) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationOutput.Output" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_Output) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationOutput_Output) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_Output) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationOutput_Output) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_Output) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationOutput_Output) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource.go deleted file mode 100644 index 7e8c01c78a..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSKinesisAnalyticsApplicationReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html -type AWSKinesisAnalyticsApplicationReferenceDataSource struct { - - // ApplicationName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-applicationname - ApplicationName string `json:"ApplicationName,omitempty"` - - // ReferenceDataSource AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource - ReferenceDataSource *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource `json:"ReferenceDataSource,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisAnalyticsApplicationReferenceDataSource) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsApplicationReferenceDataSource - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisAnalyticsApplicationReferenceDataSource - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSKinesisAnalyticsApplicationReferenceDataSource(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go deleted file mode 100644 index 7ca11df349..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.CSVMappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html -type AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters struct { - - // RecordColumnDelimiter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-csvmappingparameters-recordcolumndelimiter - RecordColumnDelimiter string `json:"RecordColumnDelimiter,omitempty"` - - // RecordRowDelimiter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-csvmappingparameters-recordrowdelimiter - RecordRowDelimiter string `json:"RecordRowDelimiter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.CSVMappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go deleted file mode 100644 index 22f7edd958..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.JSONMappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters.html -type AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters struct { - - // RecordRowPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters-recordrowpath - RecordRowPath string `json:"RecordRowPath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.JSONMappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go deleted file mode 100644 index 1d5cf0e60b..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.MappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html -type AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters struct { - - // CSVMappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-mappingparameters-csvmappingparameters - CSVMappingParameters *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` - - // JSONMappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-mappingparameters-jsonmappingparameters - JSONMappingParameters *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.MappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go deleted file mode 100644 index ddafaf8edc..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordColumn) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html -type AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn struct { - - // Mapping AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-mapping - Mapping string `json:"Mapping,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-name - Name string `json:"Name,omitempty"` - - // SqlType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-sqltype - SqlType string `json:"SqlType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordColumn" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go deleted file mode 100644 index fefd3b3cfa..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordFormat) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html -type AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat struct { - - // MappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html#cfn-kinesisanalytics-applicationreferencedatasource-recordformat-mappingparameters - MappingParameters *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters `json:"MappingParameters,omitempty"` - - // RecordFormatType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html#cfn-kinesisanalytics-applicationreferencedatasource-recordformat-recordformattype - RecordFormatType string `json:"RecordFormatType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordFormat" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go deleted file mode 100644 index f82c208337..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceDataSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html -type AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource struct { - - // ReferenceSchema AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-referenceschema - ReferenceSchema *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema `json:"ReferenceSchema,omitempty"` - - // S3ReferenceDataSource AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-s3referencedatasource - S3ReferenceDataSource *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource `json:"S3ReferenceDataSource,omitempty"` - - // TableName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-tablename - TableName string `json:"TableName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceDataSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go deleted file mode 100644 index df2eb4c553..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceSchema) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html -type AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema struct { - - // RecordColumns AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordcolumns - RecordColumns []AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn `json:"RecordColumns,omitempty"` - - // RecordEncoding AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordencoding - RecordEncoding string `json:"RecordEncoding,omitempty"` - - // RecordFormat AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordformat - RecordFormat *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat `json:"RecordFormat,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceSchema" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go b/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go deleted file mode 100644 index 7ae45399f7..0000000000 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.S3ReferenceDataSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html -type AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource struct { - - // BucketARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-bucketarn - BucketARN string `json:"BucketARN,omitempty"` - - // FileKey AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-filekey - FileKey string `json:"FileKey,omitempty"` - - // ReferenceRoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-referencerolearn - ReferenceRoleARN string `json:"ReferenceRoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) AWSCloudFormationType() string { - return "AWS::KinesisAnalytics::ApplicationReferenceDataSource.S3ReferenceDataSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go deleted file mode 100644 index 75968d0ad7..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationCodeConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html -type AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration struct { - - // CodeContent AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html#cfn-kinesisanalyticsv2-application-applicationcodeconfiguration-codecontent - CodeContent *AWSKinesisAnalyticsV2Application_CodeContent `json:"CodeContent,omitempty"` - - // CodeContentType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html#cfn-kinesisanalyticsv2-application-applicationcodeconfiguration-codecontenttype - CodeContentType string `json:"CodeContentType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.ApplicationCodeConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationconfiguration.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationconfiguration.go deleted file mode 100644 index 86c32b503f..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationconfiguration.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_ApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html -type AWSKinesisAnalyticsV2Application_ApplicationConfiguration struct { - - // ApplicationCodeConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-applicationcodeconfiguration - ApplicationCodeConfiguration *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration `json:"ApplicationCodeConfiguration,omitempty"` - - // ApplicationSnapshotConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-applicationsnapshotconfiguration - ApplicationSnapshotConfiguration *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration `json:"ApplicationSnapshotConfiguration,omitempty"` - - // EnvironmentProperties AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-environmentproperties - EnvironmentProperties *AWSKinesisAnalyticsV2Application_EnvironmentProperties `json:"EnvironmentProperties,omitempty"` - - // FlinkApplicationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-flinkapplicationconfiguration - FlinkApplicationConfiguration *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration `json:"FlinkApplicationConfiguration,omitempty"` - - // SqlApplicationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-sqlapplicationconfiguration - SqlApplicationConfiguration *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration `json:"SqlApplicationConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.ApplicationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go deleted file mode 100644 index 067b76f50b..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationSnapshotConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationsnapshotconfiguration.html -type AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration struct { - - // SnapshotsEnabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationsnapshotconfiguration.html#cfn-kinesisanalyticsv2-application-applicationsnapshotconfiguration-snapshotsenabled - SnapshotsEnabled bool `json:"SnapshotsEnabled"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.ApplicationSnapshotConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_codecontent.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_codecontent.go deleted file mode 100644 index 7d12e46da5..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_codecontent.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_CodeContent AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.CodeContent) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html -type AWSKinesisAnalyticsV2Application_CodeContent struct { - - // S3ContentLocation AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-s3contentlocation - S3ContentLocation *AWSKinesisAnalyticsV2Application_S3ContentLocation `json:"S3ContentLocation,omitempty"` - - // TextContent AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-textcontent - TextContent string `json:"TextContent,omitempty"` - - // ZipFileContent AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-zipfilecontent - ZipFileContent string `json:"ZipFileContent,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_CodeContent) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.CodeContent" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_CodeContent) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_CodeContent) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_CodeContent) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_CodeContent) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_CodeContent) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_CodeContent) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_csvmappingparameters.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_csvmappingparameters.go deleted file mode 100644 index aac1294e9f..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_csvmappingparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.CSVMappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html -type AWSKinesisAnalyticsV2Application_CSVMappingParameters struct { - - // RecordColumnDelimiter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html#cfn-kinesisanalyticsv2-application-csvmappingparameters-recordcolumndelimiter - RecordColumnDelimiter string `json:"RecordColumnDelimiter,omitempty"` - - // RecordRowDelimiter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html#cfn-kinesisanalyticsv2-application-csvmappingparameters-recordrowdelimiter - RecordRowDelimiter string `json:"RecordRowDelimiter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_CSVMappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.CSVMappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_CSVMappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_CSVMappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_CSVMappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_environmentproperties.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_environmentproperties.go deleted file mode 100644 index 5e779b5e66..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_environmentproperties.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_EnvironmentProperties AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.EnvironmentProperties) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-environmentproperties.html -type AWSKinesisAnalyticsV2Application_EnvironmentProperties struct { - - // PropertyGroups AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-environmentproperties.html#cfn-kinesisanalyticsv2-application-environmentproperties-propertygroups - PropertyGroups []AWSKinesisAnalyticsV2Application_PropertyGroup `json:"PropertyGroups,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_EnvironmentProperties) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.EnvironmentProperties" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_EnvironmentProperties) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_EnvironmentProperties) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_EnvironmentProperties) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_EnvironmentProperties) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_EnvironmentProperties) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_EnvironmentProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go deleted file mode 100644 index 1a177b6331..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.FlinkApplicationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html -type AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration struct { - - // CheckpointConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-checkpointconfiguration - CheckpointConfiguration *AWSKinesisAnalyticsV2Application_CheckpointConfiguration `json:"CheckpointConfiguration,omitempty"` - - // MonitoringConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-monitoringconfiguration - MonitoringConfiguration *AWSKinesisAnalyticsV2Application_MonitoringConfiguration `json:"MonitoringConfiguration,omitempty"` - - // ParallelismConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-parallelismconfiguration - ParallelismConfiguration *AWSKinesisAnalyticsV2Application_ParallelismConfiguration `json:"ParallelismConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.FlinkApplicationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_input.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_input.go deleted file mode 100644 index 3325c5f62f..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_input.go +++ /dev/null @@ -1,88 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_Input AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.Input) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html -type AWSKinesisAnalyticsV2Application_Input struct { - - // InputParallelism AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputparallelism - InputParallelism *AWSKinesisAnalyticsV2Application_InputParallelism `json:"InputParallelism,omitempty"` - - // InputProcessingConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputprocessingconfiguration - InputProcessingConfiguration *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration `json:"InputProcessingConfiguration,omitempty"` - - // InputSchema AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputschema - InputSchema *AWSKinesisAnalyticsV2Application_InputSchema `json:"InputSchema,omitempty"` - - // KinesisFirehoseInput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-kinesisfirehoseinput - KinesisFirehoseInput *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput `json:"KinesisFirehoseInput,omitempty"` - - // KinesisStreamsInput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-kinesisstreamsinput - KinesisStreamsInput *AWSKinesisAnalyticsV2Application_KinesisStreamsInput `json:"KinesisStreamsInput,omitempty"` - - // NamePrefix AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-nameprefix - NamePrefix string `json:"NamePrefix,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_Input) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.Input" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_Input) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_Input) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_Input) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_Input) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_Input) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_Input) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go deleted file mode 100644 index e36cc62b0f..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_InputLambdaProcessor AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputLambdaProcessor) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputlambdaprocessor.html -type AWSKinesisAnalyticsV2Application_InputLambdaProcessor struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputlambdaprocessor.html#cfn-kinesisanalyticsv2-application-inputlambdaprocessor-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.InputLambdaProcessor" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputparallelism.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_inputparallelism.go deleted file mode 100644 index 296bf8fe63..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputparallelism.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_InputParallelism AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputParallelism) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputparallelism.html -type AWSKinesisAnalyticsV2Application_InputParallelism struct { - - // Count AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputparallelism.html#cfn-kinesisanalyticsv2-application-inputparallelism-count - Count int `json:"Count,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_InputParallelism) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.InputParallelism" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_InputParallelism) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_InputParallelism) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_InputParallelism) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_InputParallelism) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_InputParallelism) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_InputParallelism) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go deleted file mode 100644 index 733df86fac..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_InputProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputProcessingConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputprocessingconfiguration.html -type AWSKinesisAnalyticsV2Application_InputProcessingConfiguration struct { - - // InputLambdaProcessor AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputprocessingconfiguration.html#cfn-kinesisanalyticsv2-application-inputprocessingconfiguration-inputlambdaprocessor - InputLambdaProcessor *AWSKinesisAnalyticsV2Application_InputLambdaProcessor `json:"InputLambdaProcessor,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.InputProcessingConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputschema.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_inputschema.go deleted file mode 100644 index cf4f9b4e31..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputschema.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_InputSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputSchema) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html -type AWSKinesisAnalyticsV2Application_InputSchema struct { - - // RecordColumns AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordcolumns - RecordColumns []AWSKinesisAnalyticsV2Application_RecordColumn `json:"RecordColumns,omitempty"` - - // RecordEncoding AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordencoding - RecordEncoding string `json:"RecordEncoding,omitempty"` - - // RecordFormat AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordformat - RecordFormat *AWSKinesisAnalyticsV2Application_RecordFormat `json:"RecordFormat,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_InputSchema) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.InputSchema" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_InputSchema) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_InputSchema) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_InputSchema) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_InputSchema) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_InputSchema) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_InputSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_jsonmappingparameters.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_jsonmappingparameters.go deleted file mode 100644 index 9e662a606e..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_jsonmappingparameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.JSONMappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-jsonmappingparameters.html -type AWSKinesisAnalyticsV2Application_JSONMappingParameters struct { - - // RecordRowPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-jsonmappingparameters.html#cfn-kinesisanalyticsv2-application-jsonmappingparameters-recordrowpath - RecordRowPath string `json:"RecordRowPath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_JSONMappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.JSONMappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_JSONMappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_JSONMappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_JSONMappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go deleted file mode 100644 index d63cc2827f..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_KinesisFirehoseInput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.KinesisFirehoseInput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisfirehoseinput.html -type AWSKinesisAnalyticsV2Application_KinesisFirehoseInput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisfirehoseinput.html#cfn-kinesisanalyticsv2-application-kinesisfirehoseinput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.KinesisFirehoseInput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go deleted file mode 100644 index e4aeb13f29..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_KinesisStreamsInput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.KinesisStreamsInput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisstreamsinput.html -type AWSKinesisAnalyticsV2Application_KinesisStreamsInput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisstreamsinput.html#cfn-kinesisanalyticsv2-application-kinesisstreamsinput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.KinesisStreamsInput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_mappingparameters.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_mappingparameters.go deleted file mode 100644 index 0b23647fa0..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_mappingparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.MappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html -type AWSKinesisAnalyticsV2Application_MappingParameters struct { - - // CSVMappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html#cfn-kinesisanalyticsv2-application-mappingparameters-csvmappingparameters - CSVMappingParameters *AWSKinesisAnalyticsV2Application_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` - - // JSONMappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html#cfn-kinesisanalyticsv2-application-mappingparameters-jsonmappingparameters - JSONMappingParameters *AWSKinesisAnalyticsV2Application_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_MappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.MappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_MappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_MappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_MappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_MappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_MappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_monitoringconfiguration.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_monitoringconfiguration.go deleted file mode 100644 index 9892a0a5b7..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_monitoringconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_MonitoringConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.MonitoringConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html -type AWSKinesisAnalyticsV2Application_MonitoringConfiguration struct { - - // ConfigurationType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-configurationtype - ConfigurationType string `json:"ConfigurationType,omitempty"` - - // LogLevel AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-loglevel - LogLevel string `json:"LogLevel,omitempty"` - - // MetricsLevel AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-metricslevel - MetricsLevel string `json:"MetricsLevel,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.MonitoringConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_propertygroup.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_propertygroup.go deleted file mode 100644 index 52d604f857..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_propertygroup.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_PropertyGroup AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.PropertyGroup) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html -type AWSKinesisAnalyticsV2Application_PropertyGroup struct { - - // PropertyGroupId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html#cfn-kinesisanalyticsv2-application-propertygroup-propertygroupid - PropertyGroupId string `json:"PropertyGroupId,omitempty"` - - // PropertyMap AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html#cfn-kinesisanalyticsv2-application-propertygroup-propertymap - PropertyMap interface{} `json:"PropertyMap,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_PropertyGroup) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.PropertyGroup" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_PropertyGroup) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_PropertyGroup) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_PropertyGroup) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_PropertyGroup) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_PropertyGroup) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_PropertyGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_recordcolumn.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_recordcolumn.go deleted file mode 100644 index 6ce7fb9a2f..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_recordcolumn.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.RecordColumn) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html -type AWSKinesisAnalyticsV2Application_RecordColumn struct { - - // Mapping AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-mapping - Mapping string `json:"Mapping,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-name - Name string `json:"Name,omitempty"` - - // SqlType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-sqltype - SqlType string `json:"SqlType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_RecordColumn) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.RecordColumn" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_RecordColumn) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_RecordColumn) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_RecordColumn) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_RecordColumn) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_RecordColumn) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_recordformat.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_recordformat.go deleted file mode 100644 index 450b4143ca..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_recordformat.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.RecordFormat) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html -type AWSKinesisAnalyticsV2Application_RecordFormat struct { - - // MappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html#cfn-kinesisanalyticsv2-application-recordformat-mappingparameters - MappingParameters *AWSKinesisAnalyticsV2Application_MappingParameters `json:"MappingParameters,omitempty"` - - // RecordFormatType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html#cfn-kinesisanalyticsv2-application-recordformat-recordformattype - RecordFormatType string `json:"RecordFormatType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_RecordFormat) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.RecordFormat" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_RecordFormat) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_RecordFormat) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_RecordFormat) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_RecordFormat) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_RecordFormat) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_s3contentlocation.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_s3contentlocation.go deleted file mode 100644 index 7b530efc35..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_s3contentlocation.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_S3ContentLocation AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.S3ContentLocation) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html -type AWSKinesisAnalyticsV2Application_S3ContentLocation struct { - - // BucketARN AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-bucketarn - BucketARN string `json:"BucketARN,omitempty"` - - // FileKey AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-filekey - FileKey string `json:"FileKey,omitempty"` - - // ObjectVersion AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-objectversion - ObjectVersion string `json:"ObjectVersion,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_S3ContentLocation) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.S3ContentLocation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_S3ContentLocation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_S3ContentLocation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_S3ContentLocation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_S3ContentLocation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_S3ContentLocation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_S3ContentLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go b/cloudformation/resources/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go deleted file mode 100644 index 4d84a7d72d..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.SqlApplicationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-sqlapplicationconfiguration.html -type AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration struct { - - // Inputs AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-sqlapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-sqlapplicationconfiguration-inputs - Inputs []AWSKinesisAnalyticsV2Application_Input `json:"Inputs,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::Application.SqlApplicationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go deleted file mode 100644 index 127e535a58..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html -type AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption struct { - - // ApplicationName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-applicationname - ApplicationName string `json:"ApplicationName,omitempty"` - - // CloudWatchLoggingOption AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption - CloudWatchLoggingOption *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption `json:"CloudWatchLoggingOption,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go deleted file mode 100644 index 64b995593e..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption.CloudWatchLoggingOption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption.html -type AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption struct { - - // LogStreamARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption-logstreamarn - LogStreamARN string `json:"LogStreamARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption.CloudWatchLoggingOption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go deleted file mode 100644 index 8ef283278d..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.DestinationSchema) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-destinationschema.html -type AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema struct { - - // RecordFormatType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-destinationschema.html#cfn-kinesisanalyticsv2-applicationoutput-destinationschema-recordformattype - RecordFormatType string `json:"RecordFormatType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationOutput.DestinationSchema" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go deleted file mode 100644 index 2e90338ab8..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisFirehoseOutput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput.html -type AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisFirehoseOutput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go deleted file mode 100644 index 7fdbf1a967..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisStreamsOutput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput.html -type AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisStreamsOutput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go deleted file mode 100644 index 655561d563..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.LambdaOutput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-lambdaoutput.html -type AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput struct { - - // ResourceARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-lambdaoutput.html#cfn-kinesisanalyticsv2-applicationoutput-lambdaoutput-resourcearn - ResourceARN string `json:"ResourceARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationOutput.LambdaOutput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_output.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_output.go deleted file mode 100644 index 1cc37b5ade..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_output.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationOutput_Output AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.Output) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html -type AWSKinesisAnalyticsV2ApplicationOutput_Output struct { - - // DestinationSchema AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-destinationschema - DestinationSchema *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema `json:"DestinationSchema,omitempty"` - - // KinesisFirehoseOutput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-kinesisfirehoseoutput - KinesisFirehoseOutput *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput `json:"KinesisFirehoseOutput,omitempty"` - - // KinesisStreamsOutput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-kinesisstreamsoutput - KinesisStreamsOutput *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput `json:"KinesisStreamsOutput,omitempty"` - - // LambdaOutput AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-lambdaoutput - LambdaOutput *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput `json:"LambdaOutput,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_Output) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationOutput.Output" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_Output) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_Output) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_Output) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_Output) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_Output) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationOutput_Output) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource.go deleted file mode 100644 index eb8721d176..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource struct { - - // ApplicationName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-applicationname - ApplicationName string `json:"ApplicationName,omitempty"` - - // ReferenceDataSource AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource - ReferenceDataSource *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource `json:"ReferenceDataSource,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisAnalyticsV2ApplicationReferenceDataSource) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsV2ApplicationReferenceDataSource - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisAnalyticsV2ApplicationReferenceDataSource - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSKinesisAnalyticsV2ApplicationReferenceDataSource(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go deleted file mode 100644 index d9670d917f..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.CSVMappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters struct { - - // RecordColumnDelimiter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters-recordcolumndelimiter - RecordColumnDelimiter string `json:"RecordColumnDelimiter,omitempty"` - - // RecordRowDelimiter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters-recordrowdelimiter - RecordRowDelimiter string `json:"RecordRowDelimiter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.CSVMappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go deleted file mode 100644 index 81e5f37202..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.JSONMappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters struct { - - // RecordRowPath AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters-recordrowpath - RecordRowPath string `json:"RecordRowPath,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.JSONMappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go deleted file mode 100644 index 067194102d..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.MappingParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters struct { - - // CSVMappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters-csvmappingparameters - CSVMappingParameters *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` - - // JSONMappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters-jsonmappingparameters - JSONMappingParameters *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.MappingParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go deleted file mode 100644 index 517bcfe743..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordColumn) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn struct { - - // Mapping AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-mapping - Mapping string `json:"Mapping,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-name - Name string `json:"Name,omitempty"` - - // SqlType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-sqltype - SqlType string `json:"SqlType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordColumn" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go deleted file mode 100644 index b506272bba..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordFormat) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat struct { - - // MappingParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordformat-mappingparameters - MappingParameters *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters `json:"MappingParameters,omitempty"` - - // RecordFormatType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordformat-recordformattype - RecordFormatType string `json:"RecordFormatType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordFormat" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go deleted file mode 100644 index 9be8a75925..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceDataSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource struct { - - // ReferenceSchema AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-referenceschema - ReferenceSchema *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema `json:"ReferenceSchema,omitempty"` - - // S3ReferenceDataSource AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-s3referencedatasource - S3ReferenceDataSource *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource `json:"S3ReferenceDataSource,omitempty"` - - // TableName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-tablename - TableName string `json:"TableName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceDataSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go deleted file mode 100644 index 3f6d4b6de3..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceSchema) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema struct { - - // RecordColumns AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordcolumns - RecordColumns []AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn `json:"RecordColumns,omitempty"` - - // RecordEncoding AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordencoding - RecordEncoding string `json:"RecordEncoding,omitempty"` - - // RecordFormat AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordformat - RecordFormat *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat `json:"RecordFormat,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceSchema" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go b/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go deleted file mode 100644 index f6d91aa13a..0000000000 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.S3ReferenceDataSource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource struct { - - // BucketARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource-bucketarn - BucketARN string `json:"BucketARN,omitempty"` - - // FileKey AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource-filekey - FileKey string `json:"FileKey,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) AWSCloudFormationType() string { - return "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.S3ReferenceDataSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream.go deleted file mode 100644 index 3b56b16baf..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream.go +++ /dev/null @@ -1,158 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSKinesisFirehoseDeliveryStream AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html -type AWSKinesisFirehoseDeliveryStream struct { - - // DeliveryStreamName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamname - DeliveryStreamName string `json:"DeliveryStreamName,omitempty"` - - // DeliveryStreamType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamtype - DeliveryStreamType string `json:"DeliveryStreamType,omitempty"` - - // ElasticsearchDestinationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration - ElasticsearchDestinationConfiguration *AWSKinesisFirehoseDeliveryStream_ElasticsearchDestinationConfiguration `json:"ElasticsearchDestinationConfiguration,omitempty"` - - // ExtendedS3DestinationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration - ExtendedS3DestinationConfiguration *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration `json:"ExtendedS3DestinationConfiguration,omitempty"` - - // KinesisStreamSourceConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration - KinesisStreamSourceConfiguration *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration `json:"KinesisStreamSourceConfiguration,omitempty"` - - // RedshiftDestinationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration - RedshiftDestinationConfiguration *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration `json:"RedshiftDestinationConfiguration,omitempty"` - - // S3DestinationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration - S3DestinationConfiguration *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration `json:"S3DestinationConfiguration,omitempty"` - - // SplunkDestinationConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration - SplunkDestinationConfiguration *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration `json:"SplunkDestinationConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSKinesisFirehoseDeliveryStream) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisFirehoseDeliveryStream - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSKinesisFirehoseDeliveryStream) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisFirehoseDeliveryStream - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSKinesisFirehoseDeliveryStream(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_bufferinghints.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_bufferinghints.go deleted file mode 100644 index 36c96e25e2..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_bufferinghints.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_BufferingHints AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.BufferingHints) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html -type AWSKinesisFirehoseDeliveryStream_BufferingHints struct { - - // IntervalInSeconds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html#cfn-kinesisfirehose-deliverystream-bufferinghints-intervalinseconds - IntervalInSeconds int `json:"IntervalInSeconds"` - - // SizeInMBs AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html#cfn-kinesisfirehose-deliverystream-bufferinghints-sizeinmbs - SizeInMBs int `json:"SizeInMBs"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_BufferingHints) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.BufferingHints" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_BufferingHints) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_BufferingHints) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_BufferingHints) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_BufferingHints) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_BufferingHints) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_BufferingHints) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go deleted file mode 100644 index d940e926ad..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.CloudWatchLoggingOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html -type AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions struct { - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-enabled - Enabled bool `json:"Enabled,omitempty"` - - // LogGroupName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-loggroupname - LogGroupName string `json:"LogGroupName,omitempty"` - - // LogStreamName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-logstreamname - LogStreamName string `json:"LogStreamName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.CloudWatchLoggingOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_copycommand.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_copycommand.go deleted file mode 100644 index 2e4acbfbff..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_copycommand.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_CopyCommand AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.CopyCommand) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html -type AWSKinesisFirehoseDeliveryStream_CopyCommand struct { - - // CopyOptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-copyoptions - CopyOptions string `json:"CopyOptions,omitempty"` - - // DataTableColumns AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-datatablecolumns - DataTableColumns string `json:"DataTableColumns,omitempty"` - - // DataTableName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-datatablename - DataTableName string `json:"DataTableName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_CopyCommand) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.CopyCommand" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_CopyCommand) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_CopyCommand) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_CopyCommand) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_CopyCommand) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_CopyCommand) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_CopyCommand) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go deleted file mode 100644 index 12e0c176fc..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.DataFormatConversionConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html -type AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration struct { - - // Enabled AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-enabled - Enabled bool `json:"Enabled"` - - // InputFormatConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-inputformatconfiguration - InputFormatConfiguration *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration `json:"InputFormatConfiguration,omitempty"` - - // OutputFormatConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-outputformatconfiguration - OutputFormatConfiguration *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration `json:"OutputFormatConfiguration,omitempty"` - - // SchemaConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-schemaconfiguration - SchemaConfiguration *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration `json:"SchemaConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.DataFormatConversionConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_deserializer.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_deserializer.go deleted file mode 100644 index 5152be20f3..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_deserializer.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_Deserializer AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Deserializer) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html -type AWSKinesisFirehoseDeliveryStream_Deserializer struct { - - // HiveJsonSerDe AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html#cfn-kinesisfirehose-deliverystream-deserializer-hivejsonserde - HiveJsonSerDe *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe `json:"HiveJsonSerDe,omitempty"` - - // OpenXJsonSerDe AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html#cfn-kinesisfirehose-deliverystream-deserializer-openxjsonserde - OpenXJsonSerDe *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe `json:"OpenXJsonSerDe,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_Deserializer) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.Deserializer" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_Deserializer) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_Deserializer) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_Deserializer) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_Deserializer) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_Deserializer) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_Deserializer) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go deleted file mode 100644 index 1b88e23765..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ElasticsearchBufferingHints) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html -type AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints struct { - - // IntervalInSeconds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html#cfn-kinesisfirehose-deliverystream-elasticsearchbufferinghints-intervalinseconds - IntervalInSeconds int `json:"IntervalInSeconds"` - - // SizeInMBs AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html#cfn-kinesisfirehose-deliverystream-elasticsearchbufferinghints-sizeinmbs - SizeInMBs int `json:"SizeInMBs"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.ElasticsearchBufferingHints" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go deleted file mode 100644 index 9d52ac2c08..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ElasticsearchRetryOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchretryoptions.html -type AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions struct { - - // DurationInSeconds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchretryoptions.html#cfn-kinesisfirehose-deliverystream-elasticsearchretryoptions-durationinseconds - DurationInSeconds int `json:"DurationInSeconds"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.ElasticsearchRetryOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go deleted file mode 100644 index 89b36d69fb..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html -type AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration struct { - - // KMSEncryptionConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html#cfn-kinesisfirehose-deliverystream-encryptionconfiguration-kmsencryptionconfig - KMSEncryptionConfig *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig `json:"KMSEncryptionConfig,omitempty"` - - // NoEncryptionConfig AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html#cfn-kinesisfirehose-deliverystream-encryptionconfiguration-noencryptionconfig - NoEncryptionConfig string `json:"NoEncryptionConfig,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_hivejsonserde.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_hivejsonserde.go deleted file mode 100644 index 368f95190c..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_hivejsonserde.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.HiveJsonSerDe) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-hivejsonserde.html -type AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe struct { - - // TimestampFormats AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-hivejsonserde.html#cfn-kinesisfirehose-deliverystream-hivejsonserde-timestampformats - TimestampFormats []string `json:"TimestampFormats,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.HiveJsonSerDe" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go deleted file mode 100644 index 511c53e3d2..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.InputFormatConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-inputformatconfiguration.html -type AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration struct { - - // Deserializer AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-inputformatconfiguration.html#cfn-kinesisfirehose-deliverystream-inputformatconfiguration-deserializer - Deserializer *AWSKinesisFirehoseDeliveryStream_Deserializer `json:"Deserializer,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.InputFormatConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go deleted file mode 100644 index 39e95adc88..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html -type AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration struct { - - // KinesisStreamARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration-kinesisstreamarn - KinesisStreamARN string `json:"KinesisStreamARN,omitempty"` - - // RoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration-rolearn - RoleARN string `json:"RoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go deleted file mode 100644 index e047a69d2d..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.KMSEncryptionConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kmsencryptionconfig.html -type AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig struct { - - // AWSKMSKeyARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kmsencryptionconfig.html#cfn-kinesisfirehose-deliverystream-kmsencryptionconfig-awskmskeyarn - AWSKMSKeyARN string `json:"AWSKMSKeyARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.KMSEncryptionConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go deleted file mode 100644 index ce24df3e27..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.OutputFormatConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-outputformatconfiguration.html -type AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration struct { - - // Serializer AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-outputformatconfiguration.html#cfn-kinesisfirehose-deliverystream-outputformatconfiguration-serializer - Serializer *AWSKinesisFirehoseDeliveryStream_Serializer `json:"Serializer,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.OutputFormatConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processingconfiguration.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_processingconfiguration.go deleted file mode 100644 index 64b50d6dca..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processingconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ProcessingConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html -type AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration struct { - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html#cfn-kinesisfirehose-deliverystream-processingconfiguration-enabled - Enabled bool `json:"Enabled,omitempty"` - - // Processors AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html#cfn-kinesisfirehose-deliverystream-processingconfiguration-processors - Processors []AWSKinesisFirehoseDeliveryStream_Processor `json:"Processors,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.ProcessingConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processor.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_processor.go deleted file mode 100644 index caf65928be..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processor.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_Processor AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Processor) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html -type AWSKinesisFirehoseDeliveryStream_Processor struct { - - // Parameters AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html#cfn-kinesisfirehose-deliverystream-processor-parameters - Parameters []AWSKinesisFirehoseDeliveryStream_ProcessorParameter `json:"Parameters,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html#cfn-kinesisfirehose-deliverystream-processor-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_Processor) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.Processor" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_Processor) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_Processor) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_Processor) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_Processor) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_Processor) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_Processor) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processorparameter.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_processorparameter.go deleted file mode 100644 index cce0a2b2fe..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processorparameter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_ProcessorParameter AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ProcessorParameter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html -type AWSKinesisFirehoseDeliveryStream_ProcessorParameter struct { - - // ParameterName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html#cfn-kinesisfirehose-deliverystream-processorparameter-parametername - ParameterName string `json:"ParameterName,omitempty"` - - // ParameterValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html#cfn-kinesisfirehose-deliverystream-processorparameter-parametervalue - ParameterValue string `json:"ParameterValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.ProcessorParameter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go deleted file mode 100644 index c546819c8f..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go +++ /dev/null @@ -1,98 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html -type AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration struct { - - // CloudWatchLoggingOptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-cloudwatchloggingoptions - CloudWatchLoggingOptions *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` - - // ClusterJDBCURL AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-clusterjdbcurl - ClusterJDBCURL string `json:"ClusterJDBCURL,omitempty"` - - // CopyCommand AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-copycommand - CopyCommand *AWSKinesisFirehoseDeliveryStream_CopyCommand `json:"CopyCommand,omitempty"` - - // Password AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-password - Password string `json:"Password,omitempty"` - - // ProcessingConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-processingconfiguration - ProcessingConfiguration *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` - - // RoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-rolearn - RoleARN string `json:"RoleARN,omitempty"` - - // S3Configuration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-s3configuration - S3Configuration *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration `json:"S3Configuration,omitempty"` - - // Username AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-username - Username string `json:"Username,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_serializer.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_serializer.go deleted file mode 100644 index d9827081b9..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_serializer.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_Serializer AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Serializer) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html -type AWSKinesisFirehoseDeliveryStream_Serializer struct { - - // OrcSerDe AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html#cfn-kinesisfirehose-deliverystream-serializer-orcserde - OrcSerDe *AWSKinesisFirehoseDeliveryStream_OrcSerDe `json:"OrcSerDe,omitempty"` - - // ParquetSerDe AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html#cfn-kinesisfirehose-deliverystream-serializer-parquetserde - ParquetSerDe *AWSKinesisFirehoseDeliveryStream_ParquetSerDe `json:"ParquetSerDe,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_Serializer) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.Serializer" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_Serializer) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_Serializer) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_Serializer) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_Serializer) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_Serializer) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_Serializer) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_splunkretryoptions.go b/cloudformation/resources/aws-kinesisfirehose-deliverystream_splunkretryoptions.go deleted file mode 100644 index b1a68dd83a..0000000000 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_splunkretryoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.SplunkRetryOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkretryoptions.html -type AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions struct { - - // DurationInSeconds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkretryoptions.html#cfn-kinesisfirehose-deliverystream-splunkretryoptions-durationinseconds - DurationInSeconds int `json:"DurationInSeconds"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) AWSCloudFormationType() string { - return "AWS::KinesisFirehose::DeliveryStream.SplunkRetryOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lakeformation-datalakesettings_admins.go b/cloudformation/resources/aws-lakeformation-datalakesettings_admins.go deleted file mode 100644 index 43292c6e1c..0000000000 --- a/cloudformation/resources/aws-lakeformation-datalakesettings_admins.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLakeFormationDataLakeSettings_Admins AWS CloudFormation Resource (AWS::LakeFormation::DataLakeSettings.Admins) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-admins.html -type AWSLakeFormationDataLakeSettings_Admins struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationDataLakeSettings_Admins) AWSCloudFormationType() string { - return "AWS::LakeFormation::DataLakeSettings.Admins" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationDataLakeSettings_Admins) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationDataLakeSettings_Admins) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationDataLakeSettings_Admins) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationDataLakeSettings_Admins) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationDataLakeSettings_Admins) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationDataLakeSettings_Admins) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lakeformation-datalakesettings_datalakeprincipal.go b/cloudformation/resources/aws-lakeformation-datalakesettings_datalakeprincipal.go deleted file mode 100644 index ef96ea624a..0000000000 --- a/cloudformation/resources/aws-lakeformation-datalakesettings_datalakeprincipal.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLakeFormationDataLakeSettings_DataLakePrincipal AWS CloudFormation Resource (AWS::LakeFormation::DataLakeSettings.DataLakePrincipal) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-datalakeprincipal.html -type AWSLakeFormationDataLakeSettings_DataLakePrincipal struct { - - // DataLakePrincipalIdentifier AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-datalakeprincipal.html#cfn-lakeformation-datalakesettings-datalakeprincipal-datalakeprincipalidentifier - DataLakePrincipalIdentifier string `json:"DataLakePrincipalIdentifier,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationDataLakeSettings_DataLakePrincipal) AWSCloudFormationType() string { - return "AWS::LakeFormation::DataLakeSettings.DataLakePrincipal" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationDataLakeSettings_DataLakePrincipal) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationDataLakeSettings_DataLakePrincipal) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationDataLakeSettings_DataLakePrincipal) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationDataLakeSettings_DataLakePrincipal) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationDataLakeSettings_DataLakePrincipal) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationDataLakeSettings_DataLakePrincipal) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lakeformation-permissions_databaseresource.go b/cloudformation/resources/aws-lakeformation-permissions_databaseresource.go deleted file mode 100644 index 6fa1767427..0000000000 --- a/cloudformation/resources/aws-lakeformation-permissions_databaseresource.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLakeFormationPermissions_DatabaseResource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.DatabaseResource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-databaseresource.html -type AWSLakeFormationPermissions_DatabaseResource struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-databaseresource.html#cfn-lakeformation-permissions-databaseresource-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions_DatabaseResource) AWSCloudFormationType() string { - return "AWS::LakeFormation::Permissions.DatabaseResource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions_DatabaseResource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions_DatabaseResource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions_DatabaseResource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions_DatabaseResource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions_DatabaseResource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions_DatabaseResource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lakeformation-permissions_datalakeprincipal.go b/cloudformation/resources/aws-lakeformation-permissions_datalakeprincipal.go deleted file mode 100644 index 7e769369d7..0000000000 --- a/cloudformation/resources/aws-lakeformation-permissions_datalakeprincipal.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLakeFormationPermissions_DataLakePrincipal AWS CloudFormation Resource (AWS::LakeFormation::Permissions.DataLakePrincipal) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-datalakeprincipal.html -type AWSLakeFormationPermissions_DataLakePrincipal struct { - - // DataLakePrincipalIdentifier AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-datalakeprincipal.html#cfn-lakeformation-permissions-datalakeprincipal-datalakeprincipalidentifier - DataLakePrincipalIdentifier string `json:"DataLakePrincipalIdentifier,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions_DataLakePrincipal) AWSCloudFormationType() string { - return "AWS::LakeFormation::Permissions.DataLakePrincipal" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions_DataLakePrincipal) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions_DataLakePrincipal) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions_DataLakePrincipal) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions_DataLakePrincipal) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions_DataLakePrincipal) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions_DataLakePrincipal) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lakeformation-permissions_resource.go b/cloudformation/resources/aws-lakeformation-permissions_resource.go deleted file mode 100644 index 0b7b76aad8..0000000000 --- a/cloudformation/resources/aws-lakeformation-permissions_resource.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLakeFormationPermissions_Resource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.Resource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html -type AWSLakeFormationPermissions_Resource struct { - - // DatabaseResource AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html#cfn-lakeformation-permissions-resource-databaseresource - DatabaseResource *AWSLakeFormationPermissions_DatabaseResource `json:"DatabaseResource,omitempty"` - - // TableResource AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html#cfn-lakeformation-permissions-resource-tableresource - TableResource *AWSLakeFormationPermissions_TableResource `json:"TableResource,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions_Resource) AWSCloudFormationType() string { - return "AWS::LakeFormation::Permissions.Resource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions_Resource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions_Resource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions_Resource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions_Resource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions_Resource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions_Resource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lakeformation-permissions_tableresource.go b/cloudformation/resources/aws-lakeformation-permissions_tableresource.go deleted file mode 100644 index 2821f692ff..0000000000 --- a/cloudformation/resources/aws-lakeformation-permissions_tableresource.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLakeFormationPermissions_TableResource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.TableResource) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html -type AWSLakeFormationPermissions_TableResource struct { - - // DatabaseName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html#cfn-lakeformation-permissions-tableresource-databasename - DatabaseName string `json:"DatabaseName,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html#cfn-lakeformation-permissions-tableresource-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions_TableResource) AWSCloudFormationType() string { - return "AWS::LakeFormation::Permissions.TableResource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions_TableResource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLakeFormationPermissions_TableResource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions_TableResource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLakeFormationPermissions_TableResource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions_TableResource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLakeFormationPermissions_TableResource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lambda-alias_aliasroutingconfiguration.go b/cloudformation/resources/aws-lambda-alias_aliasroutingconfiguration.go deleted file mode 100644 index d72ed8dde5..0000000000 --- a/cloudformation/resources/aws-lambda-alias_aliasroutingconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLambdaAlias_AliasRoutingConfiguration AWS CloudFormation Resource (AWS::Lambda::Alias.AliasRoutingConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html -type AWSLambdaAlias_AliasRoutingConfiguration struct { - - // AdditionalVersionWeights AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html#cfn-lambda-alias-aliasroutingconfiguration-additionalversionweights - AdditionalVersionWeights []AWSLambdaAlias_VersionWeight `json:"AdditionalVersionWeights,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaAlias_AliasRoutingConfiguration) AWSCloudFormationType() string { - return "AWS::Lambda::Alias.AliasRoutingConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaAlias_AliasRoutingConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaAlias_AliasRoutingConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaAlias_AliasRoutingConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaAlias_AliasRoutingConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaAlias_AliasRoutingConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaAlias_AliasRoutingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lambda-function_deadletterconfig.go b/cloudformation/resources/aws-lambda-function_deadletterconfig.go deleted file mode 100644 index 912f1c239e..0000000000 --- a/cloudformation/resources/aws-lambda-function_deadletterconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLambdaFunction_DeadLetterConfig AWS CloudFormation Resource (AWS::Lambda::Function.DeadLetterConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html -type AWSLambdaFunction_DeadLetterConfig struct { - - // TargetArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html#cfn-lambda-function-deadletterconfig-targetarn - TargetArn string `json:"TargetArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction_DeadLetterConfig) AWSCloudFormationType() string { - return "AWS::Lambda::Function.DeadLetterConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_DeadLetterConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_DeadLetterConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_DeadLetterConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_DeadLetterConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_DeadLetterConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_DeadLetterConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lambda-function_environment.go b/cloudformation/resources/aws-lambda-function_environment.go deleted file mode 100644 index 4f74ae6987..0000000000 --- a/cloudformation/resources/aws-lambda-function_environment.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLambdaFunction_Environment AWS CloudFormation Resource (AWS::Lambda::Function.Environment) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html -type AWSLambdaFunction_Environment struct { - - // Variables AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html#cfn-lambda-function-environment-variables - Variables map[string]string `json:"Variables,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction_Environment) AWSCloudFormationType() string { - return "AWS::Lambda::Function.Environment" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_Environment) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_Environment) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_Environment) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_Environment) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_Environment) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-lambda-function_tracingconfig.go b/cloudformation/resources/aws-lambda-function_tracingconfig.go deleted file mode 100644 index c6348f51aa..0000000000 --- a/cloudformation/resources/aws-lambda-function_tracingconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSLambdaFunction_TracingConfig AWS CloudFormation Resource (AWS::Lambda::Function.TracingConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html -type AWSLambdaFunction_TracingConfig struct { - - // Mode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html#cfn-lambda-function-tracingconfig-mode - Mode string `json:"Mode,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction_TracingConfig) AWSCloudFormationType() string { - return "AWS::Lambda::Function.TracingConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_TracingConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSLambdaFunction_TracingConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_TracingConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSLambdaFunction_TracingConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_TracingConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSLambdaFunction_TracingConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-managedblockchain-member_approvalthresholdpolicy.go b/cloudformation/resources/aws-managedblockchain-member_approvalthresholdpolicy.go deleted file mode 100644 index 5a00cdd66c..0000000000 --- a/cloudformation/resources/aws-managedblockchain-member_approvalthresholdpolicy.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSManagedBlockchainMember_ApprovalThresholdPolicy AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.ApprovalThresholdPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html -type AWSManagedBlockchainMember_ApprovalThresholdPolicy struct { - - // ProposalDurationInHours AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-proposaldurationinhours - ProposalDurationInHours int `json:"ProposalDurationInHours,omitempty"` - - // ThresholdComparator AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-thresholdcomparator - ThresholdComparator string `json:"ThresholdComparator,omitempty"` - - // ThresholdPercentage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-thresholdpercentage - ThresholdPercentage int `json:"ThresholdPercentage,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_ApprovalThresholdPolicy) AWSCloudFormationType() string { - return "AWS::ManagedBlockchain::Member.ApprovalThresholdPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_ApprovalThresholdPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_ApprovalThresholdPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_ApprovalThresholdPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_ApprovalThresholdPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_ApprovalThresholdPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_ApprovalThresholdPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-managedblockchain-member_memberconfiguration.go b/cloudformation/resources/aws-managedblockchain-member_memberconfiguration.go deleted file mode 100644 index 08aa54a839..0000000000 --- a/cloudformation/resources/aws-managedblockchain-member_memberconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSManagedBlockchainMember_MemberConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html -type AWSManagedBlockchainMember_MemberConfiguration struct { - - // Description AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-description - Description string `json:"Description,omitempty"` - - // MemberFrameworkConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-memberframeworkconfiguration - MemberFrameworkConfiguration *AWSManagedBlockchainMember_MemberFrameworkConfiguration `json:"MemberFrameworkConfiguration,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_MemberConfiguration) AWSCloudFormationType() string { - return "AWS::ManagedBlockchain::Member.MemberConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_MemberConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_MemberConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_MemberConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_MemberConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_MemberConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_MemberConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-managedblockchain-member_memberfabricconfiguration.go b/cloudformation/resources/aws-managedblockchain-member_memberfabricconfiguration.go deleted file mode 100644 index 4984ad8756..0000000000 --- a/cloudformation/resources/aws-managedblockchain-member_memberfabricconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSManagedBlockchainMember_MemberFabricConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberFabricConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html -type AWSManagedBlockchainMember_MemberFabricConfiguration struct { - - // AdminPassword AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html#cfn-managedblockchain-member-memberfabricconfiguration-adminpassword - AdminPassword string `json:"AdminPassword,omitempty"` - - // AdminUsername AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html#cfn-managedblockchain-member-memberfabricconfiguration-adminusername - AdminUsername string `json:"AdminUsername,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_MemberFabricConfiguration) AWSCloudFormationType() string { - return "AWS::ManagedBlockchain::Member.MemberFabricConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_MemberFabricConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_MemberFabricConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_MemberFabricConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_MemberFabricConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_MemberFabricConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_MemberFabricConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-managedblockchain-member_memberframeworkconfiguration.go b/cloudformation/resources/aws-managedblockchain-member_memberframeworkconfiguration.go deleted file mode 100644 index ca3265c21d..0000000000 --- a/cloudformation/resources/aws-managedblockchain-member_memberframeworkconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSManagedBlockchainMember_MemberFrameworkConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberFrameworkConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberframeworkconfiguration.html -type AWSManagedBlockchainMember_MemberFrameworkConfiguration struct { - - // MemberFabricConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberframeworkconfiguration.html#cfn-managedblockchain-member-memberframeworkconfiguration-memberfabricconfiguration - MemberFabricConfiguration *AWSManagedBlockchainMember_MemberFabricConfiguration `json:"MemberFabricConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_MemberFrameworkConfiguration) AWSCloudFormationType() string { - return "AWS::ManagedBlockchain::Member.MemberFrameworkConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_MemberFrameworkConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_MemberFrameworkConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_MemberFrameworkConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_MemberFrameworkConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_MemberFrameworkConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_MemberFrameworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-managedblockchain-member_networkfabricconfiguration.go b/cloudformation/resources/aws-managedblockchain-member_networkfabricconfiguration.go deleted file mode 100644 index d4bf9c363f..0000000000 --- a/cloudformation/resources/aws-managedblockchain-member_networkfabricconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSManagedBlockchainMember_NetworkFabricConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.NetworkFabricConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkfabricconfiguration.html -type AWSManagedBlockchainMember_NetworkFabricConfiguration struct { - - // Edition AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkfabricconfiguration.html#cfn-managedblockchain-member-networkfabricconfiguration-edition - Edition string `json:"Edition,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_NetworkFabricConfiguration) AWSCloudFormationType() string { - return "AWS::ManagedBlockchain::Member.NetworkFabricConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_NetworkFabricConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_NetworkFabricConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_NetworkFabricConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_NetworkFabricConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_NetworkFabricConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_NetworkFabricConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-managedblockchain-member_networkframeworkconfiguration.go b/cloudformation/resources/aws-managedblockchain-member_networkframeworkconfiguration.go deleted file mode 100644 index 6c94e83f24..0000000000 --- a/cloudformation/resources/aws-managedblockchain-member_networkframeworkconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSManagedBlockchainMember_NetworkFrameworkConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.NetworkFrameworkConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkframeworkconfiguration.html -type AWSManagedBlockchainMember_NetworkFrameworkConfiguration struct { - - // NetworkFabricConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkframeworkconfiguration.html#cfn-managedblockchain-member-networkframeworkconfiguration-networkfabricconfiguration - NetworkFabricConfiguration *AWSManagedBlockchainMember_NetworkFabricConfiguration `json:"NetworkFabricConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) AWSCloudFormationType() string { - return "AWS::ManagedBlockchain::Member.NetworkFrameworkConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-managedblockchain-member_votingpolicy.go b/cloudformation/resources/aws-managedblockchain-member_votingpolicy.go deleted file mode 100644 index b0f2761e4d..0000000000 --- a/cloudformation/resources/aws-managedblockchain-member_votingpolicy.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSManagedBlockchainMember_VotingPolicy AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.VotingPolicy) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-votingpolicy.html -type AWSManagedBlockchainMember_VotingPolicy struct { - - // ApprovalThresholdPolicy AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-votingpolicy.html#cfn-managedblockchain-member-votingpolicy-approvalthresholdpolicy - ApprovalThresholdPolicy *AWSManagedBlockchainMember_ApprovalThresholdPolicy `json:"ApprovalThresholdPolicy,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_VotingPolicy) AWSCloudFormationType() string { - return "AWS::ManagedBlockchain::Member.VotingPolicy" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_VotingPolicy) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainMember_VotingPolicy) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_VotingPolicy) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainMember_VotingPolicy) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_VotingPolicy) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainMember_VotingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-managedblockchain-node_nodeconfiguration.go b/cloudformation/resources/aws-managedblockchain-node_nodeconfiguration.go deleted file mode 100644 index a875f57d31..0000000000 --- a/cloudformation/resources/aws-managedblockchain-node_nodeconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSManagedBlockchainNode_NodeConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Node.NodeConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html -type AWSManagedBlockchainNode_NodeConfiguration struct { - - // AvailabilityZone AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html#cfn-managedblockchain-node-nodeconfiguration-availabilityzone - AvailabilityZone string `json:"AvailabilityZone,omitempty"` - - // InstanceType AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html#cfn-managedblockchain-node-nodeconfiguration-instancetype - InstanceType string `json:"InstanceType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainNode_NodeConfiguration) AWSCloudFormationType() string { - return "AWS::ManagedBlockchain::Node.NodeConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainNode_NodeConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSManagedBlockchainNode_NodeConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainNode_NodeConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSManagedBlockchainNode_NodeConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainNode_NodeConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSManagedBlockchainNode_NodeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_aribsourcesettings.go b/cloudformation/resources/aws-medialive-channel_aribsourcesettings.go deleted file mode 100644 index 85a6015b76..0000000000 --- a/cloudformation/resources/aws-medialive-channel_aribsourcesettings.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_AribSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.AribSourceSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aribsourcesettings.html -type AWSMediaLiveChannel_AribSourceSettings struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AribSourceSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.AribSourceSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AribSourceSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AribSourceSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AribSourceSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AribSourceSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AribSourceSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AribSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_audiolanguageselection.go b/cloudformation/resources/aws-medialive-channel_audiolanguageselection.go deleted file mode 100644 index 565fe06a31..0000000000 --- a/cloudformation/resources/aws-medialive-channel_audiolanguageselection.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_AudioLanguageSelection AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioLanguageSelection) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html -type AWSMediaLiveChannel_AudioLanguageSelection struct { - - // LanguageCode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html#cfn-medialive-channel-audiolanguageselection-languagecode - LanguageCode string `json:"LanguageCode,omitempty"` - - // LanguageSelectionPolicy AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html#cfn-medialive-channel-audiolanguageselection-languageselectionpolicy - LanguageSelectionPolicy string `json:"LanguageSelectionPolicy,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AudioLanguageSelection) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.AudioLanguageSelection" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AudioLanguageSelection) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AudioLanguageSelection) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AudioLanguageSelection) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AudioLanguageSelection) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AudioLanguageSelection) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AudioLanguageSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_audiopidselection.go b/cloudformation/resources/aws-medialive-channel_audiopidselection.go deleted file mode 100644 index 77aae7e543..0000000000 --- a/cloudformation/resources/aws-medialive-channel_audiopidselection.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_AudioPidSelection AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioPidSelection) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiopidselection.html -type AWSMediaLiveChannel_AudioPidSelection struct { - - // Pid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiopidselection.html#cfn-medialive-channel-audiopidselection-pid - Pid int `json:"Pid,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AudioPidSelection) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.AudioPidSelection" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AudioPidSelection) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AudioPidSelection) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AudioPidSelection) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AudioPidSelection) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AudioPidSelection) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AudioPidSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_audioselector.go b/cloudformation/resources/aws-medialive-channel_audioselector.go deleted file mode 100644 index 0e6b1515d4..0000000000 --- a/cloudformation/resources/aws-medialive-channel_audioselector.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_AudioSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioSelector) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html -type AWSMediaLiveChannel_AudioSelector struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html#cfn-medialive-channel-audioselector-name - Name string `json:"Name,omitempty"` - - // SelectorSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html#cfn-medialive-channel-audioselector-selectorsettings - SelectorSettings *AWSMediaLiveChannel_AudioSelectorSettings `json:"SelectorSettings,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AudioSelector) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.AudioSelector" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AudioSelector) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AudioSelector) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AudioSelector) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AudioSelector) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AudioSelector) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AudioSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_audioselectorsettings.go b/cloudformation/resources/aws-medialive-channel_audioselectorsettings.go deleted file mode 100644 index dbb78ff53c..0000000000 --- a/cloudformation/resources/aws-medialive-channel_audioselectorsettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_AudioSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioSelectorSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html -type AWSMediaLiveChannel_AudioSelectorSettings struct { - - // AudioLanguageSelection AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiolanguageselection - AudioLanguageSelection *AWSMediaLiveChannel_AudioLanguageSelection `json:"AudioLanguageSelection,omitempty"` - - // AudioPidSelection AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiopidselection - AudioPidSelection *AWSMediaLiveChannel_AudioPidSelection `json:"AudioPidSelection,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AudioSelectorSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.AudioSelectorSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AudioSelectorSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_AudioSelectorSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AudioSelectorSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_AudioSelectorSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AudioSelectorSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_AudioSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_captionselector.go b/cloudformation/resources/aws-medialive-channel_captionselector.go deleted file mode 100644 index aacba6d0ab..0000000000 --- a/cloudformation/resources/aws-medialive-channel_captionselector.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_CaptionSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.CaptionSelector) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html -type AWSMediaLiveChannel_CaptionSelector struct { - - // LanguageCode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-languagecode - LanguageCode string `json:"LanguageCode,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-name - Name string `json:"Name,omitempty"` - - // SelectorSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-selectorsettings - SelectorSettings *AWSMediaLiveChannel_CaptionSelectorSettings `json:"SelectorSettings,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_CaptionSelector) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.CaptionSelector" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_CaptionSelector) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_CaptionSelector) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_CaptionSelector) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_CaptionSelector) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_CaptionSelector) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_CaptionSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_captionselectorsettings.go b/cloudformation/resources/aws-medialive-channel_captionselectorsettings.go deleted file mode 100644 index 8ac20f8495..0000000000 --- a/cloudformation/resources/aws-medialive-channel_captionselectorsettings.go +++ /dev/null @@ -1,88 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_CaptionSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.CaptionSelectorSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html -type AWSMediaLiveChannel_CaptionSelectorSettings struct { - - // AribSourceSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-aribsourcesettings - AribSourceSettings *AWSMediaLiveChannel_AribSourceSettings `json:"AribSourceSettings,omitempty"` - - // DvbSubSourceSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-dvbsubsourcesettings - DvbSubSourceSettings *AWSMediaLiveChannel_DvbSubSourceSettings `json:"DvbSubSourceSettings,omitempty"` - - // EmbeddedSourceSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-embeddedsourcesettings - EmbeddedSourceSettings *AWSMediaLiveChannel_EmbeddedSourceSettings `json:"EmbeddedSourceSettings,omitempty"` - - // Scte20SourceSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-scte20sourcesettings - Scte20SourceSettings *AWSMediaLiveChannel_Scte20SourceSettings `json:"Scte20SourceSettings,omitempty"` - - // Scte27SourceSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-scte27sourcesettings - Scte27SourceSettings *AWSMediaLiveChannel_Scte27SourceSettings `json:"Scte27SourceSettings,omitempty"` - - // TeletextSourceSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-teletextsourcesettings - TeletextSourceSettings *AWSMediaLiveChannel_TeletextSourceSettings `json:"TeletextSourceSettings,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_CaptionSelectorSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.CaptionSelectorSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_CaptionSelectorSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_CaptionSelectorSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_CaptionSelectorSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_CaptionSelectorSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_CaptionSelectorSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_CaptionSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_dvbsubsourcesettings.go b/cloudformation/resources/aws-medialive-channel_dvbsubsourcesettings.go deleted file mode 100644 index efc2cb03e7..0000000000 --- a/cloudformation/resources/aws-medialive-channel_dvbsubsourcesettings.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_DvbSubSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.DvbSubSourceSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubsourcesettings.html -type AWSMediaLiveChannel_DvbSubSourceSettings struct { - - // Pid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubsourcesettings.html#cfn-medialive-channel-dvbsubsourcesettings-pid - Pid int `json:"Pid,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_DvbSubSourceSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.DvbSubSourceSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_DvbSubSourceSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_DvbSubSourceSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_DvbSubSourceSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_DvbSubSourceSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_DvbSubSourceSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_DvbSubSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_inputattachment.go b/cloudformation/resources/aws-medialive-channel_inputattachment.go deleted file mode 100644 index 7b1c8f2c48..0000000000 --- a/cloudformation/resources/aws-medialive-channel_inputattachment.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_InputAttachment AWS CloudFormation Resource (AWS::MediaLive::Channel.InputAttachment) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html -type AWSMediaLiveChannel_InputAttachment struct { - - // InputAttachmentName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputattachmentname - InputAttachmentName string `json:"InputAttachmentName,omitempty"` - - // InputId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputid - InputId string `json:"InputId,omitempty"` - - // InputSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputsettings - InputSettings *AWSMediaLiveChannel_InputSettings `json:"InputSettings,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_InputAttachment) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.InputAttachment" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_InputAttachment) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_InputAttachment) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_InputAttachment) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_InputAttachment) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_InputAttachment) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_InputAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_mediapackageoutputdestinationsettings.go b/cloudformation/resources/aws-medialive-channel_mediapackageoutputdestinationsettings.go deleted file mode 100644 index abc0e352a3..0000000000 --- a/cloudformation/resources/aws-medialive-channel_mediapackageoutputdestinationsettings.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_MediaPackageOutputDestinationSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.MediaPackageOutputDestinationSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputdestinationsettings.html -type AWSMediaLiveChannel_MediaPackageOutputDestinationSettings struct { - - // ChannelId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputdestinationsettings.html#cfn-medialive-channel-mediapackageoutputdestinationsettings-channelid - ChannelId string `json:"ChannelId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.MediaPackageOutputDestinationSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_networkinputsettings.go b/cloudformation/resources/aws-medialive-channel_networkinputsettings.go deleted file mode 100644 index 10cded4947..0000000000 --- a/cloudformation/resources/aws-medialive-channel_networkinputsettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_NetworkInputSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.NetworkInputSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html -type AWSMediaLiveChannel_NetworkInputSettings struct { - - // HlsInputSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html#cfn-medialive-channel-networkinputsettings-hlsinputsettings - HlsInputSettings *AWSMediaLiveChannel_HlsInputSettings `json:"HlsInputSettings,omitempty"` - - // ServerValidation AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html#cfn-medialive-channel-networkinputsettings-servervalidation - ServerValidation string `json:"ServerValidation,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_NetworkInputSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.NetworkInputSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_NetworkInputSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_NetworkInputSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_NetworkInputSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_NetworkInputSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_NetworkInputSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_NetworkInputSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_outputdestination.go b/cloudformation/resources/aws-medialive-channel_outputdestination.go deleted file mode 100644 index 57798f7695..0000000000 --- a/cloudformation/resources/aws-medialive-channel_outputdestination.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_OutputDestination AWS CloudFormation Resource (AWS::MediaLive::Channel.OutputDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html -type AWSMediaLiveChannel_OutputDestination struct { - - // Id AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-id - Id string `json:"Id,omitempty"` - - // MediaPackageSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-mediapackagesettings - MediaPackageSettings []AWSMediaLiveChannel_MediaPackageOutputDestinationSettings `json:"MediaPackageSettings,omitempty"` - - // Settings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-settings - Settings []AWSMediaLiveChannel_OutputDestinationSettings `json:"Settings,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_OutputDestination) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.OutputDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_OutputDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_OutputDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_OutputDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_OutputDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_OutputDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_OutputDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_scte20sourcesettings.go b/cloudformation/resources/aws-medialive-channel_scte20sourcesettings.go deleted file mode 100644 index 2867ae7149..0000000000 --- a/cloudformation/resources/aws-medialive-channel_scte20sourcesettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_Scte20SourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.Scte20SourceSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html -type AWSMediaLiveChannel_Scte20SourceSettings struct { - - // Convert608To708 AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html#cfn-medialive-channel-scte20sourcesettings-convert608to708 - Convert608To708 string `json:"Convert608To708,omitempty"` - - // Source608ChannelNumber AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html#cfn-medialive-channel-scte20sourcesettings-source608channelnumber - Source608ChannelNumber int `json:"Source608ChannelNumber,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_Scte20SourceSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.Scte20SourceSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_Scte20SourceSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_Scte20SourceSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_Scte20SourceSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_Scte20SourceSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_Scte20SourceSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_Scte20SourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_scte27sourcesettings.go b/cloudformation/resources/aws-medialive-channel_scte27sourcesettings.go deleted file mode 100644 index 0c6ee5a427..0000000000 --- a/cloudformation/resources/aws-medialive-channel_scte27sourcesettings.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_Scte27SourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.Scte27SourceSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27sourcesettings.html -type AWSMediaLiveChannel_Scte27SourceSettings struct { - - // Pid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27sourcesettings.html#cfn-medialive-channel-scte27sourcesettings-pid - Pid int `json:"Pid,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_Scte27SourceSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.Scte27SourceSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_Scte27SourceSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_Scte27SourceSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_Scte27SourceSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_Scte27SourceSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_Scte27SourceSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_Scte27SourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_teletextsourcesettings.go b/cloudformation/resources/aws-medialive-channel_teletextsourcesettings.go deleted file mode 100644 index d71b737383..0000000000 --- a/cloudformation/resources/aws-medialive-channel_teletextsourcesettings.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_TeletextSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.TeletextSourceSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextsourcesettings.html -type AWSMediaLiveChannel_TeletextSourceSettings struct { - - // PageNumber AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextsourcesettings.html#cfn-medialive-channel-teletextsourcesettings-pagenumber - PageNumber string `json:"PageNumber,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_TeletextSourceSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.TeletextSourceSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_TeletextSourceSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_TeletextSourceSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_TeletextSourceSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_TeletextSourceSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_TeletextSourceSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_TeletextSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_videoselector.go b/cloudformation/resources/aws-medialive-channel_videoselector.go deleted file mode 100644 index 6c91eff7f3..0000000000 --- a/cloudformation/resources/aws-medialive-channel_videoselector.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_VideoSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelector) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html -type AWSMediaLiveChannel_VideoSelector struct { - - // ColorSpace AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-colorspace - ColorSpace string `json:"ColorSpace,omitempty"` - - // ColorSpaceUsage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-colorspaceusage - ColorSpaceUsage string `json:"ColorSpaceUsage,omitempty"` - - // SelectorSettings AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-selectorsettings - SelectorSettings *AWSMediaLiveChannel_VideoSelectorSettings `json:"SelectorSettings,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_VideoSelector) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.VideoSelector" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_VideoSelector) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_VideoSelector) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_VideoSelector) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_VideoSelector) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_VideoSelector) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_VideoSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_videoselectorpid.go b/cloudformation/resources/aws-medialive-channel_videoselectorpid.go deleted file mode 100644 index 8bd6d980bc..0000000000 --- a/cloudformation/resources/aws-medialive-channel_videoselectorpid.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_VideoSelectorPid AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorPid) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorpid.html -type AWSMediaLiveChannel_VideoSelectorPid struct { - - // Pid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorpid.html#cfn-medialive-channel-videoselectorpid-pid - Pid int `json:"Pid,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_VideoSelectorPid) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.VideoSelectorPid" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_VideoSelectorPid) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_VideoSelectorPid) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_VideoSelectorPid) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_VideoSelectorPid) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_VideoSelectorPid) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_VideoSelectorPid) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_videoselectorprogramid.go b/cloudformation/resources/aws-medialive-channel_videoselectorprogramid.go deleted file mode 100644 index a9e9c85e67..0000000000 --- a/cloudformation/resources/aws-medialive-channel_videoselectorprogramid.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_VideoSelectorProgramId AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorProgramId) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorprogramid.html -type AWSMediaLiveChannel_VideoSelectorProgramId struct { - - // ProgramId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorprogramid.html#cfn-medialive-channel-videoselectorprogramid-programid - ProgramId int `json:"ProgramId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_VideoSelectorProgramId) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.VideoSelectorProgramId" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_VideoSelectorProgramId) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_VideoSelectorProgramId) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_VideoSelectorProgramId) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_VideoSelectorProgramId) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_VideoSelectorProgramId) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_VideoSelectorProgramId) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-channel_videoselectorsettings.go b/cloudformation/resources/aws-medialive-channel_videoselectorsettings.go deleted file mode 100644 index 05be9c3918..0000000000 --- a/cloudformation/resources/aws-medialive-channel_videoselectorsettings.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveChannel_VideoSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorSettings) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html -type AWSMediaLiveChannel_VideoSelectorSettings struct { - - // VideoSelectorPid AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html#cfn-medialive-channel-videoselectorsettings-videoselectorpid - VideoSelectorPid *AWSMediaLiveChannel_VideoSelectorPid `json:"VideoSelectorPid,omitempty"` - - // VideoSelectorProgramId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html#cfn-medialive-channel-videoselectorsettings-videoselectorprogramid - VideoSelectorProgramId *AWSMediaLiveChannel_VideoSelectorProgramId `json:"VideoSelectorProgramId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_VideoSelectorSettings) AWSCloudFormationType() string { - return "AWS::MediaLive::Channel.VideoSelectorSettings" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_VideoSelectorSettings) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveChannel_VideoSelectorSettings) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_VideoSelectorSettings) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveChannel_VideoSelectorSettings) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_VideoSelectorSettings) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveChannel_VideoSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-input_inputdestinationrequest.go b/cloudformation/resources/aws-medialive-input_inputdestinationrequest.go deleted file mode 100644 index b78e863f3d..0000000000 --- a/cloudformation/resources/aws-medialive-input_inputdestinationrequest.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveInput_InputDestinationRequest AWS CloudFormation Resource (AWS::MediaLive::Input.InputDestinationRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdestinationrequest.html -type AWSMediaLiveInput_InputDestinationRequest struct { - - // StreamName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdestinationrequest.html#cfn-medialive-input-inputdestinationrequest-streamname - StreamName string `json:"StreamName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInput_InputDestinationRequest) AWSCloudFormationType() string { - return "AWS::MediaLive::Input.InputDestinationRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput_InputDestinationRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput_InputDestinationRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput_InputDestinationRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput_InputDestinationRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput_InputDestinationRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput_InputDestinationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-input_inputvpcrequest.go b/cloudformation/resources/aws-medialive-input_inputvpcrequest.go deleted file mode 100644 index d71cebd6d4..0000000000 --- a/cloudformation/resources/aws-medialive-input_inputvpcrequest.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveInput_InputVpcRequest AWS CloudFormation Resource (AWS::MediaLive::Input.InputVpcRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html -type AWSMediaLiveInput_InputVpcRequest struct { - - // SecurityGroupIds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html#cfn-medialive-input-inputvpcrequest-securitygroupids - SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` - - // SubnetIds AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html#cfn-medialive-input-inputvpcrequest-subnetids - SubnetIds []string `json:"SubnetIds,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInput_InputVpcRequest) AWSCloudFormationType() string { - return "AWS::MediaLive::Input.InputVpcRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput_InputVpcRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput_InputVpcRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput_InputVpcRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput_InputVpcRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput_InputVpcRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput_InputVpcRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-input_mediaconnectflowrequest.go b/cloudformation/resources/aws-medialive-input_mediaconnectflowrequest.go deleted file mode 100644 index c69c7fa7cb..0000000000 --- a/cloudformation/resources/aws-medialive-input_mediaconnectflowrequest.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveInput_MediaConnectFlowRequest AWS CloudFormation Resource (AWS::MediaLive::Input.MediaConnectFlowRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-mediaconnectflowrequest.html -type AWSMediaLiveInput_MediaConnectFlowRequest struct { - - // FlowArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-mediaconnectflowrequest.html#cfn-medialive-input-mediaconnectflowrequest-flowarn - FlowArn string `json:"FlowArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInput_MediaConnectFlowRequest) AWSCloudFormationType() string { - return "AWS::MediaLive::Input.MediaConnectFlowRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput_MediaConnectFlowRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInput_MediaConnectFlowRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput_MediaConnectFlowRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInput_MediaConnectFlowRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput_MediaConnectFlowRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInput_MediaConnectFlowRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go b/cloudformation/resources/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go deleted file mode 100644 index d77051053b..0000000000 --- a/cloudformation/resources/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr AWS CloudFormation Resource (AWS::MediaLive::InputSecurityGroup.InputWhitelistRuleCidr) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-inputsecuritygroup-inputwhitelistrulecidr.html -type AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr struct { - - // Cidr AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-inputsecuritygroup-inputwhitelistrulecidr.html#cfn-medialive-inputsecuritygroup-inputwhitelistrulecidr-cidr - Cidr string `json:"Cidr,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) AWSCloudFormationType() string { - return "AWS::MediaLive::InputSecurityGroup.InputWhitelistRuleCidr" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-msk-cluster_clientauthentication.go b/cloudformation/resources/aws-msk-cluster_clientauthentication.go deleted file mode 100644 index e012b2a0f6..0000000000 --- a/cloudformation/resources/aws-msk-cluster_clientauthentication.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMSKCluster_ClientAuthentication AWS CloudFormation Resource (AWS::MSK::Cluster.ClientAuthentication) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html -type AWSMSKCluster_ClientAuthentication struct { - - // Tls AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html#cfn-msk-cluster-clientauthentication-tls - Tls *AWSMSKCluster_Tls `json:"Tls,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_ClientAuthentication) AWSCloudFormationType() string { - return "AWS::MSK::Cluster.ClientAuthentication" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_ClientAuthentication) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_ClientAuthentication) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_ClientAuthentication) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_ClientAuthentication) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_ClientAuthentication) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_ClientAuthentication) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-msk-cluster_configurationinfo.go b/cloudformation/resources/aws-msk-cluster_configurationinfo.go deleted file mode 100644 index 262d537b5a..0000000000 --- a/cloudformation/resources/aws-msk-cluster_configurationinfo.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMSKCluster_ConfigurationInfo AWS CloudFormation Resource (AWS::MSK::Cluster.ConfigurationInfo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html -type AWSMSKCluster_ConfigurationInfo struct { - - // Arn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html#cfn-msk-cluster-configurationinfo-arn - Arn string `json:"Arn,omitempty"` - - // Revision AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html#cfn-msk-cluster-configurationinfo-revision - Revision int `json:"Revision"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_ConfigurationInfo) AWSCloudFormationType() string { - return "AWS::MSK::Cluster.ConfigurationInfo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_ConfigurationInfo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_ConfigurationInfo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_ConfigurationInfo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_ConfigurationInfo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_ConfigurationInfo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_ConfigurationInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-msk-cluster_ebsstorageinfo.go b/cloudformation/resources/aws-msk-cluster_ebsstorageinfo.go deleted file mode 100644 index 098f46d917..0000000000 --- a/cloudformation/resources/aws-msk-cluster_ebsstorageinfo.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMSKCluster_EBSStorageInfo AWS CloudFormation Resource (AWS::MSK::Cluster.EBSStorageInfo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-ebsstorageinfo.html -type AWSMSKCluster_EBSStorageInfo struct { - - // VolumeSize AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-ebsstorageinfo.html#cfn-msk-cluster-ebsstorageinfo-volumesize - VolumeSize int `json:"VolumeSize,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_EBSStorageInfo) AWSCloudFormationType() string { - return "AWS::MSK::Cluster.EBSStorageInfo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_EBSStorageInfo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_EBSStorageInfo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_EBSStorageInfo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_EBSStorageInfo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_EBSStorageInfo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_EBSStorageInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-msk-cluster_encryptionatrest.go b/cloudformation/resources/aws-msk-cluster_encryptionatrest.go deleted file mode 100644 index cbf7c72035..0000000000 --- a/cloudformation/resources/aws-msk-cluster_encryptionatrest.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMSKCluster_EncryptionAtRest AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionAtRest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionatrest.html -type AWSMSKCluster_EncryptionAtRest struct { - - // DataVolumeKMSKeyId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionatrest.html#cfn-msk-cluster-encryptionatrest-datavolumekmskeyid - DataVolumeKMSKeyId string `json:"DataVolumeKMSKeyId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_EncryptionAtRest) AWSCloudFormationType() string { - return "AWS::MSK::Cluster.EncryptionAtRest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_EncryptionAtRest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_EncryptionAtRest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_EncryptionAtRest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_EncryptionAtRest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_EncryptionAtRest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_EncryptionAtRest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-msk-cluster_encryptioninfo.go b/cloudformation/resources/aws-msk-cluster_encryptioninfo.go deleted file mode 100644 index edbf8795cb..0000000000 --- a/cloudformation/resources/aws-msk-cluster_encryptioninfo.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMSKCluster_EncryptionInfo AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionInfo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html -type AWSMSKCluster_EncryptionInfo struct { - - // EncryptionAtRest AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html#cfn-msk-cluster-encryptioninfo-encryptionatrest - EncryptionAtRest *AWSMSKCluster_EncryptionAtRest `json:"EncryptionAtRest,omitempty"` - - // EncryptionInTransit AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html#cfn-msk-cluster-encryptioninfo-encryptionintransit - EncryptionInTransit *AWSMSKCluster_EncryptionInTransit `json:"EncryptionInTransit,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_EncryptionInfo) AWSCloudFormationType() string { - return "AWS::MSK::Cluster.EncryptionInfo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_EncryptionInfo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_EncryptionInfo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_EncryptionInfo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_EncryptionInfo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_EncryptionInfo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_EncryptionInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-msk-cluster_encryptionintransit.go b/cloudformation/resources/aws-msk-cluster_encryptionintransit.go deleted file mode 100644 index 5653c1db70..0000000000 --- a/cloudformation/resources/aws-msk-cluster_encryptionintransit.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMSKCluster_EncryptionInTransit AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionInTransit) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html -type AWSMSKCluster_EncryptionInTransit struct { - - // ClientBroker AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html#cfn-msk-cluster-encryptionintransit-clientbroker - ClientBroker string `json:"ClientBroker,omitempty"` - - // InCluster AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html#cfn-msk-cluster-encryptionintransit-incluster - InCluster bool `json:"InCluster,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_EncryptionInTransit) AWSCloudFormationType() string { - return "AWS::MSK::Cluster.EncryptionInTransit" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_EncryptionInTransit) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_EncryptionInTransit) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_EncryptionInTransit) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_EncryptionInTransit) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_EncryptionInTransit) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_EncryptionInTransit) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-msk-cluster_storageinfo.go b/cloudformation/resources/aws-msk-cluster_storageinfo.go deleted file mode 100644 index 15617af70e..0000000000 --- a/cloudformation/resources/aws-msk-cluster_storageinfo.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSMSKCluster_StorageInfo AWS CloudFormation Resource (AWS::MSK::Cluster.StorageInfo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-storageinfo.html -type AWSMSKCluster_StorageInfo struct { - - // EBSStorageInfo AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-storageinfo.html#cfn-msk-cluster-storageinfo-ebsstorageinfo - EBSStorageInfo *AWSMSKCluster_EBSStorageInfo `json:"EBSStorageInfo,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_StorageInfo) AWSCloudFormationType() string { - return "AWS::MSK::Cluster.StorageInfo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_StorageInfo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSMSKCluster_StorageInfo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_StorageInfo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSMSKCluster_StorageInfo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_StorageInfo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSMSKCluster_StorageInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-opsworks-layer_lifecycleeventconfiguration.go b/cloudformation/resources/aws-opsworks-layer_lifecycleeventconfiguration.go deleted file mode 100644 index f98be3d71c..0000000000 --- a/cloudformation/resources/aws-opsworks-layer_lifecycleeventconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSOpsWorksLayer_LifecycleEventConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Layer.LifecycleEventConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html -type AWSOpsWorksLayer_LifecycleEventConfiguration struct { - - // ShutdownEventConfiguration AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration - ShutdownEventConfiguration *AWSOpsWorksLayer_ShutdownEventConfiguration `json:"ShutdownEventConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_LifecycleEventConfiguration) AWSCloudFormationType() string { - return "AWS::OpsWorks::Layer.LifecycleEventConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_LifecycleEventConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_LifecycleEventConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_LifecycleEventConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_LifecycleEventConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_LifecycleEventConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_LifecycleEventConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-opsworks-layer_loadbasedautoscaling.go b/cloudformation/resources/aws-opsworks-layer_loadbasedautoscaling.go deleted file mode 100644 index acde3658ed..0000000000 --- a/cloudformation/resources/aws-opsworks-layer_loadbasedautoscaling.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSOpsWorksLayer_LoadBasedAutoScaling AWS CloudFormation Resource (AWS::OpsWorks::Layer.LoadBasedAutoScaling) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html -type AWSOpsWorksLayer_LoadBasedAutoScaling struct { - - // DownScaling AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-downscaling - DownScaling *AWSOpsWorksLayer_AutoScalingThresholds `json:"DownScaling,omitempty"` - - // Enable AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-enable - Enable bool `json:"Enable,omitempty"` - - // UpScaling AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-upscaling - UpScaling *AWSOpsWorksLayer_AutoScalingThresholds `json:"UpScaling,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_LoadBasedAutoScaling) AWSCloudFormationType() string { - return "AWS::OpsWorks::Layer.LoadBasedAutoScaling" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_LoadBasedAutoScaling) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_LoadBasedAutoScaling) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_LoadBasedAutoScaling) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_LoadBasedAutoScaling) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_LoadBasedAutoScaling) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_LoadBasedAutoScaling) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-opsworks-layer_shutdowneventconfiguration.go b/cloudformation/resources/aws-opsworks-layer_shutdowneventconfiguration.go deleted file mode 100644 index 49975a5b19..0000000000 --- a/cloudformation/resources/aws-opsworks-layer_shutdowneventconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSOpsWorksLayer_ShutdownEventConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Layer.ShutdownEventConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html -type AWSOpsWorksLayer_ShutdownEventConfiguration struct { - - // DelayUntilElbConnectionsDrained AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-delayuntilelbconnectionsdrained - DelayUntilElbConnectionsDrained bool `json:"DelayUntilElbConnectionsDrained,omitempty"` - - // ExecutionTimeout AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-executiontimeout - ExecutionTimeout int `json:"ExecutionTimeout,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_ShutdownEventConfiguration) AWSCloudFormationType() string { - return "AWS::OpsWorks::Layer.ShutdownEventConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_ShutdownEventConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksLayer_ShutdownEventConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_ShutdownEventConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksLayer_ShutdownEventConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_ShutdownEventConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksLayer_ShutdownEventConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-opsworks-stack_chefconfiguration.go b/cloudformation/resources/aws-opsworks-stack_chefconfiguration.go deleted file mode 100644 index 6f6ba91845..0000000000 --- a/cloudformation/resources/aws-opsworks-stack_chefconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSOpsWorksStack_ChefConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Stack.ChefConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html -type AWSOpsWorksStack_ChefConfiguration struct { - - // BerkshelfVersion AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion - BerkshelfVersion string `json:"BerkshelfVersion,omitempty"` - - // ManageBerkshelf AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion - ManageBerkshelf bool `json:"ManageBerkshelf,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksStack_ChefConfiguration) AWSCloudFormationType() string { - return "AWS::OpsWorks::Stack.ChefConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_ChefConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_ChefConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_ChefConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_ChefConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_ChefConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_ChefConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-opsworks-stack_stackconfigurationmanager.go b/cloudformation/resources/aws-opsworks-stack_stackconfigurationmanager.go deleted file mode 100644 index 97190c517f..0000000000 --- a/cloudformation/resources/aws-opsworks-stack_stackconfigurationmanager.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSOpsWorksStack_StackConfigurationManager AWS CloudFormation Resource (AWS::OpsWorks::Stack.StackConfigurationManager) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html -type AWSOpsWorksStack_StackConfigurationManager struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-name - Name string `json:"Name,omitempty"` - - // Version AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksStack_StackConfigurationManager) AWSCloudFormationType() string { - return "AWS::OpsWorks::Stack.StackConfigurationManager" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_StackConfigurationManager) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksStack_StackConfigurationManager) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_StackConfigurationManager) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksStack_StackConfigurationManager) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_StackConfigurationManager) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksStack_StackConfigurationManager) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-opsworkscm-server_engineattribute.go b/cloudformation/resources/aws-opsworkscm-server_engineattribute.go deleted file mode 100644 index 8d65ef700c..0000000000 --- a/cloudformation/resources/aws-opsworkscm-server_engineattribute.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSOpsWorksCMServer_EngineAttribute AWS CloudFormation Resource (AWS::OpsWorksCM::Server.EngineAttribute) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html -type AWSOpsWorksCMServer_EngineAttribute struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html#cfn-opsworkscm-server-engineattribute-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html#cfn-opsworkscm-server-engineattribute-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksCMServer_EngineAttribute) AWSCloudFormationType() string { - return "AWS::OpsWorksCM::Server.EngineAttribute" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksCMServer_EngineAttribute) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSOpsWorksCMServer_EngineAttribute) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksCMServer_EngineAttribute) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSOpsWorksCMServer_EngineAttribute) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksCMServer_EngineAttribute) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSOpsWorksCMServer_EngineAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-applicationsettings_campaignhook.go b/cloudformation/resources/aws-pinpoint-applicationsettings_campaignhook.go deleted file mode 100644 index 73ef04d6d5..0000000000 --- a/cloudformation/resources/aws-pinpoint-applicationsettings_campaignhook.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointApplicationSettings_CampaignHook AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings.CampaignHook) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html -type AWSPinpointApplicationSettings_CampaignHook struct { - - // LambdaFunctionName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-lambdafunctionname - LambdaFunctionName string `json:"LambdaFunctionName,omitempty"` - - // Mode AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-mode - Mode string `json:"Mode,omitempty"` - - // WebUrl AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-weburl - WebUrl string `json:"WebUrl,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointApplicationSettings_CampaignHook) AWSCloudFormationType() string { - return "AWS::Pinpoint::ApplicationSettings.CampaignHook" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApplicationSettings_CampaignHook) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApplicationSettings_CampaignHook) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApplicationSettings_CampaignHook) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApplicationSettings_CampaignHook) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApplicationSettings_CampaignHook) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApplicationSettings_CampaignHook) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-applicationsettings_quiettime.go b/cloudformation/resources/aws-pinpoint-applicationsettings_quiettime.go deleted file mode 100644 index 8753ff675a..0000000000 --- a/cloudformation/resources/aws-pinpoint-applicationsettings_quiettime.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointApplicationSettings_QuietTime AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings.QuietTime) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html -type AWSPinpointApplicationSettings_QuietTime struct { - - // End AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html#cfn-pinpoint-applicationsettings-quiettime-end - End string `json:"End,omitempty"` - - // Start AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html#cfn-pinpoint-applicationsettings-quiettime-start - Start string `json:"Start,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointApplicationSettings_QuietTime) AWSCloudFormationType() string { - return "AWS::Pinpoint::ApplicationSettings.QuietTime" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApplicationSettings_QuietTime) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointApplicationSettings_QuietTime) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApplicationSettings_QuietTime) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointApplicationSettings_QuietTime) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApplicationSettings_QuietTime) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointApplicationSettings_QuietTime) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-campaign_attributedimension.go b/cloudformation/resources/aws-pinpoint-campaign_attributedimension.go deleted file mode 100644 index 1acd914027..0000000000 --- a/cloudformation/resources/aws-pinpoint-campaign_attributedimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointCampaign_AttributeDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.AttributeDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html -type AWSPinpointCampaign_AttributeDimension struct { - - // AttributeType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html#cfn-pinpoint-campaign-attributedimension-attributetype - AttributeType string `json:"AttributeType,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html#cfn-pinpoint-campaign-attributedimension-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_AttributeDimension) AWSCloudFormationType() string { - return "AWS::Pinpoint::Campaign.AttributeDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_AttributeDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_AttributeDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_AttributeDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_AttributeDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_AttributeDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_AttributeDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-campaign_campaigneventfilter.go b/cloudformation/resources/aws-pinpoint-campaign_campaigneventfilter.go deleted file mode 100644 index 87b7cd4c1e..0000000000 --- a/cloudformation/resources/aws-pinpoint-campaign_campaigneventfilter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointCampaign_CampaignEventFilter AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignEventFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html -type AWSPinpointCampaign_CampaignEventFilter struct { - - // Dimensions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html#cfn-pinpoint-campaign-campaigneventfilter-dimensions - Dimensions *AWSPinpointCampaign_EventDimensions `json:"Dimensions,omitempty"` - - // FilterType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html#cfn-pinpoint-campaign-campaigneventfilter-filtertype - FilterType string `json:"FilterType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_CampaignEventFilter) AWSCloudFormationType() string { - return "AWS::Pinpoint::Campaign.CampaignEventFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_CampaignEventFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_CampaignEventFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_CampaignEventFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_CampaignEventFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_CampaignEventFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_CampaignEventFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-campaign_eventdimensions.go b/cloudformation/resources/aws-pinpoint-campaign_eventdimensions.go deleted file mode 100644 index 7e88489ea1..0000000000 --- a/cloudformation/resources/aws-pinpoint-campaign_eventdimensions.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointCampaign_EventDimensions AWS CloudFormation Resource (AWS::Pinpoint::Campaign.EventDimensions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html -type AWSPinpointCampaign_EventDimensions struct { - - // Attributes AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-attributes - Attributes interface{} `json:"Attributes,omitempty"` - - // EventType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-eventtype - EventType *AWSPinpointCampaign_SetDimension `json:"EventType,omitempty"` - - // Metrics AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-metrics - Metrics interface{} `json:"Metrics,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_EventDimensions) AWSCloudFormationType() string { - return "AWS::Pinpoint::Campaign.EventDimensions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_EventDimensions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_EventDimensions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_EventDimensions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_EventDimensions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_EventDimensions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_EventDimensions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-campaign_messageconfiguration.go b/cloudformation/resources/aws-pinpoint-campaign_messageconfiguration.go deleted file mode 100644 index a7a50b0b45..0000000000 --- a/cloudformation/resources/aws-pinpoint-campaign_messageconfiguration.go +++ /dev/null @@ -1,93 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointCampaign_MessageConfiguration AWS CloudFormation Resource (AWS::Pinpoint::Campaign.MessageConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html -type AWSPinpointCampaign_MessageConfiguration struct { - - // ADMMessage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-admmessage - ADMMessage *AWSPinpointCampaign_Message `json:"ADMMessage,omitempty"` - - // APNSMessage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-apnsmessage - APNSMessage *AWSPinpointCampaign_Message `json:"APNSMessage,omitempty"` - - // BaiduMessage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-baidumessage - BaiduMessage *AWSPinpointCampaign_Message `json:"BaiduMessage,omitempty"` - - // DefaultMessage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-defaultmessage - DefaultMessage *AWSPinpointCampaign_Message `json:"DefaultMessage,omitempty"` - - // EmailMessage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-emailmessage - EmailMessage *AWSPinpointCampaign_CampaignEmailMessage `json:"EmailMessage,omitempty"` - - // GCMMessage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-gcmmessage - GCMMessage *AWSPinpointCampaign_Message `json:"GCMMessage,omitempty"` - - // SMSMessage AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-smsmessage - SMSMessage *AWSPinpointCampaign_CampaignSmsMessage `json:"SMSMessage,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_MessageConfiguration) AWSCloudFormationType() string { - return "AWS::Pinpoint::Campaign.MessageConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_MessageConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_MessageConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_MessageConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_MessageConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_MessageConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_MessageConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-campaign_metricdimension.go b/cloudformation/resources/aws-pinpoint-campaign_metricdimension.go deleted file mode 100644 index 49636e7a50..0000000000 --- a/cloudformation/resources/aws-pinpoint-campaign_metricdimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointCampaign_MetricDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.MetricDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html -type AWSPinpointCampaign_MetricDimension struct { - - // ComparisonOperator AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html#cfn-pinpoint-campaign-metricdimension-comparisonoperator - ComparisonOperator string `json:"ComparisonOperator,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html#cfn-pinpoint-campaign-metricdimension-value - Value float64 `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_MetricDimension) AWSCloudFormationType() string { - return "AWS::Pinpoint::Campaign.MetricDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_MetricDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_MetricDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_MetricDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_MetricDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_MetricDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-campaign_quiettime.go b/cloudformation/resources/aws-pinpoint-campaign_quiettime.go deleted file mode 100644 index 5a45b1d736..0000000000 --- a/cloudformation/resources/aws-pinpoint-campaign_quiettime.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointCampaign_QuietTime AWS CloudFormation Resource (AWS::Pinpoint::Campaign.QuietTime) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html -type AWSPinpointCampaign_QuietTime struct { - - // End AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html#cfn-pinpoint-campaign-schedule-quiettime-end - End string `json:"End,omitempty"` - - // Start AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html#cfn-pinpoint-campaign-schedule-quiettime-start - Start string `json:"Start,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_QuietTime) AWSCloudFormationType() string { - return "AWS::Pinpoint::Campaign.QuietTime" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_QuietTime) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_QuietTime) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_QuietTime) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_QuietTime) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_QuietTime) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_QuietTime) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-campaign_setdimension.go b/cloudformation/resources/aws-pinpoint-campaign_setdimension.go deleted file mode 100644 index 000771049b..0000000000 --- a/cloudformation/resources/aws-pinpoint-campaign_setdimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointCampaign_SetDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.SetDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html -type AWSPinpointCampaign_SetDimension struct { - - // DimensionType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html#cfn-pinpoint-campaign-setdimension-dimensiontype - DimensionType string `json:"DimensionType,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html#cfn-pinpoint-campaign-setdimension-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_SetDimension) AWSCloudFormationType() string { - return "AWS::Pinpoint::Campaign.SetDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_SetDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointCampaign_SetDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_SetDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointCampaign_SetDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_SetDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointCampaign_SetDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-segment_attributedimension.go b/cloudformation/resources/aws-pinpoint-segment_attributedimension.go deleted file mode 100644 index 9e8325cc2b..0000000000 --- a/cloudformation/resources/aws-pinpoint-segment_attributedimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointSegment_AttributeDimension AWS CloudFormation Resource (AWS::Pinpoint::Segment.AttributeDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html -type AWSPinpointSegment_AttributeDimension struct { - - // AttributeType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html#cfn-pinpoint-segment-attributedimension-attributetype - AttributeType string `json:"AttributeType,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html#cfn-pinpoint-segment-attributedimension-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_AttributeDimension) AWSCloudFormationType() string { - return "AWS::Pinpoint::Segment.AttributeDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_AttributeDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_AttributeDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_AttributeDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_AttributeDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_AttributeDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_AttributeDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-segment_behavior.go b/cloudformation/resources/aws-pinpoint-segment_behavior.go deleted file mode 100644 index e7e8803c0d..0000000000 --- a/cloudformation/resources/aws-pinpoint-segment_behavior.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointSegment_Behavior AWS CloudFormation Resource (AWS::Pinpoint::Segment.Behavior) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior.html -type AWSPinpointSegment_Behavior struct { - - // Recency AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior.html#cfn-pinpoint-segment-segmentdimensions-behavior-recency - Recency *AWSPinpointSegment_Recency `json:"Recency,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Behavior) AWSCloudFormationType() string { - return "AWS::Pinpoint::Segment.Behavior" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Behavior) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Behavior) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Behavior) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Behavior) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Behavior) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Behavior) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-segment_demographic.go b/cloudformation/resources/aws-pinpoint-segment_demographic.go deleted file mode 100644 index fe07761939..0000000000 --- a/cloudformation/resources/aws-pinpoint-segment_demographic.go +++ /dev/null @@ -1,88 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointSegment_Demographic AWS CloudFormation Resource (AWS::Pinpoint::Segment.Demographic) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html -type AWSPinpointSegment_Demographic struct { - - // AppVersion AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-appversion - AppVersion *AWSPinpointSegment_SetDimension `json:"AppVersion,omitempty"` - - // Channel AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-channel - Channel *AWSPinpointSegment_SetDimension `json:"Channel,omitempty"` - - // DeviceType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-devicetype - DeviceType *AWSPinpointSegment_SetDimension `json:"DeviceType,omitempty"` - - // Make AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-make - Make *AWSPinpointSegment_SetDimension `json:"Make,omitempty"` - - // Model AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-model - Model *AWSPinpointSegment_SetDimension `json:"Model,omitempty"` - - // Platform AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-platform - Platform *AWSPinpointSegment_SetDimension `json:"Platform,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Demographic) AWSCloudFormationType() string { - return "AWS::Pinpoint::Segment.Demographic" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Demographic) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Demographic) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Demographic) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Demographic) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Demographic) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Demographic) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-segment_gpspoint.go b/cloudformation/resources/aws-pinpoint-segment_gpspoint.go deleted file mode 100644 index a32c7ede55..0000000000 --- a/cloudformation/resources/aws-pinpoint-segment_gpspoint.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointSegment_GPSPoint AWS CloudFormation Resource (AWS::Pinpoint::Segment.GPSPoint) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html -type AWSPinpointSegment_GPSPoint struct { - - // Coordinates AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates - Coordinates *AWSPinpointSegment_Coordinates `json:"Coordinates,omitempty"` - - // RangeInKilometers AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-rangeinkilometers - RangeInKilometers float64 `json:"RangeInKilometers"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_GPSPoint) AWSCloudFormationType() string { - return "AWS::Pinpoint::Segment.GPSPoint" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_GPSPoint) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_GPSPoint) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_GPSPoint) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_GPSPoint) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_GPSPoint) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_GPSPoint) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-segment_location.go b/cloudformation/resources/aws-pinpoint-segment_location.go deleted file mode 100644 index 032789d2d7..0000000000 --- a/cloudformation/resources/aws-pinpoint-segment_location.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointSegment_Location AWS CloudFormation Resource (AWS::Pinpoint::Segment.Location) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html -type AWSPinpointSegment_Location struct { - - // Country AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html#cfn-pinpoint-segment-segmentdimensions-location-country - Country *AWSPinpointSegment_SetDimension `json:"Country,omitempty"` - - // GPSPoint AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint - GPSPoint *AWSPinpointSegment_GPSPoint `json:"GPSPoint,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Location) AWSCloudFormationType() string { - return "AWS::Pinpoint::Segment.Location" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Location) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_Location) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Location) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_Location) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Location) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_Location) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-segment_segmentgroups.go b/cloudformation/resources/aws-pinpoint-segment_segmentgroups.go deleted file mode 100644 index 31cb3dba0c..0000000000 --- a/cloudformation/resources/aws-pinpoint-segment_segmentgroups.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointSegment_SegmentGroups AWS CloudFormation Resource (AWS::Pinpoint::Segment.SegmentGroups) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html -type AWSPinpointSegment_SegmentGroups struct { - - // Groups AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html#cfn-pinpoint-segment-segmentgroups-groups - Groups []AWSPinpointSegment_Groups `json:"Groups,omitempty"` - - // Include AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html#cfn-pinpoint-segment-segmentgroups-include - Include string `json:"Include,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_SegmentGroups) AWSCloudFormationType() string { - return "AWS::Pinpoint::Segment.SegmentGroups" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_SegmentGroups) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_SegmentGroups) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_SegmentGroups) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_SegmentGroups) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_SegmentGroups) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_SegmentGroups) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-segment_setdimension.go b/cloudformation/resources/aws-pinpoint-segment_setdimension.go deleted file mode 100644 index fa4e471949..0000000000 --- a/cloudformation/resources/aws-pinpoint-segment_setdimension.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointSegment_SetDimension AWS CloudFormation Resource (AWS::Pinpoint::Segment.SetDimension) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html -type AWSPinpointSegment_SetDimension struct { - - // DimensionType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html#cfn-pinpoint-segment-setdimension-dimensiontype - DimensionType string `json:"DimensionType,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html#cfn-pinpoint-segment-setdimension-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_SetDimension) AWSCloudFormationType() string { - return "AWS::Pinpoint::Segment.SetDimension" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_SetDimension) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_SetDimension) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_SetDimension) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_SetDimension) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_SetDimension) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_SetDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpoint-segment_sourcesegments.go b/cloudformation/resources/aws-pinpoint-segment_sourcesegments.go deleted file mode 100644 index e75bb4b504..0000000000 --- a/cloudformation/resources/aws-pinpoint-segment_sourcesegments.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointSegment_SourceSegments AWS CloudFormation Resource (AWS::Pinpoint::Segment.SourceSegments) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html -type AWSPinpointSegment_SourceSegments struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments-id - Id string `json:"Id,omitempty"` - - // Version AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments-version - Version int `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_SourceSegments) AWSCloudFormationType() string { - return "AWS::Pinpoint::Segment.SourceSegments" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_SourceSegments) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointSegment_SourceSegments) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_SourceSegments) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointSegment_SourceSegments) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_SourceSegments) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointSegment_SourceSegments) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationset.go b/cloudformation/resources/aws-pinpointemail-configurationset.go deleted file mode 100644 index b87c3e75a7..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationset.go +++ /dev/null @@ -1,148 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSPinpointEmailConfigurationSet AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html -type AWSPinpointEmailConfigurationSet struct { - - // DeliveryOptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-deliveryoptions - DeliveryOptions *AWSPinpointEmailConfigurationSet_DeliveryOptions `json:"DeliveryOptions,omitempty"` - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-name - Name string `json:"Name,omitempty"` - - // ReputationOptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-reputationoptions - ReputationOptions *AWSPinpointEmailConfigurationSet_ReputationOptions `json:"ReputationOptions,omitempty"` - - // SendingOptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-sendingoptions - SendingOptions *AWSPinpointEmailConfigurationSet_SendingOptions `json:"SendingOptions,omitempty"` - - // Tags AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-tags - Tags []AWSPinpointEmailConfigurationSet_Tags `json:"Tags,omitempty"` - - // TrackingOptions AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-trackingoptions - TrackingOptions *AWSPinpointEmailConfigurationSet_TrackingOptions `json:"TrackingOptions,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSet" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointEmailConfigurationSet) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointEmailConfigurationSet - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointEmailConfigurationSet) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointEmailConfigurationSet - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSPinpointEmailConfigurationSet(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_deliveryoptions.go b/cloudformation/resources/aws-pinpointemail-configurationset_deliveryoptions.go deleted file mode 100644 index 484e864ef1..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationset_deliveryoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSet_DeliveryOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.DeliveryOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-deliveryoptions.html -type AWSPinpointEmailConfigurationSet_DeliveryOptions struct { - - // SendingPoolName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-deliveryoptions.html#cfn-pinpointemail-configurationset-deliveryoptions-sendingpoolname - SendingPoolName string `json:"SendingPoolName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_DeliveryOptions) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSet.DeliveryOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_DeliveryOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_DeliveryOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_DeliveryOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_DeliveryOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_DeliveryOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_DeliveryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_reputationoptions.go b/cloudformation/resources/aws-pinpointemail-configurationset_reputationoptions.go deleted file mode 100644 index 6312621f41..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationset_reputationoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSet_ReputationOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.ReputationOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-reputationoptions.html -type AWSPinpointEmailConfigurationSet_ReputationOptions struct { - - // ReputationMetricsEnabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-reputationoptions.html#cfn-pinpointemail-configurationset-reputationoptions-reputationmetricsenabled - ReputationMetricsEnabled bool `json:"ReputationMetricsEnabled,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_ReputationOptions) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSet.ReputationOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_ReputationOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_ReputationOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_ReputationOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_ReputationOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_ReputationOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_ReputationOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_sendingoptions.go b/cloudformation/resources/aws-pinpointemail-configurationset_sendingoptions.go deleted file mode 100644 index 9f0bb533e8..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationset_sendingoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSet_SendingOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.SendingOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-sendingoptions.html -type AWSPinpointEmailConfigurationSet_SendingOptions struct { - - // SendingEnabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-sendingoptions.html#cfn-pinpointemail-configurationset-sendingoptions-sendingenabled - SendingEnabled bool `json:"SendingEnabled,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_SendingOptions) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSet.SendingOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_SendingOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_SendingOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_SendingOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_SendingOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_SendingOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_SendingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_tags.go b/cloudformation/resources/aws-pinpointemail-configurationset_tags.go deleted file mode 100644 index 06a703eb42..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationset_tags.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSet_Tags AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.Tags) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html -type AWSPinpointEmailConfigurationSet_Tags struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html#cfn-pinpointemail-configurationset-tags-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html#cfn-pinpointemail-configurationset-tags-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_Tags) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSet.Tags" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_Tags) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_Tags) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_Tags) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_Tags) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_Tags) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_trackingoptions.go b/cloudformation/resources/aws-pinpointemail-configurationset_trackingoptions.go deleted file mode 100644 index 6a60baf529..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationset_trackingoptions.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSet_TrackingOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.TrackingOptions) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-trackingoptions.html -type AWSPinpointEmailConfigurationSet_TrackingOptions struct { - - // CustomRedirectDomain AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-trackingoptions.html#cfn-pinpointemail-configurationset-trackingoptions-customredirectdomain - CustomRedirectDomain string `json:"CustomRedirectDomain,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_TrackingOptions) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSet.TrackingOptions" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_TrackingOptions) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSet_TrackingOptions) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_TrackingOptions) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSet_TrackingOptions) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_TrackingOptions) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSet_TrackingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination.go b/cloudformation/resources/aws-pinpointemail-configurationseteventdestination.go deleted file mode 100644 index 6dc3c5008c..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination.go +++ /dev/null @@ -1,133 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSPinpointEmailConfigurationSetEventDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html -type AWSPinpointEmailConfigurationSetEventDestination struct { - - // ConfigurationSetName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-configurationsetname - ConfigurationSetName string `json:"ConfigurationSetName,omitempty"` - - // EventDestination AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination - EventDestination *AWSPinpointEmailConfigurationSetEventDestination_EventDestination `json:"EventDestination,omitempty"` - - // EventDestinationName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestinationname - EventDestinationName string `json:"EventDestinationName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSetEventDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSPinpointEmailConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointEmailConfigurationSetEventDestination - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSPinpointEmailConfigurationSetEventDestination) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointEmailConfigurationSetEventDestination - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSPinpointEmailConfigurationSetEventDestination(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go b/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go deleted file mode 100644 index 8ec6368f4c..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.CloudWatchDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-cloudwatchdestination.html -type AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination struct { - - // DimensionConfigurations AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-cloudwatchdestination.html#cfn-pinpointemail-configurationseteventdestination-cloudwatchdestination-dimensionconfigurations - DimensionConfigurations []AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration `json:"DimensionConfigurations,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSetEventDestination.CloudWatchDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go b/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go deleted file mode 100644 index c2754c7a1a..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.DimensionConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html -type AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration struct { - - // DefaultDimensionValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-defaultdimensionvalue - DefaultDimensionValue string `json:"DefaultDimensionValue,omitempty"` - - // DimensionName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-dimensionname - DimensionName string `json:"DimensionName,omitempty"` - - // DimensionValueSource AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-dimensionvaluesource - DimensionValueSource string `json:"DimensionValueSource,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSetEventDestination.DimensionConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_eventdestination.go b/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_eventdestination.go deleted file mode 100644 index 6f6c761f45..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_eventdestination.go +++ /dev/null @@ -1,88 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSetEventDestination_EventDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.EventDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html -type AWSPinpointEmailConfigurationSetEventDestination_EventDestination struct { - - // CloudWatchDestination AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-cloudwatchdestination - CloudWatchDestination *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination `json:"CloudWatchDestination,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-enabled - Enabled bool `json:"Enabled,omitempty"` - - // KinesisFirehoseDestination AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-kinesisfirehosedestination - KinesisFirehoseDestination *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination `json:"KinesisFirehoseDestination,omitempty"` - - // MatchingEventTypes AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-matchingeventtypes - MatchingEventTypes []string `json:"MatchingEventTypes,omitempty"` - - // PinpointDestination AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-pinpointdestination - PinpointDestination *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination `json:"PinpointDestination,omitempty"` - - // SnsDestination AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-snsdestination - SnsDestination *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination `json:"SnsDestination,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSetEventDestination.EventDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go b/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go deleted file mode 100644 index 931cf97b13..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.KinesisFirehoseDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html -type AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination struct { - - // DeliveryStreamArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html#cfn-pinpointemail-configurationseteventdestination-kinesisfirehosedestination-deliverystreamarn - DeliveryStreamArn string `json:"DeliveryStreamArn,omitempty"` - - // IamRoleArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html#cfn-pinpointemail-configurationseteventdestination-kinesisfirehosedestination-iamrolearn - IamRoleArn string `json:"IamRoleArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSetEventDestination.KinesisFirehoseDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go b/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go deleted file mode 100644 index 606d820cc1..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.PinpointDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-pinpointdestination.html -type AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination struct { - - // ApplicationArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-pinpointdestination.html#cfn-pinpointemail-configurationseteventdestination-pinpointdestination-applicationarn - ApplicationArn string `json:"ApplicationArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSetEventDestination.PinpointDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_snsdestination.go b/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_snsdestination.go deleted file mode 100644 index 482c2b1f22..0000000000 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_snsdestination.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailConfigurationSetEventDestination_SnsDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.SnsDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-snsdestination.html -type AWSPinpointEmailConfigurationSetEventDestination_SnsDestination struct { - - // TopicArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-snsdestination.html#cfn-pinpointemail-configurationseteventdestination-snsdestination-topicarn - TopicArn string `json:"TopicArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) AWSCloudFormationType() string { - return "AWS::PinpointEmail::ConfigurationSetEventDestination.SnsDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-dedicatedippool_tags.go b/cloudformation/resources/aws-pinpointemail-dedicatedippool_tags.go deleted file mode 100644 index 3a1cb157f9..0000000000 --- a/cloudformation/resources/aws-pinpointemail-dedicatedippool_tags.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailDedicatedIpPool_Tags AWS CloudFormation Resource (AWS::PinpointEmail::DedicatedIpPool.Tags) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html -type AWSPinpointEmailDedicatedIpPool_Tags struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html#cfn-pinpointemail-dedicatedippool-tags-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html#cfn-pinpointemail-dedicatedippool-tags-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailDedicatedIpPool_Tags) AWSCloudFormationType() string { - return "AWS::PinpointEmail::DedicatedIpPool.Tags" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailDedicatedIpPool_Tags) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailDedicatedIpPool_Tags) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailDedicatedIpPool_Tags) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailDedicatedIpPool_Tags) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailDedicatedIpPool_Tags) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailDedicatedIpPool_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-identity_mailfromattributes.go b/cloudformation/resources/aws-pinpointemail-identity_mailfromattributes.go deleted file mode 100644 index 55a763030e..0000000000 --- a/cloudformation/resources/aws-pinpointemail-identity_mailfromattributes.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailIdentity_MailFromAttributes AWS CloudFormation Resource (AWS::PinpointEmail::Identity.MailFromAttributes) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html -type AWSPinpointEmailIdentity_MailFromAttributes struct { - - // BehaviorOnMxFailure AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html#cfn-pinpointemail-identity-mailfromattributes-behavioronmxfailure - BehaviorOnMxFailure string `json:"BehaviorOnMxFailure,omitempty"` - - // MailFromDomain AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html#cfn-pinpointemail-identity-mailfromattributes-mailfromdomain - MailFromDomain string `json:"MailFromDomain,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailIdentity_MailFromAttributes) AWSCloudFormationType() string { - return "AWS::PinpointEmail::Identity.MailFromAttributes" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailIdentity_MailFromAttributes) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailIdentity_MailFromAttributes) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailIdentity_MailFromAttributes) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailIdentity_MailFromAttributes) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailIdentity_MailFromAttributes) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailIdentity_MailFromAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-pinpointemail-identity_tags.go b/cloudformation/resources/aws-pinpointemail-identity_tags.go deleted file mode 100644 index 14e0cee3d3..0000000000 --- a/cloudformation/resources/aws-pinpointemail-identity_tags.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSPinpointEmailIdentity_Tags AWS CloudFormation Resource (AWS::PinpointEmail::Identity.Tags) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html -type AWSPinpointEmailIdentity_Tags struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html#cfn-pinpointemail-identity-tags-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html#cfn-pinpointemail-identity-tags-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailIdentity_Tags) AWSCloudFormationType() string { - return "AWS::PinpointEmail::Identity.Tags" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailIdentity_Tags) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSPinpointEmailIdentity_Tags) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailIdentity_Tags) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSPinpointEmailIdentity_Tags) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailIdentity_Tags) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSPinpointEmailIdentity_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-rds-dbinstance_processorfeature.go b/cloudformation/resources/aws-rds-dbinstance_processorfeature.go deleted file mode 100644 index b197243ce6..0000000000 --- a/cloudformation/resources/aws-rds-dbinstance_processorfeature.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRDSDBInstance_ProcessorFeature AWS CloudFormation Resource (AWS::RDS::DBInstance.ProcessorFeature) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html -type AWSRDSDBInstance_ProcessorFeature struct { - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html#cfn-rds-dbinstance-processorfeature-name - Name string `json:"Name,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html#cfn-rds-dbinstance-processorfeature-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBInstance_ProcessorFeature) AWSCloudFormationType() string { - return "AWS::RDS::DBInstance.ProcessorFeature" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBInstance_ProcessorFeature) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRDSDBInstance_ProcessorFeature) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBInstance_ProcessorFeature) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRDSDBInstance_ProcessorFeature) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBInstance_ProcessorFeature) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRDSDBInstance_ProcessorFeature) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-redshift-cluster_loggingproperties.go b/cloudformation/resources/aws-redshift-cluster_loggingproperties.go deleted file mode 100644 index 412f78f08a..0000000000 --- a/cloudformation/resources/aws-redshift-cluster_loggingproperties.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRedshiftCluster_LoggingProperties AWS CloudFormation Resource (AWS::Redshift::Cluster.LoggingProperties) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html -type AWSRedshiftCluster_LoggingProperties struct { - - // BucketName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-bucketname - BucketName string `json:"BucketName,omitempty"` - - // S3KeyPrefix AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-s3keyprefix - S3KeyPrefix string `json:"S3KeyPrefix,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftCluster_LoggingProperties) AWSCloudFormationType() string { - return "AWS::Redshift::Cluster.LoggingProperties" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftCluster_LoggingProperties) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftCluster_LoggingProperties) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftCluster_LoggingProperties) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftCluster_LoggingProperties) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftCluster_LoggingProperties) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftCluster_LoggingProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-redshift-clusterparametergroup_parameter.go b/cloudformation/resources/aws-redshift-clusterparametergroup_parameter.go deleted file mode 100644 index 77df63fc21..0000000000 --- a/cloudformation/resources/aws-redshift-clusterparametergroup_parameter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRedshiftClusterParameterGroup_Parameter AWS CloudFormation Resource (AWS::Redshift::ClusterParameterGroup.Parameter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html -type AWSRedshiftClusterParameterGroup_Parameter struct { - - // ParameterName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametername - ParameterName string `json:"ParameterName,omitempty"` - - // ParameterValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametervalue - ParameterValue string `json:"ParameterValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftClusterParameterGroup_Parameter) AWSCloudFormationType() string { - return "AWS::Redshift::ClusterParameterGroup.Parameter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterParameterGroup_Parameter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRedshiftClusterParameterGroup_Parameter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterParameterGroup_Parameter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRedshiftClusterParameterGroup_Parameter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterParameterGroup_Parameter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRedshiftClusterParameterGroup_Parameter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-robomaker-robotapplication_robotsoftwaresuite.go b/cloudformation/resources/aws-robomaker-robotapplication_robotsoftwaresuite.go deleted file mode 100644 index e664828bc4..0000000000 --- a/cloudformation/resources/aws-robomaker-robotapplication_robotsoftwaresuite.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoboMakerRobotApplication_RobotSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::RobotApplication.RobotSoftwareSuite) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html -type AWSRoboMakerRobotApplication_RobotSoftwareSuite struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html#cfn-robomaker-robotapplication-robotsoftwaresuite-name - Name string `json:"Name,omitempty"` - - // Version AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html#cfn-robomaker-robotapplication-robotsoftwaresuite-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerRobotApplication_RobotSoftwareSuite) AWSCloudFormationType() string { - return "AWS::RoboMaker::RobotApplication.RobotSoftwareSuite" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobotApplication_RobotSoftwareSuite) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobotApplication_RobotSoftwareSuite) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobotApplication_RobotSoftwareSuite) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobotApplication_RobotSoftwareSuite) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobotApplication_RobotSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobotApplication_RobotSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-robomaker-robotapplication_sourceconfig.go b/cloudformation/resources/aws-robomaker-robotapplication_sourceconfig.go deleted file mode 100644 index 0144cebc2d..0000000000 --- a/cloudformation/resources/aws-robomaker-robotapplication_sourceconfig.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoboMakerRobotApplication_SourceConfig AWS CloudFormation Resource (AWS::RoboMaker::RobotApplication.SourceConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html -type AWSRoboMakerRobotApplication_SourceConfig struct { - - // Architecture AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-architecture - Architecture string `json:"Architecture,omitempty"` - - // S3Bucket AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-s3bucket - S3Bucket string `json:"S3Bucket,omitempty"` - - // S3Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-s3key - S3Key string `json:"S3Key,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerRobotApplication_SourceConfig) AWSCloudFormationType() string { - return "AWS::RoboMaker::RobotApplication.SourceConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobotApplication_SourceConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobotApplication_SourceConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobotApplication_SourceConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobotApplication_SourceConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobotApplication_SourceConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobotApplication_SourceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-robomaker-simulationapplication_renderingengine.go b/cloudformation/resources/aws-robomaker-simulationapplication_renderingengine.go deleted file mode 100644 index 236d6d3869..0000000000 --- a/cloudformation/resources/aws-robomaker-simulationapplication_renderingengine.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoboMakerSimulationApplication_RenderingEngine AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.RenderingEngine) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html -type AWSRoboMakerSimulationApplication_RenderingEngine struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html#cfn-robomaker-simulationapplication-renderingengine-name - Name string `json:"Name,omitempty"` - - // Version AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html#cfn-robomaker-simulationapplication-renderingengine-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication_RenderingEngine) AWSCloudFormationType() string { - return "AWS::RoboMaker::SimulationApplication.RenderingEngine" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication_RenderingEngine) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication_RenderingEngine) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication_RenderingEngine) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication_RenderingEngine) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication_RenderingEngine) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication_RenderingEngine) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-robomaker-simulationapplication_robotsoftwaresuite.go b/cloudformation/resources/aws-robomaker-simulationapplication_robotsoftwaresuite.go deleted file mode 100644 index 452ad7e007..0000000000 --- a/cloudformation/resources/aws-robomaker-simulationapplication_robotsoftwaresuite.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoboMakerSimulationApplication_RobotSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.RobotSoftwareSuite) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html -type AWSRoboMakerSimulationApplication_RobotSoftwareSuite struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html#cfn-robomaker-simulationapplication-robotsoftwaresuite-name - Name string `json:"Name,omitempty"` - - // Version AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html#cfn-robomaker-simulationapplication-robotsoftwaresuite-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) AWSCloudFormationType() string { - return "AWS::RoboMaker::SimulationApplication.RobotSoftwareSuite" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-robomaker-simulationapplication_simulationsoftwaresuite.go b/cloudformation/resources/aws-robomaker-simulationapplication_simulationsoftwaresuite.go deleted file mode 100644 index c1874477ed..0000000000 --- a/cloudformation/resources/aws-robomaker-simulationapplication_simulationsoftwaresuite.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoboMakerSimulationApplication_SimulationSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.SimulationSoftwareSuite) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html -type AWSRoboMakerSimulationApplication_SimulationSoftwareSuite struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite-name - Name string `json:"Name,omitempty"` - - // Version AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite-version - Version string `json:"Version,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) AWSCloudFormationType() string { - return "AWS::RoboMaker::SimulationApplication.SimulationSoftwareSuite" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-robomaker-simulationapplication_sourceconfig.go b/cloudformation/resources/aws-robomaker-simulationapplication_sourceconfig.go deleted file mode 100644 index e4a31b6e8c..0000000000 --- a/cloudformation/resources/aws-robomaker-simulationapplication_sourceconfig.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoboMakerSimulationApplication_SourceConfig AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.SourceConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html -type AWSRoboMakerSimulationApplication_SourceConfig struct { - - // Architecture AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-architecture - Architecture string `json:"Architecture,omitempty"` - - // S3Bucket AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-s3bucket - S3Bucket string `json:"S3Bucket,omitempty"` - - // S3Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-s3key - S3Key string `json:"S3Key,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication_SourceConfig) AWSCloudFormationType() string { - return "AWS::RoboMaker::SimulationApplication.SourceConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication_SourceConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication_SourceConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication_SourceConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication_SourceConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication_SourceConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication_SourceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-route53-healthcheck_alarmidentifier.go b/cloudformation/resources/aws-route53-healthcheck_alarmidentifier.go deleted file mode 100644 index b713c8aa8a..0000000000 --- a/cloudformation/resources/aws-route53-healthcheck_alarmidentifier.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoute53HealthCheck_AlarmIdentifier AWS CloudFormation Resource (AWS::Route53::HealthCheck.AlarmIdentifier) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html -type AWSRoute53HealthCheck_AlarmIdentifier struct { - - // Name AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html#cfn-route53-healthcheck-alarmidentifier-name - Name string `json:"Name,omitempty"` - - // Region AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html#cfn-route53-healthcheck-alarmidentifier-region - Region string `json:"Region,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HealthCheck_AlarmIdentifier) AWSCloudFormationType() string { - return "AWS::Route53::HealthCheck.AlarmIdentifier" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HealthCheck_AlarmIdentifier) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HealthCheck_AlarmIdentifier) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HealthCheck_AlarmIdentifier) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HealthCheck_AlarmIdentifier) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HealthCheck_AlarmIdentifier) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HealthCheck_AlarmIdentifier) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-route53-healthcheck_healthchecktag.go b/cloudformation/resources/aws-route53-healthcheck_healthchecktag.go deleted file mode 100644 index 7c4d51f887..0000000000 --- a/cloudformation/resources/aws-route53-healthcheck_healthchecktag.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoute53HealthCheck_HealthCheckTag AWS CloudFormation Resource (AWS::Route53::HealthCheck.HealthCheckTag) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html -type AWSRoute53HealthCheck_HealthCheckTag struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html#cfn-route53-healthchecktags-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html#cfn-route53-healthchecktags-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HealthCheck_HealthCheckTag) AWSCloudFormationType() string { - return "AWS::Route53::HealthCheck.HealthCheckTag" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HealthCheck_HealthCheckTag) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HealthCheck_HealthCheckTag) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HealthCheck_HealthCheckTag) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HealthCheck_HealthCheckTag) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HealthCheck_HealthCheckTag) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HealthCheck_HealthCheckTag) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-route53-hostedzone_hostedzoneconfig.go b/cloudformation/resources/aws-route53-hostedzone_hostedzoneconfig.go deleted file mode 100644 index 78b908a5e6..0000000000 --- a/cloudformation/resources/aws-route53-hostedzone_hostedzoneconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoute53HostedZone_HostedZoneConfig AWS CloudFormation Resource (AWS::Route53::HostedZone.HostedZoneConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html -type AWSRoute53HostedZone_HostedZoneConfig struct { - - // Comment AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html#cfn-route53-hostedzone-hostedzoneconfig-comment - Comment string `json:"Comment,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HostedZone_HostedZoneConfig) AWSCloudFormationType() string { - return "AWS::Route53::HostedZone.HostedZoneConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone_HostedZoneConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone_HostedZoneConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone_HostedZoneConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone_HostedZoneConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone_HostedZoneConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone_HostedZoneConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-route53-hostedzone_hostedzonetag.go b/cloudformation/resources/aws-route53-hostedzone_hostedzonetag.go deleted file mode 100644 index b6a1c84c36..0000000000 --- a/cloudformation/resources/aws-route53-hostedzone_hostedzonetag.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoute53HostedZone_HostedZoneTag AWS CloudFormation Resource (AWS::Route53::HostedZone.HostedZoneTag) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html -type AWSRoute53HostedZone_HostedZoneTag struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html#cfn-route53-hostedzonetags-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html#cfn-route53-hostedzonetags-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HostedZone_HostedZoneTag) AWSCloudFormationType() string { - return "AWS::Route53::HostedZone.HostedZoneTag" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone_HostedZoneTag) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone_HostedZoneTag) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone_HostedZoneTag) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone_HostedZoneTag) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone_HostedZoneTag) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone_HostedZoneTag) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-route53-hostedzone_queryloggingconfig.go b/cloudformation/resources/aws-route53-hostedzone_queryloggingconfig.go deleted file mode 100644 index b0a28de277..0000000000 --- a/cloudformation/resources/aws-route53-hostedzone_queryloggingconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoute53HostedZone_QueryLoggingConfig AWS CloudFormation Resource (AWS::Route53::HostedZone.QueryLoggingConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-queryloggingconfig.html -type AWSRoute53HostedZone_QueryLoggingConfig struct { - - // CloudWatchLogsLogGroupArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-queryloggingconfig.html#cfn-route53-hostedzone-queryloggingconfig-cloudwatchlogsloggrouparn - CloudWatchLogsLogGroupArn string `json:"CloudWatchLogsLogGroupArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HostedZone_QueryLoggingConfig) AWSCloudFormationType() string { - return "AWS::Route53::HostedZone.QueryLoggingConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone_QueryLoggingConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone_QueryLoggingConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone_QueryLoggingConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone_QueryLoggingConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone_QueryLoggingConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone_QueryLoggingConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-route53resolver-resolverendpoint_ipaddressrequest.go b/cloudformation/resources/aws-route53resolver-resolverendpoint_ipaddressrequest.go deleted file mode 100644 index d55f8e147d..0000000000 --- a/cloudformation/resources/aws-route53resolver-resolverendpoint_ipaddressrequest.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoute53ResolverResolverEndpoint_IpAddressRequest AWS CloudFormation Resource (AWS::Route53Resolver::ResolverEndpoint.IpAddressRequest) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html -type AWSRoute53ResolverResolverEndpoint_IpAddressRequest struct { - - // Ip AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html#cfn-route53resolver-resolverendpoint-ipaddressrequest-ip - Ip string `json:"Ip,omitempty"` - - // SubnetId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html#cfn-route53resolver-resolverendpoint-ipaddressrequest-subnetid - SubnetId string `json:"SubnetId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) AWSCloudFormationType() string { - return "AWS::Route53Resolver::ResolverEndpoint.IpAddressRequest" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-route53resolver-resolverrule_targetaddress.go b/cloudformation/resources/aws-route53resolver-resolverrule_targetaddress.go deleted file mode 100644 index 434c55a244..0000000000 --- a/cloudformation/resources/aws-route53resolver-resolverrule_targetaddress.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSRoute53ResolverResolverRule_TargetAddress AWS CloudFormation Resource (AWS::Route53Resolver::ResolverRule.TargetAddress) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html -type AWSRoute53ResolverResolverRule_TargetAddress struct { - - // Ip AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip - Ip string `json:"Ip,omitempty"` - - // Port AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-port - Port string `json:"Port,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53ResolverResolverRule_TargetAddress) AWSCloudFormationType() string { - return "AWS::Route53Resolver::ResolverRule.TargetAddress" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverRule_TargetAddress) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverRule_TargetAddress) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverRule_TargetAddress) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverRule_TargetAddress) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverRule_TargetAddress) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverRule_TargetAddress) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_abortincompletemultipartupload.go b/cloudformation/resources/aws-s3-bucket_abortincompletemultipartupload.go deleted file mode 100644 index d17f14c657..0000000000 --- a/cloudformation/resources/aws-s3-bucket_abortincompletemultipartupload.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_AbortIncompleteMultipartUpload AWS CloudFormation Resource (AWS::S3::Bucket.AbortIncompleteMultipartUpload) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html -type AWSS3Bucket_AbortIncompleteMultipartUpload struct { - - // DaysAfterInitiation AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html#cfn-s3-bucket-abortincompletemultipartupload-daysafterinitiation - DaysAfterInitiation int `json:"DaysAfterInitiation"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_AbortIncompleteMultipartUpload) AWSCloudFormationType() string { - return "AWS::S3::Bucket.AbortIncompleteMultipartUpload" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_AbortIncompleteMultipartUpload) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_AbortIncompleteMultipartUpload) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_AbortIncompleteMultipartUpload) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_AbortIncompleteMultipartUpload) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_AbortIncompleteMultipartUpload) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_AbortIncompleteMultipartUpload) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_accelerateconfiguration.go b/cloudformation/resources/aws-s3-bucket_accelerateconfiguration.go deleted file mode 100644 index ab8642c473..0000000000 --- a/cloudformation/resources/aws-s3-bucket_accelerateconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_AccelerateConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.AccelerateConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html -type AWSS3Bucket_AccelerateConfiguration struct { - - // AccelerationStatus AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html#cfn-s3-bucket-accelerateconfiguration-accelerationstatus - AccelerationStatus string `json:"AccelerationStatus,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_AccelerateConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.AccelerateConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_AccelerateConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_AccelerateConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_AccelerateConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_AccelerateConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_AccelerateConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_AccelerateConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_accesscontroltranslation.go b/cloudformation/resources/aws-s3-bucket_accesscontroltranslation.go deleted file mode 100644 index ba7da7d667..0000000000 --- a/cloudformation/resources/aws-s3-bucket_accesscontroltranslation.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_AccessControlTranslation AWS CloudFormation Resource (AWS::S3::Bucket.AccessControlTranslation) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html -type AWSS3Bucket_AccessControlTranslation struct { - - // Owner AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html#cfn-s3-bucket-accesscontroltranslation-owner - Owner string `json:"Owner,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_AccessControlTranslation) AWSCloudFormationType() string { - return "AWS::S3::Bucket.AccessControlTranslation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_AccessControlTranslation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_AccessControlTranslation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_AccessControlTranslation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_AccessControlTranslation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_AccessControlTranslation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_AccessControlTranslation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_analyticsconfiguration.go b/cloudformation/resources/aws-s3-bucket_analyticsconfiguration.go deleted file mode 100644 index 240ccc1a10..0000000000 --- a/cloudformation/resources/aws-s3-bucket_analyticsconfiguration.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_AnalyticsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.AnalyticsConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html -type AWSS3Bucket_AnalyticsConfiguration struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-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-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-prefix - Prefix string `json:"Prefix,omitempty"` - - // StorageClassAnalysis AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-storageclassanalysis - StorageClassAnalysis *AWSS3Bucket_StorageClassAnalysis `json:"StorageClassAnalysis,omitempty"` - - // TagFilters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-tagfilters - TagFilters []AWSS3Bucket_TagFilter `json:"TagFilters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_AnalyticsConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.AnalyticsConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_AnalyticsConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_AnalyticsConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_AnalyticsConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_AnalyticsConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_AnalyticsConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_AnalyticsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_bucketencryption.go b/cloudformation/resources/aws-s3-bucket_bucketencryption.go deleted file mode 100644 index 8df4821b82..0000000000 --- a/cloudformation/resources/aws-s3-bucket_bucketencryption.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_BucketEncryption AWS CloudFormation Resource (AWS::S3::Bucket.BucketEncryption) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html -type AWSS3Bucket_BucketEncryption struct { - - // ServerSideEncryptionConfiguration AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html#cfn-s3-bucket-bucketencryption-serversideencryptionconfiguration - ServerSideEncryptionConfiguration []AWSS3Bucket_ServerSideEncryptionRule `json:"ServerSideEncryptionConfiguration,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_BucketEncryption) AWSCloudFormationType() string { - return "AWS::S3::Bucket.BucketEncryption" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_BucketEncryption) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_BucketEncryption) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_BucketEncryption) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_BucketEncryption) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_BucketEncryption) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_BucketEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_corsconfiguration.go b/cloudformation/resources/aws-s3-bucket_corsconfiguration.go deleted file mode 100644 index aef3adef00..0000000000 --- a/cloudformation/resources/aws-s3-bucket_corsconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_CorsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.CorsConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html -type AWSS3Bucket_CorsConfiguration struct { - - // CorsRules AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html#cfn-s3-bucket-cors-corsrule - CorsRules []AWSS3Bucket_CorsRule `json:"CorsRules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_CorsConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.CorsConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_CorsConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_CorsConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_CorsConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_CorsConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_CorsConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_CorsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_dataexport.go b/cloudformation/resources/aws-s3-bucket_dataexport.go deleted file mode 100644 index a48112a2f4..0000000000 --- a/cloudformation/resources/aws-s3-bucket_dataexport.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_DataExport AWS CloudFormation Resource (AWS::S3::Bucket.DataExport) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html -type AWSS3Bucket_DataExport struct { - - // Destination AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-destination - Destination *AWSS3Bucket_Destination `json:"Destination,omitempty"` - - // OutputSchemaVersion AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-outputschemaversion - OutputSchemaVersion string `json:"OutputSchemaVersion,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_DataExport) AWSCloudFormationType() string { - return "AWS::S3::Bucket.DataExport" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_DataExport) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_DataExport) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_DataExport) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_DataExport) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_DataExport) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_DataExport) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_encryptionconfiguration.go b/cloudformation/resources/aws-s3-bucket_encryptionconfiguration.go deleted file mode 100644 index 1242a84df5..0000000000 --- a/cloudformation/resources/aws-s3-bucket_encryptionconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_EncryptionConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.EncryptionConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html -type AWSS3Bucket_EncryptionConfiguration struct { - - // ReplicaKmsKeyID AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html#cfn-s3-bucket-encryptionconfiguration-replicakmskeyid - ReplicaKmsKeyID string `json:"ReplicaKmsKeyID,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_EncryptionConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.EncryptionConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_EncryptionConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_EncryptionConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_EncryptionConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_lifecycleconfiguration.go b/cloudformation/resources/aws-s3-bucket_lifecycleconfiguration.go deleted file mode 100644 index 5a9b63e99f..0000000000 --- a/cloudformation/resources/aws-s3-bucket_lifecycleconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_LifecycleConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.LifecycleConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html -type AWSS3Bucket_LifecycleConfiguration struct { - - // Rules AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html#cfn-s3-bucket-lifecycleconfig-rules - Rules []AWSS3Bucket_Rule `json:"Rules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_LifecycleConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.LifecycleConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_LifecycleConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_LifecycleConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_LifecycleConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_LifecycleConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_LifecycleConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_LifecycleConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_loggingconfiguration.go b/cloudformation/resources/aws-s3-bucket_loggingconfiguration.go deleted file mode 100644 index 63e955b702..0000000000 --- a/cloudformation/resources/aws-s3-bucket_loggingconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_LoggingConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.LoggingConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html -type AWSS3Bucket_LoggingConfiguration struct { - - // DestinationBucketName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-destinationbucketname - DestinationBucketName string `json:"DestinationBucketName,omitempty"` - - // LogFilePrefix AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-logfileprefix - LogFilePrefix string `json:"LogFilePrefix,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_LoggingConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.LoggingConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_LoggingConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_LoggingConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_LoggingConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_LoggingConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_LoggingConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_LoggingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_metricsconfiguration.go b/cloudformation/resources/aws-s3-bucket_metricsconfiguration.go deleted file mode 100644 index 27669aa153..0000000000 --- a/cloudformation/resources/aws-s3-bucket_metricsconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_MetricsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.MetricsConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html -type AWSS3Bucket_MetricsConfiguration struct { - - // Id AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-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-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-prefix - Prefix string `json:"Prefix,omitempty"` - - // TagFilters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-tagfilters - TagFilters []AWSS3Bucket_TagFilter `json:"TagFilters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_MetricsConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.MetricsConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_MetricsConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_MetricsConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_MetricsConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_MetricsConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_MetricsConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_MetricsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_noncurrentversiontransition.go b/cloudformation/resources/aws-s3-bucket_noncurrentversiontransition.go deleted file mode 100644 index 50403a20ff..0000000000 --- a/cloudformation/resources/aws-s3-bucket_noncurrentversiontransition.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_NoncurrentVersionTransition AWS CloudFormation Resource (AWS::S3::Bucket.NoncurrentVersionTransition) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html -type AWSS3Bucket_NoncurrentVersionTransition struct { - - // StorageClass AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-storageclass - StorageClass string `json:"StorageClass,omitempty"` - - // TransitionInDays AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-transitionindays - TransitionInDays int `json:"TransitionInDays"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_NoncurrentVersionTransition) AWSCloudFormationType() string { - return "AWS::S3::Bucket.NoncurrentVersionTransition" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_NoncurrentVersionTransition) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_NoncurrentVersionTransition) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_NoncurrentVersionTransition) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_NoncurrentVersionTransition) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_NoncurrentVersionTransition) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_NoncurrentVersionTransition) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_notificationconfiguration.go b/cloudformation/resources/aws-s3-bucket_notificationconfiguration.go deleted file mode 100644 index db81aaa44a..0000000000 --- a/cloudformation/resources/aws-s3-bucket_notificationconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_NotificationConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.NotificationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html -type AWSS3Bucket_NotificationConfiguration struct { - - // LambdaConfigurations AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig - LambdaConfigurations []AWSS3Bucket_LambdaConfiguration `json:"LambdaConfigurations,omitempty"` - - // QueueConfigurations AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-queueconfig - QueueConfigurations []AWSS3Bucket_QueueConfiguration `json:"QueueConfigurations,omitempty"` - - // TopicConfigurations AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-topicconfig - TopicConfigurations []AWSS3Bucket_TopicConfiguration `json:"TopicConfigurations,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_NotificationConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.NotificationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_NotificationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_NotificationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_NotificationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_notificationfilter.go b/cloudformation/resources/aws-s3-bucket_notificationfilter.go deleted file mode 100644 index b782158280..0000000000 --- a/cloudformation/resources/aws-s3-bucket_notificationfilter.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_NotificationFilter AWS CloudFormation Resource (AWS::S3::Bucket.NotificationFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html -type AWSS3Bucket_NotificationFilter struct { - - // S3Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key - S3Key *AWSS3Bucket_S3KeyFilter `json:"S3Key,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_NotificationFilter) AWSCloudFormationType() string { - return "AWS::S3::Bucket.NotificationFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_NotificationFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_NotificationFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_NotificationFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_NotificationFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_NotificationFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_NotificationFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_objectlockconfiguration.go b/cloudformation/resources/aws-s3-bucket_objectlockconfiguration.go deleted file mode 100644 index 24cf4a4994..0000000000 --- a/cloudformation/resources/aws-s3-bucket_objectlockconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_ObjectLockConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.ObjectLockConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html -type AWSS3Bucket_ObjectLockConfiguration struct { - - // ObjectLockEnabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-objectlockenabled - ObjectLockEnabled string `json:"ObjectLockEnabled,omitempty"` - - // Rule AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-rule - Rule *AWSS3Bucket_ObjectLockRule `json:"Rule,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ObjectLockConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.ObjectLockConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ObjectLockConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ObjectLockConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ObjectLockConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ObjectLockConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ObjectLockConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ObjectLockConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_objectlockrule.go b/cloudformation/resources/aws-s3-bucket_objectlockrule.go deleted file mode 100644 index 93203fe6f2..0000000000 --- a/cloudformation/resources/aws-s3-bucket_objectlockrule.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_ObjectLockRule AWS CloudFormation Resource (AWS::S3::Bucket.ObjectLockRule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html -type AWSS3Bucket_ObjectLockRule struct { - - // DefaultRetention AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html#cfn-s3-bucket-objectlockrule-defaultretention - DefaultRetention *AWSS3Bucket_DefaultRetention `json:"DefaultRetention,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ObjectLockRule) AWSCloudFormationType() string { - return "AWS::S3::Bucket.ObjectLockRule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ObjectLockRule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ObjectLockRule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ObjectLockRule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ObjectLockRule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ObjectLockRule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ObjectLockRule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_redirectallrequeststo.go b/cloudformation/resources/aws-s3-bucket_redirectallrequeststo.go deleted file mode 100644 index f9d21b8f5b..0000000000 --- a/cloudformation/resources/aws-s3-bucket_redirectallrequeststo.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_RedirectAllRequestsTo AWS CloudFormation Resource (AWS::S3::Bucket.RedirectAllRequestsTo) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html -type AWSS3Bucket_RedirectAllRequestsTo struct { - - // HostName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-hostname - HostName string `json:"HostName,omitempty"` - - // Protocol AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-protocol - Protocol string `json:"Protocol,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_RedirectAllRequestsTo) AWSCloudFormationType() string { - return "AWS::S3::Bucket.RedirectAllRequestsTo" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_RedirectAllRequestsTo) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_RedirectAllRequestsTo) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_RedirectAllRequestsTo) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_RedirectAllRequestsTo) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_RedirectAllRequestsTo) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_RedirectAllRequestsTo) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_replicationconfiguration.go b/cloudformation/resources/aws-s3-bucket_replicationconfiguration.go deleted file mode 100644 index ea647f6940..0000000000 --- a/cloudformation/resources/aws-s3-bucket_replicationconfiguration.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_ReplicationConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.ReplicationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html -type AWSS3Bucket_ReplicationConfiguration struct { - - // Role AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-role - Role string `json:"Role,omitempty"` - - // Rules AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-rules - Rules []AWSS3Bucket_ReplicationRule `json:"Rules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ReplicationConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.ReplicationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ReplicationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ReplicationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ReplicationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ReplicationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ReplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ReplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_routingrule.go b/cloudformation/resources/aws-s3-bucket_routingrule.go deleted file mode 100644 index 19be4670b3..0000000000 --- a/cloudformation/resources/aws-s3-bucket_routingrule.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_RoutingRule AWS CloudFormation Resource (AWS::S3::Bucket.RoutingRule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html -type AWSS3Bucket_RoutingRule struct { - - // RedirectRule AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-redirectrule - RedirectRule *AWSS3Bucket_RedirectRule `json:"RedirectRule,omitempty"` - - // RoutingRuleCondition AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition - RoutingRuleCondition *AWSS3Bucket_RoutingRuleCondition `json:"RoutingRuleCondition,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_RoutingRule) AWSCloudFormationType() string { - return "AWS::S3::Bucket.RoutingRule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_RoutingRule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_RoutingRule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_RoutingRule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_RoutingRule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_RoutingRule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_RoutingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_s3keyfilter.go b/cloudformation/resources/aws-s3-bucket_s3keyfilter.go deleted file mode 100644 index 53129a9537..0000000000 --- a/cloudformation/resources/aws-s3-bucket_s3keyfilter.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_S3KeyFilter AWS CloudFormation Resource (AWS::S3::Bucket.S3KeyFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html -type AWSS3Bucket_S3KeyFilter struct { - - // Rules AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules - Rules []AWSS3Bucket_FilterRule `json:"Rules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_S3KeyFilter) AWSCloudFormationType() string { - return "AWS::S3::Bucket.S3KeyFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_S3KeyFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_S3KeyFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_S3KeyFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_S3KeyFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_S3KeyFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_S3KeyFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_serversideencryptionbydefault.go b/cloudformation/resources/aws-s3-bucket_serversideencryptionbydefault.go deleted file mode 100644 index ee123f5b6a..0000000000 --- a/cloudformation/resources/aws-s3-bucket_serversideencryptionbydefault.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_ServerSideEncryptionByDefault AWS CloudFormation Resource (AWS::S3::Bucket.ServerSideEncryptionByDefault) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html -type AWSS3Bucket_ServerSideEncryptionByDefault struct { - - // KMSMasterKeyID AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-kmsmasterkeyid - KMSMasterKeyID string `json:"KMSMasterKeyID,omitempty"` - - // SSEAlgorithm AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-ssealgorithm - SSEAlgorithm string `json:"SSEAlgorithm,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ServerSideEncryptionByDefault) AWSCloudFormationType() string { - return "AWS::S3::Bucket.ServerSideEncryptionByDefault" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ServerSideEncryptionByDefault) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ServerSideEncryptionByDefault) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ServerSideEncryptionByDefault) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ServerSideEncryptionByDefault) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ServerSideEncryptionByDefault) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ServerSideEncryptionByDefault) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_serversideencryptionrule.go b/cloudformation/resources/aws-s3-bucket_serversideencryptionrule.go deleted file mode 100644 index 02f76b3650..0000000000 --- a/cloudformation/resources/aws-s3-bucket_serversideencryptionrule.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_ServerSideEncryptionRule AWS CloudFormation Resource (AWS::S3::Bucket.ServerSideEncryptionRule) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html -type AWSS3Bucket_ServerSideEncryptionRule struct { - - // ServerSideEncryptionByDefault AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html#cfn-s3-bucket-serversideencryptionrule-serversideencryptionbydefault - ServerSideEncryptionByDefault *AWSS3Bucket_ServerSideEncryptionByDefault `json:"ServerSideEncryptionByDefault,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ServerSideEncryptionRule) AWSCloudFormationType() string { - return "AWS::S3::Bucket.ServerSideEncryptionRule" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ServerSideEncryptionRule) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ServerSideEncryptionRule) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ServerSideEncryptionRule) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ServerSideEncryptionRule) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ServerSideEncryptionRule) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ServerSideEncryptionRule) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_sourceselectioncriteria.go b/cloudformation/resources/aws-s3-bucket_sourceselectioncriteria.go deleted file mode 100644 index d149faf26f..0000000000 --- a/cloudformation/resources/aws-s3-bucket_sourceselectioncriteria.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_SourceSelectionCriteria AWS CloudFormation Resource (AWS::S3::Bucket.SourceSelectionCriteria) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html -type AWSS3Bucket_SourceSelectionCriteria struct { - - // SseKmsEncryptedObjects AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html#cfn-s3-bucket-sourceselectioncriteria-ssekmsencryptedobjects - SseKmsEncryptedObjects *AWSS3Bucket_SseKmsEncryptedObjects `json:"SseKmsEncryptedObjects,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_SourceSelectionCriteria) AWSCloudFormationType() string { - return "AWS::S3::Bucket.SourceSelectionCriteria" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_SourceSelectionCriteria) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_SourceSelectionCriteria) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_SourceSelectionCriteria) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_SourceSelectionCriteria) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_SourceSelectionCriteria) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_SourceSelectionCriteria) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_ssekmsencryptedobjects.go b/cloudformation/resources/aws-s3-bucket_ssekmsencryptedobjects.go deleted file mode 100644 index 534d50b8a6..0000000000 --- a/cloudformation/resources/aws-s3-bucket_ssekmsencryptedobjects.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_SseKmsEncryptedObjects AWS CloudFormation Resource (AWS::S3::Bucket.SseKmsEncryptedObjects) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html -type AWSS3Bucket_SseKmsEncryptedObjects struct { - - // Status AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html#cfn-s3-bucket-ssekmsencryptedobjects-status - Status string `json:"Status,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_SseKmsEncryptedObjects) AWSCloudFormationType() string { - return "AWS::S3::Bucket.SseKmsEncryptedObjects" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_SseKmsEncryptedObjects) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_SseKmsEncryptedObjects) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_SseKmsEncryptedObjects) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_SseKmsEncryptedObjects) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_SseKmsEncryptedObjects) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_SseKmsEncryptedObjects) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_storageclassanalysis.go b/cloudformation/resources/aws-s3-bucket_storageclassanalysis.go deleted file mode 100644 index f25b334856..0000000000 --- a/cloudformation/resources/aws-s3-bucket_storageclassanalysis.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_StorageClassAnalysis AWS CloudFormation Resource (AWS::S3::Bucket.StorageClassAnalysis) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html -type AWSS3Bucket_StorageClassAnalysis struct { - - // DataExport AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html#cfn-s3-bucket-storageclassanalysis-dataexport - DataExport *AWSS3Bucket_DataExport `json:"DataExport,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_StorageClassAnalysis) AWSCloudFormationType() string { - return "AWS::S3::Bucket.StorageClassAnalysis" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_StorageClassAnalysis) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_StorageClassAnalysis) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_StorageClassAnalysis) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_StorageClassAnalysis) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_StorageClassAnalysis) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_StorageClassAnalysis) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_versioningconfiguration.go b/cloudformation/resources/aws-s3-bucket_versioningconfiguration.go deleted file mode 100644 index 36977e5ccd..0000000000 --- a/cloudformation/resources/aws-s3-bucket_versioningconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_VersioningConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.VersioningConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html -type AWSS3Bucket_VersioningConfiguration struct { - - // Status AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html#cfn-s3-bucket-versioningconfig-status - Status string `json:"Status,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_VersioningConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.VersioningConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_VersioningConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_VersioningConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_VersioningConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_VersioningConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_VersioningConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_VersioningConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-s3-bucket_websiteconfiguration.go b/cloudformation/resources/aws-s3-bucket_websiteconfiguration.go deleted file mode 100644 index 0b97170e13..0000000000 --- a/cloudformation/resources/aws-s3-bucket_websiteconfiguration.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSS3Bucket_WebsiteConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.WebsiteConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html -type AWSS3Bucket_WebsiteConfiguration struct { - - // ErrorDocument AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-errordocument - ErrorDocument string `json:"ErrorDocument,omitempty"` - - // IndexDocument AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-indexdocument - IndexDocument string `json:"IndexDocument,omitempty"` - - // RedirectAllRequestsTo AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-redirectallrequeststo - RedirectAllRequestsTo *AWSS3Bucket_RedirectAllRequestsTo `json:"RedirectAllRequestsTo,omitempty"` - - // RoutingRules AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-routingrules - RoutingRules []AWSS3Bucket_RoutingRule `json:"RoutingRules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_WebsiteConfiguration) AWSCloudFormationType() string { - return "AWS::S3::Bucket.WebsiteConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_WebsiteConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_WebsiteConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_WebsiteConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_WebsiteConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_WebsiteConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_WebsiteConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig.go b/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig.go deleted file mode 100644 index 1a33dfeba4..0000000000 --- a/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig.go +++ /dev/null @@ -1,133 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSSageMakerNotebookInstanceLifecycleConfig AWS CloudFormation Resource (AWS::SageMaker::NotebookInstanceLifecycleConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html -type AWSSageMakerNotebookInstanceLifecycleConfig struct { - - // NotebookInstanceLifecycleConfigName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecycleconfigname - NotebookInstanceLifecycleConfigName string `json:"NotebookInstanceLifecycleConfigName,omitempty"` - - // OnCreate AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-oncreate - OnCreate []AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook `json:"OnCreate,omitempty"` - - // OnStart AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-onstart - OnStart []AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook `json:"OnStart,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) AWSCloudFormationType() string { - return "AWS::SageMaker::NotebookInstanceLifecycleConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSageMakerNotebookInstanceLifecycleConfig) MarshalJSON() ([]byte, error) { - type Properties AWSSageMakerNotebookInstanceLifecycleConfig - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) UnmarshalJSON(b []byte) error { - type Properties AWSSageMakerNotebookInstanceLifecycleConfig - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSSageMakerNotebookInstanceLifecycleConfig(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go b/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go deleted file mode 100644 index bc90cac496..0000000000 --- a/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook AWS CloudFormation Resource (AWS::SageMaker::NotebookInstanceLifecycleConfig.NotebookInstanceLifecycleHook) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook.html -type AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook struct { - - // Content AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook.html#cfn-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook-content - Content string `json:"Content,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) AWSCloudFormationType() string { - return "AWS::SageMaker::NotebookInstanceLifecycleConfig.NotebookInstanceLifecycleHook" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-sagemaker-workteam_memberdefinition.go b/cloudformation/resources/aws-sagemaker-workteam_memberdefinition.go deleted file mode 100644 index cac19ef073..0000000000 --- a/cloudformation/resources/aws-sagemaker-workteam_memberdefinition.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSageMakerWorkteam_MemberDefinition AWS CloudFormation Resource (AWS::SageMaker::Workteam.MemberDefinition) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-memberdefinition.html -type AWSSageMakerWorkteam_MemberDefinition struct { - - // CognitoMemberDefinition AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-memberdefinition.html#cfn-sagemaker-workteam-memberdefinition-cognitomemberdefinition - CognitoMemberDefinition *AWSSageMakerWorkteam_CognitoMemberDefinition `json:"CognitoMemberDefinition,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerWorkteam_MemberDefinition) AWSCloudFormationType() string { - return "AWS::SageMaker::Workteam.MemberDefinition" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerWorkteam_MemberDefinition) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerWorkteam_MemberDefinition) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerWorkteam_MemberDefinition) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerWorkteam_MemberDefinition) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerWorkteam_MemberDefinition) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerWorkteam_MemberDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-sagemaker-workteam_notificationconfiguration.go b/cloudformation/resources/aws-sagemaker-workteam_notificationconfiguration.go deleted file mode 100644 index cbecdbb036..0000000000 --- a/cloudformation/resources/aws-sagemaker-workteam_notificationconfiguration.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSageMakerWorkteam_NotificationConfiguration AWS CloudFormation Resource (AWS::SageMaker::Workteam.NotificationConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-notificationconfiguration.html -type AWSSageMakerWorkteam_NotificationConfiguration struct { - - // NotificationTopicArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-notificationconfiguration.html#cfn-sagemaker-workteam-notificationconfiguration-notificationtopicarn - NotificationTopicArn string `json:"NotificationTopicArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerWorkteam_NotificationConfiguration) AWSCloudFormationType() string { - return "AWS::SageMaker::Workteam.NotificationConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerWorkteam_NotificationConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerWorkteam_NotificationConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerWorkteam_NotificationConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerWorkteam_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerWorkteam_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerWorkteam_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-secretsmanager-rotationschedule_rotationrules.go b/cloudformation/resources/aws-secretsmanager-rotationschedule_rotationrules.go deleted file mode 100644 index bd3828297a..0000000000 --- a/cloudformation/resources/aws-secretsmanager-rotationschedule_rotationrules.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSecretsManagerRotationSchedule_RotationRules AWS CloudFormation Resource (AWS::SecretsManager::RotationSchedule.RotationRules) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html -type AWSSecretsManagerRotationSchedule_RotationRules struct { - - // AutomaticallyAfterDays AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html#cfn-secretsmanager-rotationschedule-rotationrules-automaticallyafterdays - AutomaticallyAfterDays int `json:"AutomaticallyAfterDays,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSecretsManagerRotationSchedule_RotationRules) AWSCloudFormationType() string { - return "AWS::SecretsManager::RotationSchedule.RotationRules" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerRotationSchedule_RotationRules) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerRotationSchedule_RotationRules) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerRotationSchedule_RotationRules) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerRotationSchedule_RotationRules) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerRotationSchedule_RotationRules) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerRotationSchedule_RotationRules) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-api_accesslogsetting.go b/cloudformation/resources/aws-serverless-api_accesslogsetting.go deleted file mode 100644 index 3c095bff1e..0000000000 --- a/cloudformation/resources/aws-serverless-api_accesslogsetting.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessApi_AccessLogSetting AWS CloudFormation Resource (AWS::Serverless::Api.AccessLogSetting) -// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html -type AWSServerlessApi_AccessLogSetting struct { - - // DestinationArn AWS CloudFormation Property - // Required: false - // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-destinationarn - DestinationArn string `json:"DestinationArn,omitempty"` - - // Format AWS CloudFormation Property - // Required: false - // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-format - Format string `json:"Format,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessApi_AccessLogSetting) AWSCloudFormationType() string { - return "AWS::Serverless::Api.AccessLogSetting" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApi_AccessLogSetting) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApi_AccessLogSetting) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApi_AccessLogSetting) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApi_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApi_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApi_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-application_applicationlocation.go b/cloudformation/resources/aws-serverless-application_applicationlocation.go deleted file mode 100644 index 0935435719..0000000000 --- a/cloudformation/resources/aws-serverless-application_applicationlocation.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessApplication_ApplicationLocation AWS CloudFormation Resource (AWS::Serverless::Application.ApplicationLocation) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication -type AWSServerlessApplication_ApplicationLocation struct { - - // ApplicationId AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - ApplicationId string `json:"ApplicationId,omitempty"` - - // SemanticVersion AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - SemanticVersion string `json:"SemanticVersion,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessApplication_ApplicationLocation) AWSCloudFormationType() string { - return "AWS::Serverless::Application.ApplicationLocation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApplication_ApplicationLocation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApplication_ApplicationLocation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApplication_ApplicationLocation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApplication_ApplicationLocation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApplication_ApplicationLocation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApplication_ApplicationLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_alexaskillevent.go b/cloudformation/resources/aws-serverless-function_alexaskillevent.go deleted file mode 100644 index b70f58efc4..0000000000 --- a/cloudformation/resources/aws-serverless-function_alexaskillevent.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_AlexaSkillEvent AWS CloudFormation Resource (AWS::Serverless::Function.AlexaSkillEvent) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#alexaskill -type AWSServerlessFunction_AlexaSkillEvent struct { - - // Variables AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#alexaskill - Variables map[string]string `json:"Variables,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_AlexaSkillEvent) AWSCloudFormationType() string { - return "AWS::Serverless::Function.AlexaSkillEvent" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_AlexaSkillEvent) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_AlexaSkillEvent) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_AlexaSkillEvent) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_AlexaSkillEvent) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_AlexaSkillEvent) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_AlexaSkillEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_bucketsampt.go b/cloudformation/resources/aws-serverless-function_bucketsampt.go deleted file mode 100644 index e4cff2ef85..0000000000 --- a/cloudformation/resources/aws-serverless-function_bucketsampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_BucketSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.BucketSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_BucketSAMPT struct { - - // BucketName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - BucketName string `json:"BucketName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_BucketSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.BucketSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_BucketSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_BucketSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_BucketSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_BucketSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_BucketSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_BucketSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_cloudwatcheventevent.go b/cloudformation/resources/aws-serverless-function_cloudwatcheventevent.go deleted file mode 100644 index 2da99fe6ae..0000000000 --- a/cloudformation/resources/aws-serverless-function_cloudwatcheventevent.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_CloudWatchEventEvent AWS CloudFormation Resource (AWS::Serverless::Function.CloudWatchEventEvent) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent -type AWSServerlessFunction_CloudWatchEventEvent struct { - - // Input AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent - Input string `json:"Input,omitempty"` - - // InputPath AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent - InputPath string `json:"InputPath,omitempty"` - - // Pattern AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AmazonCloudWatch/latest/events/CloudWatchEventsandEventPatterns.html - Pattern interface{} `json:"Pattern,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_CloudWatchEventEvent) AWSCloudFormationType() string { - return "AWS::Serverless::Function.CloudWatchEventEvent" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_CloudWatchEventEvent) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_CloudWatchEventEvent) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_CloudWatchEventEvent) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_CloudWatchEventEvent) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_CloudWatchEventEvent) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_CloudWatchEventEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_collectionsampt.go b/cloudformation/resources/aws-serverless-function_collectionsampt.go deleted file mode 100644 index 32d83fee88..0000000000 --- a/cloudformation/resources/aws-serverless-function_collectionsampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_CollectionSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.CollectionSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_CollectionSAMPT struct { - - // CollectionId AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - CollectionId string `json:"CollectionId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_CollectionSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.CollectionSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_CollectionSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_CollectionSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_CollectionSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_CollectionSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_CollectionSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_CollectionSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_deadletterqueue.go b/cloudformation/resources/aws-serverless-function_deadletterqueue.go deleted file mode 100644 index 69d306851c..0000000000 --- a/cloudformation/resources/aws-serverless-function_deadletterqueue.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_DeadLetterQueue AWS CloudFormation Resource (AWS::Serverless::Function.DeadLetterQueue) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deadletterqueue-object -type AWSServerlessFunction_DeadLetterQueue struct { - - // TargetArn AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - TargetArn string `json:"TargetArn,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_DeadLetterQueue) AWSCloudFormationType() string { - return "AWS::Serverless::Function.DeadLetterQueue" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_DeadLetterQueue) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_DeadLetterQueue) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_DeadLetterQueue) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_DeadLetterQueue) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_DeadLetterQueue) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_DeadLetterQueue) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_domainsampt.go b/cloudformation/resources/aws-serverless-function_domainsampt.go deleted file mode 100644 index 00ec1d94d5..0000000000 --- a/cloudformation/resources/aws-serverless-function_domainsampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_DomainSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.DomainSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_DomainSAMPT struct { - - // DomainName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - DomainName string `json:"DomainName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_DomainSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.DomainSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_DomainSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_DomainSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_DomainSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_DomainSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_DomainSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_DomainSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_emptysampt.go b/cloudformation/resources/aws-serverless-function_emptysampt.go deleted file mode 100644 index f2fc9df4d7..0000000000 --- a/cloudformation/resources/aws-serverless-function_emptysampt.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_EmptySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.EmptySAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_EmptySAMPT struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_EmptySAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.EmptySAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_EmptySAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_EmptySAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_EmptySAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_EmptySAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_EmptySAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_EmptySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_eventsource.go b/cloudformation/resources/aws-serverless-function_eventsource.go deleted file mode 100644 index c8498a4209..0000000000 --- a/cloudformation/resources/aws-serverless-function_eventsource.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_EventSource AWS CloudFormation Resource (AWS::Serverless::Function.EventSource) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-object -type AWSServerlessFunction_EventSource struct { - - // Properties AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-types - Properties *AWSServerlessFunction_Properties `json:"Properties,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-object - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_EventSource) AWSCloudFormationType() string { - return "AWS::Serverless::Function.EventSource" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_EventSource) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_EventSource) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_EventSource) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_EventSource) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_EventSource) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_EventSource) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_functionenvironment.go b/cloudformation/resources/aws-serverless-function_functionenvironment.go deleted file mode 100644 index ebe0e1c359..0000000000 --- a/cloudformation/resources/aws-serverless-function_functionenvironment.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_FunctionEnvironment AWS CloudFormation Resource (AWS::Serverless::Function.FunctionEnvironment) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#environment-object -type AWSServerlessFunction_FunctionEnvironment struct { - - // Variables AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#environment-object - Variables map[string]string `json:"Variables,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_FunctionEnvironment) AWSCloudFormationType() string { - return "AWS::Serverless::Function.FunctionEnvironment" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_FunctionEnvironment) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_FunctionEnvironment) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_FunctionEnvironment) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_FunctionEnvironment) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_FunctionEnvironment) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_FunctionEnvironment) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_functionsampt.go b/cloudformation/resources/aws-serverless-function_functionsampt.go deleted file mode 100644 index c1065c8ad9..0000000000 --- a/cloudformation/resources/aws-serverless-function_functionsampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_FunctionSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.FunctionSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_FunctionSAMPT struct { - - // FunctionName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - FunctionName string `json:"FunctionName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_FunctionSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.FunctionSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_FunctionSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_FunctionSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_FunctionSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_FunctionSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_FunctionSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_FunctionSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_iampolicydocument.go b/cloudformation/resources/aws-serverless-function_iampolicydocument.go deleted file mode 100644 index 5c23f77969..0000000000 --- a/cloudformation/resources/aws-serverless-function_iampolicydocument.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_IAMPolicyDocument AWS CloudFormation Resource (AWS::Serverless::Function.IAMPolicyDocument) -// See: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html -type AWSServerlessFunction_IAMPolicyDocument struct { - - // Statement AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html - Statement interface{} `json:"Statement,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_IAMPolicyDocument) AWSCloudFormationType() string { - return "AWS::Serverless::Function.IAMPolicyDocument" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_IAMPolicyDocument) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_IAMPolicyDocument) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_IAMPolicyDocument) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_IAMPolicyDocument) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_IAMPolicyDocument) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_IAMPolicyDocument) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_identitysampt.go b/cloudformation/resources/aws-serverless-function_identitysampt.go deleted file mode 100644 index 46f3ed4c76..0000000000 --- a/cloudformation/resources/aws-serverless-function_identitysampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_IdentitySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.IdentitySAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_IdentitySAMPT struct { - - // IdentityName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - IdentityName string `json:"IdentityName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_IdentitySAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.IdentitySAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_IdentitySAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_IdentitySAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_IdentitySAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_IdentitySAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_IdentitySAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_IdentitySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_iotruleevent.go b/cloudformation/resources/aws-serverless-function_iotruleevent.go deleted file mode 100644 index d8bfe20aaf..0000000000 --- a/cloudformation/resources/aws-serverless-function_iotruleevent.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_IoTRuleEvent AWS CloudFormation Resource (AWS::Serverless::Function.IoTRuleEvent) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule -type AWSServerlessFunction_IoTRuleEvent struct { - - // AwsIotSqlVersion AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule - AwsIotSqlVersion string `json:"AwsIotSqlVersion,omitempty"` - - // Sql AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule - Sql string `json:"Sql,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_IoTRuleEvent) AWSCloudFormationType() string { - return "AWS::Serverless::Function.IoTRuleEvent" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_IoTRuleEvent) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_IoTRuleEvent) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_IoTRuleEvent) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_IoTRuleEvent) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_IoTRuleEvent) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_IoTRuleEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_keysampt.go b/cloudformation/resources/aws-serverless-function_keysampt.go deleted file mode 100644 index 9af5ddd91f..0000000000 --- a/cloudformation/resources/aws-serverless-function_keysampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_KeySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.KeySAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_KeySAMPT struct { - - // KeyId AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - KeyId string `json:"KeyId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_KeySAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.KeySAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_KeySAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_KeySAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_KeySAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_KeySAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_KeySAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_KeySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_loggroupsampt.go b/cloudformation/resources/aws-serverless-function_loggroupsampt.go deleted file mode 100644 index dad1320f67..0000000000 --- a/cloudformation/resources/aws-serverless-function_loggroupsampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_LogGroupSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.LogGroupSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_LogGroupSAMPT struct { - - // LogGroupName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - LogGroupName string `json:"LogGroupName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_LogGroupSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.LogGroupSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_LogGroupSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_LogGroupSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_LogGroupSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_LogGroupSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_LogGroupSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_LogGroupSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_queuesampt.go b/cloudformation/resources/aws-serverless-function_queuesampt.go deleted file mode 100644 index 5c6d86d78d..0000000000 --- a/cloudformation/resources/aws-serverless-function_queuesampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_QueueSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.QueueSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_QueueSAMPT struct { - - // QueueName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - QueueName string `json:"QueueName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_QueueSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.QueueSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_QueueSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_QueueSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_QueueSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_QueueSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_QueueSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_QueueSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_s3event.go b/cloudformation/resources/aws-serverless-function_s3event.go deleted file mode 100644 index 1e3faa391b..0000000000 --- a/cloudformation/resources/aws-serverless-function_s3event.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_S3Event AWS CloudFormation Resource (AWS::Serverless::Function.S3Event) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 -type AWSServerlessFunction_S3Event struct { - - // Bucket AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 - Bucket string `json:"Bucket,omitempty"` - - // Events AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 - Events *AWSServerlessFunction_Events `json:"Events,omitempty"` - - // Filter AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 - Filter *AWSServerlessFunction_S3NotificationFilter `json:"Filter,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_S3Event) AWSCloudFormationType() string { - return "AWS::Serverless::Function.S3Event" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_S3Event) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_S3Event) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_S3Event) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_S3Event) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_S3Event) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_S3Event) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_s3notificationfilter.go b/cloudformation/resources/aws-serverless-function_s3notificationfilter.go deleted file mode 100644 index 3e6b8e6bfb..0000000000 --- a/cloudformation/resources/aws-serverless-function_s3notificationfilter.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_S3NotificationFilter AWS CloudFormation Resource (AWS::Serverless::Function.S3NotificationFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html -type AWSServerlessFunction_S3NotificationFilter struct { - - // S3Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html - S3Key string `json:"S3Key,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_S3NotificationFilter) AWSCloudFormationType() string { - return "AWS::Serverless::Function.S3NotificationFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_S3NotificationFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_S3NotificationFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_S3NotificationFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_S3NotificationFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_S3NotificationFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_S3NotificationFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_sampolicytemplate.go b/cloudformation/resources/aws-serverless-function_sampolicytemplate.go deleted file mode 100644 index 814fd8ef86..0000000000 --- a/cloudformation/resources/aws-serverless-function_sampolicytemplate.go +++ /dev/null @@ -1,208 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_SAMPolicyTemplate AWS CloudFormation Resource (AWS::Serverless::Function.SAMPolicyTemplate) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_SAMPolicyTemplate struct { - - // AMIDescribePolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - AMIDescribePolicy *AWSServerlessFunction_EmptySAMPT `json:"AMIDescribePolicy,omitempty"` - - // CloudFormationDescribeStacksPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - CloudFormationDescribeStacksPolicy *AWSServerlessFunction_EmptySAMPT `json:"CloudFormationDescribeStacksPolicy,omitempty"` - - // CloudWatchPutMetricPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - CloudWatchPutMetricPolicy *AWSServerlessFunction_EmptySAMPT `json:"CloudWatchPutMetricPolicy,omitempty"` - - // DynamoDBCrudPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - DynamoDBCrudPolicy *AWSServerlessFunction_TableSAMPT `json:"DynamoDBCrudPolicy,omitempty"` - - // DynamoDBReadPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - DynamoDBReadPolicy *AWSServerlessFunction_TableSAMPT `json:"DynamoDBReadPolicy,omitempty"` - - // DynamoDBStreamReadPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - DynamoDBStreamReadPolicy *AWSServerlessFunction_TableStreamSAMPT `json:"DynamoDBStreamReadPolicy,omitempty"` - - // EC2DescribePolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - EC2DescribePolicy *AWSServerlessFunction_EmptySAMPT `json:"EC2DescribePolicy,omitempty"` - - // ElasticsearchHttpPostPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - ElasticsearchHttpPostPolicy *AWSServerlessFunction_DomainSAMPT `json:"ElasticsearchHttpPostPolicy,omitempty"` - - // FilterLogEventsPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - FilterLogEventsPolicy *AWSServerlessFunction_LogGroupSAMPT `json:"FilterLogEventsPolicy,omitempty"` - - // KMSDecryptPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - KMSDecryptPolicy *AWSServerlessFunction_KeySAMPT `json:"KMSDecryptPolicy,omitempty"` - - // KinesisCrudPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - KinesisCrudPolicy *AWSServerlessFunction_StreamSAMPT `json:"KinesisCrudPolicy,omitempty"` - - // KinesisStreamReadPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - KinesisStreamReadPolicy *AWSServerlessFunction_StreamSAMPT `json:"KinesisStreamReadPolicy,omitempty"` - - // LambdaInvokePolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - LambdaInvokePolicy *AWSServerlessFunction_FunctionSAMPT `json:"LambdaInvokePolicy,omitempty"` - - // RekognitionDetectOnlyPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - RekognitionDetectOnlyPolicy *AWSServerlessFunction_EmptySAMPT `json:"RekognitionDetectOnlyPolicy,omitempty"` - - // RekognitionLabelsPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - RekognitionLabelsPolicy *AWSServerlessFunction_EmptySAMPT `json:"RekognitionLabelsPolicy,omitempty"` - - // RekognitionNoDataAccessPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - RekognitionNoDataAccessPolicy *AWSServerlessFunction_CollectionSAMPT `json:"RekognitionNoDataAccessPolicy,omitempty"` - - // RekognitionReadPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - RekognitionReadPolicy *AWSServerlessFunction_CollectionSAMPT `json:"RekognitionReadPolicy,omitempty"` - - // RekognitionWriteOnlyAccessPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - RekognitionWriteOnlyAccessPolicy *AWSServerlessFunction_CollectionSAMPT `json:"RekognitionWriteOnlyAccessPolicy,omitempty"` - - // S3CrudPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - S3CrudPolicy *AWSServerlessFunction_BucketSAMPT `json:"S3CrudPolicy,omitempty"` - - // S3ReadPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - S3ReadPolicy *AWSServerlessFunction_BucketSAMPT `json:"S3ReadPolicy,omitempty"` - - // SESBulkTemplatedCrudPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - SESBulkTemplatedCrudPolicy *AWSServerlessFunction_IdentitySAMPT `json:"SESBulkTemplatedCrudPolicy,omitempty"` - - // SESCrudPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - SESCrudPolicy *AWSServerlessFunction_IdentitySAMPT `json:"SESCrudPolicy,omitempty"` - - // SESEmailTemplateCrudPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - SESEmailTemplateCrudPolicy *AWSServerlessFunction_EmptySAMPT `json:"SESEmailTemplateCrudPolicy,omitempty"` - - // SESSendBouncePolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - SESSendBouncePolicy *AWSServerlessFunction_IdentitySAMPT `json:"SESSendBouncePolicy,omitempty"` - - // SNSCrudPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - SNSCrudPolicy *AWSServerlessFunction_TopicSAMPT `json:"SNSCrudPolicy,omitempty"` - - // SNSPublishMessagePolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - SNSPublishMessagePolicy *AWSServerlessFunction_TopicSAMPT `json:"SNSPublishMessagePolicy,omitempty"` - - // SQSPollerPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - SQSPollerPolicy *AWSServerlessFunction_QueueSAMPT `json:"SQSPollerPolicy,omitempty"` - - // SQSSendMessagePolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - SQSSendMessagePolicy *AWSServerlessFunction_QueueSAMPT `json:"SQSSendMessagePolicy,omitempty"` - - // StepFunctionsExecutionPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - StepFunctionsExecutionPolicy *AWSServerlessFunction_StateMachineSAMPT `json:"StepFunctionsExecutionPolicy,omitempty"` - - // VPCAccessPolicy AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - VPCAccessPolicy *AWSServerlessFunction_EmptySAMPT `json:"VPCAccessPolicy,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_SAMPolicyTemplate) AWSCloudFormationType() string { - return "AWS::Serverless::Function.SAMPolicyTemplate" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_SAMPolicyTemplate) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_SAMPolicyTemplate) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_SAMPolicyTemplate) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_SAMPolicyTemplate) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_SAMPolicyTemplate) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_SAMPolicyTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_scheduleevent.go b/cloudformation/resources/aws-serverless-function_scheduleevent.go deleted file mode 100644 index a55c2fd26d..0000000000 --- a/cloudformation/resources/aws-serverless-function_scheduleevent.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_ScheduleEvent AWS CloudFormation Resource (AWS::Serverless::Function.ScheduleEvent) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule -type AWSServerlessFunction_ScheduleEvent struct { - - // Input AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule - Input string `json:"Input,omitempty"` - - // Schedule AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule - Schedule string `json:"Schedule,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_ScheduleEvent) AWSCloudFormationType() string { - return "AWS::Serverless::Function.ScheduleEvent" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_ScheduleEvent) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_ScheduleEvent) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_ScheduleEvent) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_ScheduleEvent) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_ScheduleEvent) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_ScheduleEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_snsevent.go b/cloudformation/resources/aws-serverless-function_snsevent.go deleted file mode 100644 index ca7b148f23..0000000000 --- a/cloudformation/resources/aws-serverless-function_snsevent.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_SNSEvent AWS CloudFormation Resource (AWS::Serverless::Function.SNSEvent) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sns -type AWSServerlessFunction_SNSEvent struct { - - // Topic AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sns - Topic string `json:"Topic,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_SNSEvent) AWSCloudFormationType() string { - return "AWS::Serverless::Function.SNSEvent" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_SNSEvent) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_SNSEvent) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_SNSEvent) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_SNSEvent) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_SNSEvent) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_SNSEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_statemachinesampt.go b/cloudformation/resources/aws-serverless-function_statemachinesampt.go deleted file mode 100644 index a5b39146f7..0000000000 --- a/cloudformation/resources/aws-serverless-function_statemachinesampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_StateMachineSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.StateMachineSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_StateMachineSAMPT struct { - - // StateMachineName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - StateMachineName string `json:"StateMachineName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_StateMachineSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.StateMachineSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_StateMachineSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_StateMachineSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_StateMachineSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_StateMachineSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_StateMachineSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_StateMachineSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_streamsampt.go b/cloudformation/resources/aws-serverless-function_streamsampt.go deleted file mode 100644 index 4d727e2236..0000000000 --- a/cloudformation/resources/aws-serverless-function_streamsampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_StreamSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.StreamSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_StreamSAMPT struct { - - // StreamName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - StreamName string `json:"StreamName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_StreamSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.StreamSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_StreamSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_StreamSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_StreamSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_StreamSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_StreamSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_StreamSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_tablesampt.go b/cloudformation/resources/aws-serverless-function_tablesampt.go deleted file mode 100644 index 27f1e49ef6..0000000000 --- a/cloudformation/resources/aws-serverless-function_tablesampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_TableSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TableSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_TableSAMPT struct { - - // TableName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - TableName string `json:"TableName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_TableSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.TableSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_TableSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_TableSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_TableSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_TableSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_TableSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_TableSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_tablestreamsampt.go b/cloudformation/resources/aws-serverless-function_tablestreamsampt.go deleted file mode 100644 index 0adfb5fd46..0000000000 --- a/cloudformation/resources/aws-serverless-function_tablestreamsampt.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_TableStreamSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TableStreamSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_TableStreamSAMPT struct { - - // StreamName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - StreamName string `json:"StreamName,omitempty"` - - // TableName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - TableName string `json:"TableName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_TableStreamSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.TableStreamSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_TableStreamSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_TableStreamSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_TableStreamSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_TableStreamSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_TableStreamSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_TableStreamSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_topicsampt.go b/cloudformation/resources/aws-serverless-function_topicsampt.go deleted file mode 100644 index efce683890..0000000000 --- a/cloudformation/resources/aws-serverless-function_topicsampt.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_TopicSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TopicSAMPT) -// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst -type AWSServerlessFunction_TopicSAMPT struct { - - // TopicName AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst - TopicName string `json:"TopicName,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_TopicSAMPT) AWSCloudFormationType() string { - return "AWS::Serverless::Function.TopicSAMPT" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_TopicSAMPT) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_TopicSAMPT) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_TopicSAMPT) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_TopicSAMPT) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_TopicSAMPT) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_TopicSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-function_vpcconfig.go b/cloudformation/resources/aws-serverless-function_vpcconfig.go deleted file mode 100644 index 5fef4bf240..0000000000 --- a/cloudformation/resources/aws-serverless-function_vpcconfig.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessFunction_VpcConfig AWS CloudFormation Resource (AWS::Serverless::Function.VpcConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html -type AWSServerlessFunction_VpcConfig struct { - - // SecurityGroupIds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html - SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` - - // SubnetIds AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html - SubnetIds []string `json:"SubnetIds,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_VpcConfig) AWSCloudFormationType() string { - return "AWS::Serverless::Function.VpcConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_VpcConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_VpcConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_VpcConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_VpcConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_VpcConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-simpletable_primarykey.go b/cloudformation/resources/aws-serverless-simpletable_primarykey.go deleted file mode 100644 index fd29a44b72..0000000000 --- a/cloudformation/resources/aws-serverless-simpletable_primarykey.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessSimpleTable_PrimaryKey AWS CloudFormation Resource (AWS::Serverless::SimpleTable.PrimaryKey) -// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object -type AWSServerlessSimpleTable_PrimaryKey struct { - - // Name AWS CloudFormation Property - // Required: false - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object - Name string `json:"Name,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessSimpleTable_PrimaryKey) AWSCloudFormationType() string { - return "AWS::Serverless::SimpleTable.PrimaryKey" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessSimpleTable_PrimaryKey) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessSimpleTable_PrimaryKey) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessSimpleTable_PrimaryKey) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessSimpleTable_PrimaryKey) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessSimpleTable_PrimaryKey) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessSimpleTable_PrimaryKey) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-simpletable_provisionedthroughput.go b/cloudformation/resources/aws-serverless-simpletable_provisionedthroughput.go deleted file mode 100644 index 066da7ed2a..0000000000 --- a/cloudformation/resources/aws-serverless-simpletable_provisionedthroughput.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessSimpleTable_ProvisionedThroughput AWS CloudFormation Resource (AWS::Serverless::SimpleTable.ProvisionedThroughput) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html -type AWSServerlessSimpleTable_ProvisionedThroughput struct { - - // ReadCapacityUnits AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html - ReadCapacityUnits int `json:"ReadCapacityUnits,omitempty"` - - // WriteCapacityUnits AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html - WriteCapacityUnits int `json:"WriteCapacityUnits"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessSimpleTable_ProvisionedThroughput) AWSCloudFormationType() string { - return "AWS::Serverless::SimpleTable.ProvisionedThroughput" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessSimpleTable_ProvisionedThroughput) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessSimpleTable_ProvisionedThroughput) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessSimpleTable_ProvisionedThroughput) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessSimpleTable_ProvisionedThroughput) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessSimpleTable_ProvisionedThroughput) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessSimpleTable_ProvisionedThroughput) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-serverless-simpletable_ssespecification.go b/cloudformation/resources/aws-serverless-simpletable_ssespecification.go deleted file mode 100644 index 6761731a5e..0000000000 --- a/cloudformation/resources/aws-serverless-simpletable_ssespecification.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServerlessSimpleTable_SSESpecification AWS CloudFormation Resource (AWS::Serverless::SimpleTable.SSESpecification) -// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html -type AWSServerlessSimpleTable_SSESpecification struct { - - // SSEEnabled AWS CloudFormation Property - // Required: false - // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html - SSEEnabled bool `json:"SSEEnabled,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessSimpleTable_SSESpecification) AWSCloudFormationType() string { - return "AWS::Serverless::SimpleTable.SSESpecification" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessSimpleTable_SSESpecification) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessSimpleTable_SSESpecification) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessSimpleTable_SSESpecification) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessSimpleTable_SSESpecification) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessSimpleTable_SSESpecification) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessSimpleTable_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go b/cloudformation/resources/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go deleted file mode 100644 index cabdbcb0e5..0000000000 --- a/cloudformation/resources/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProduct.ProvisioningArtifactProperties) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html -type AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties struct { - - // Description AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-description - Description string `json:"Description,omitempty"` - - // DisableTemplateValidation AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-disabletemplatevalidation - DisableTemplateValidation bool `json:"DisableTemplateValidation,omitempty"` - - // Info AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-info - Info interface{} `json:"Info,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) AWSCloudFormationType() string { - return "AWS::ServiceCatalog::CloudFormationProduct.ProvisioningArtifactProperties" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go b/cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go deleted file mode 100644 index 47e0c050b0..0000000000 --- a/cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html -type AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) AWSCloudFormationType() string { - return "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-servicediscovery-service_dnsconfig.go b/cloudformation/resources/aws-servicediscovery-service_dnsconfig.go deleted file mode 100644 index abc6127563..0000000000 --- a/cloudformation/resources/aws-servicediscovery-service_dnsconfig.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServiceDiscoveryService_DnsConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.DnsConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html -type AWSServiceDiscoveryService_DnsConfig struct { - - // DnsRecords AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-dnsrecords - DnsRecords []AWSServiceDiscoveryService_DnsRecord `json:"DnsRecords,omitempty"` - - // NamespaceId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-namespaceid - NamespaceId string `json:"NamespaceId,omitempty"` - - // RoutingPolicy AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-routingpolicy - RoutingPolicy string `json:"RoutingPolicy,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService_DnsConfig) AWSCloudFormationType() string { - return "AWS::ServiceDiscovery::Service.DnsConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService_DnsConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService_DnsConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService_DnsConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService_DnsConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService_DnsConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService_DnsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-servicediscovery-service_dnsrecord.go b/cloudformation/resources/aws-servicediscovery-service_dnsrecord.go deleted file mode 100644 index 96c3993c27..0000000000 --- a/cloudformation/resources/aws-servicediscovery-service_dnsrecord.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServiceDiscoveryService_DnsRecord AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.DnsRecord) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html -type AWSServiceDiscoveryService_DnsRecord struct { - - // TTL AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html#cfn-servicediscovery-service-dnsrecord-ttl - TTL float64 `json:"TTL"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html#cfn-servicediscovery-service-dnsrecord-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService_DnsRecord) AWSCloudFormationType() string { - return "AWS::ServiceDiscovery::Service.DnsRecord" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService_DnsRecord) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService_DnsRecord) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService_DnsRecord) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService_DnsRecord) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService_DnsRecord) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService_DnsRecord) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-servicediscovery-service_healthcheckconfig.go b/cloudformation/resources/aws-servicediscovery-service_healthcheckconfig.go deleted file mode 100644 index 8b09d7e612..0000000000 --- a/cloudformation/resources/aws-servicediscovery-service_healthcheckconfig.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServiceDiscoveryService_HealthCheckConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.HealthCheckConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html -type AWSServiceDiscoveryService_HealthCheckConfig struct { - - // FailureThreshold AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-failurethreshold - FailureThreshold float64 `json:"FailureThreshold,omitempty"` - - // ResourcePath AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-resourcepath - ResourcePath string `json:"ResourcePath,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService_HealthCheckConfig) AWSCloudFormationType() string { - return "AWS::ServiceDiscovery::Service.HealthCheckConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService_HealthCheckConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService_HealthCheckConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService_HealthCheckConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService_HealthCheckConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService_HealthCheckConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService_HealthCheckConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-servicediscovery-service_healthcheckcustomconfig.go b/cloudformation/resources/aws-servicediscovery-service_healthcheckcustomconfig.go deleted file mode 100644 index a885ca98d2..0000000000 --- a/cloudformation/resources/aws-servicediscovery-service_healthcheckcustomconfig.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSServiceDiscoveryService_HealthCheckCustomConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.HealthCheckCustomConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckcustomconfig.html -type AWSServiceDiscoveryService_HealthCheckCustomConfig struct { - - // FailureThreshold AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckcustomconfig.html#cfn-servicediscovery-service-healthcheckcustomconfig-failurethreshold - FailureThreshold float64 `json:"FailureThreshold,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService_HealthCheckCustomConfig) AWSCloudFormationType() string { - return "AWS::ServiceDiscovery::Service.HealthCheckCustomConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService_HealthCheckCustomConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService_HealthCheckCustomConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService_HealthCheckCustomConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService_HealthCheckCustomConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService_HealthCheckCustomConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService_HealthCheckCustomConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination.go b/cloudformation/resources/aws-ses-configurationseteventdestination.go deleted file mode 100644 index 65d14be88b..0000000000 --- a/cloudformation/resources/aws-ses-configurationseteventdestination.go +++ /dev/null @@ -1,128 +0,0 @@ -package resources - -import ( - "bytes" - "encoding/json" - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" -) - -// AWSSESConfigurationSetEventDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html -type AWSSESConfigurationSetEventDestination struct { - - // ConfigurationSetName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-configurationsetname - ConfigurationSetName string `json:"ConfigurationSetName,omitempty"` - - // EventDestination AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-eventdestination - EventDestination *AWSSESConfigurationSetEventDestination_EventDestination `json:"EventDestination,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination) AWSCloudFormationType() string { - return "AWS::SES::ConfigurationSetEventDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} - -// MarshalJSON is a custom JSON marshalling hook that embeds this object into -// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSESConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { - type Properties AWSSESConfigurationSetEventDestination - return json.Marshal(&struct { - Type string - Properties Properties - DependsOn []string `json:"DependsOn,omitempty"` - Metadata map[string]interface{} `json:"Metadata,omitempty"` - DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` - }{ - Type: r.AWSCloudFormationType(), - Properties: (Properties)(r), - DependsOn: r._dependsOn, - Metadata: r._metadata, - DeletionPolicy: r._deletionPolicy, - }) -} - -// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer -// AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSESConfigurationSetEventDestination) UnmarshalJSON(b []byte) error { - type Properties AWSSESConfigurationSetEventDestination - res := &struct { - Type string - Properties *Properties - DependsOn []string - Metadata map[string]interface{} - DeletionPolicy string - }{} - - dec := json.NewDecoder(bytes.NewReader(b)) - dec.DisallowUnknownFields() // Force error if unknown field is found - - if err := dec.Decode(&res); err != nil { - fmt.Printf("ERROR: %s\n", err) - return err - } - - // If the resource has no Properties set, it could be nil - if res.Properties != nil { - *r = AWSSESConfigurationSetEventDestination(*res.Properties) - } - if res.DependsOn != nil { - r._dependsOn = res.DependsOn - } - if res.Metadata != nil { - r._metadata = res.Metadata - } - if res.DeletionPolicy != "" { - r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) - } - return nil -} diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination_cloudwatchdestination.go b/cloudformation/resources/aws-ses-configurationseteventdestination_cloudwatchdestination.go deleted file mode 100644 index 82f8342553..0000000000 --- a/cloudformation/resources/aws-ses-configurationseteventdestination_cloudwatchdestination.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESConfigurationSetEventDestination_CloudWatchDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.CloudWatchDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-cloudwatchdestination.html -type AWSSESConfigurationSetEventDestination_CloudWatchDestination struct { - - // DimensionConfigurations AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-cloudwatchdestination.html#cfn-ses-configurationseteventdestination-cloudwatchdestination-dimensionconfigurations - DimensionConfigurations []AWSSESConfigurationSetEventDestination_DimensionConfiguration `json:"DimensionConfigurations,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination_CloudWatchDestination) AWSCloudFormationType() string { - return "AWS::SES::ConfigurationSetEventDestination.CloudWatchDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination_CloudWatchDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination_CloudWatchDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination_CloudWatchDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination_CloudWatchDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination_CloudWatchDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination_CloudWatchDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination_dimensionconfiguration.go b/cloudformation/resources/aws-ses-configurationseteventdestination_dimensionconfiguration.go deleted file mode 100644 index 477547e322..0000000000 --- a/cloudformation/resources/aws-ses-configurationseteventdestination_dimensionconfiguration.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESConfigurationSetEventDestination_DimensionConfiguration AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.DimensionConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html -type AWSSESConfigurationSetEventDestination_DimensionConfiguration struct { - - // DefaultDimensionValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-defaultdimensionvalue - DefaultDimensionValue string `json:"DefaultDimensionValue,omitempty"` - - // DimensionName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-dimensionname - DimensionName string `json:"DimensionName,omitempty"` - - // DimensionValueSource AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-dimensionvaluesource - DimensionValueSource string `json:"DimensionValueSource,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination_DimensionConfiguration) AWSCloudFormationType() string { - return "AWS::SES::ConfigurationSetEventDestination.DimensionConfiguration" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination_DimensionConfiguration) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination_DimensionConfiguration) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination_DimensionConfiguration) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination_DimensionConfiguration) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination_DimensionConfiguration) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination_DimensionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination_eventdestination.go b/cloudformation/resources/aws-ses-configurationseteventdestination_eventdestination.go deleted file mode 100644 index 514ff2612a..0000000000 --- a/cloudformation/resources/aws-ses-configurationseteventdestination_eventdestination.go +++ /dev/null @@ -1,83 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESConfigurationSetEventDestination_EventDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.EventDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html -type AWSSESConfigurationSetEventDestination_EventDestination struct { - - // CloudWatchDestination AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-cloudwatchdestination - CloudWatchDestination *AWSSESConfigurationSetEventDestination_CloudWatchDestination `json:"CloudWatchDestination,omitempty"` - - // Enabled AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-enabled - Enabled bool `json:"Enabled,omitempty"` - - // KinesisFirehoseDestination AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-kinesisfirehosedestination - KinesisFirehoseDestination *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination `json:"KinesisFirehoseDestination,omitempty"` - - // MatchingEventTypes AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-matchingeventtypes - MatchingEventTypes []string `json:"MatchingEventTypes,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination_EventDestination) AWSCloudFormationType() string { - return "AWS::SES::ConfigurationSetEventDestination.EventDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination_EventDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination_EventDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination_EventDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination_EventDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination_EventDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination_EventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go b/cloudformation/resources/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go deleted file mode 100644 index 2692d38be8..0000000000 --- a/cloudformation/resources/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.KinesisFirehoseDestination) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html -type AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination struct { - - // DeliveryStreamARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html#cfn-ses-configurationseteventdestination-kinesisfirehosedestination-deliverystreamarn - DeliveryStreamARN string `json:"DeliveryStreamARN,omitempty"` - - // IAMRoleARN AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html#cfn-ses-configurationseteventdestination-kinesisfirehosedestination-iamrolearn - IAMRoleARN string `json:"IAMRoleARN,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) AWSCloudFormationType() string { - return "AWS::SES::ConfigurationSetEventDestination.KinesisFirehoseDestination" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-receiptfilter_filter.go b/cloudformation/resources/aws-ses-receiptfilter_filter.go deleted file mode 100644 index e8da1d8c18..0000000000 --- a/cloudformation/resources/aws-ses-receiptfilter_filter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESReceiptFilter_Filter AWS CloudFormation Resource (AWS::SES::ReceiptFilter.Filter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html -type AWSSESReceiptFilter_Filter struct { - - // IpFilter AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html#cfn-ses-receiptfilter-filter-ipfilter - IpFilter *AWSSESReceiptFilter_IpFilter `json:"IpFilter,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html#cfn-ses-receiptfilter-filter-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptFilter_Filter) AWSCloudFormationType() string { - return "AWS::SES::ReceiptFilter.Filter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptFilter_Filter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptFilter_Filter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptFilter_Filter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptFilter_Filter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptFilter_Filter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptFilter_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-receiptfilter_ipfilter.go b/cloudformation/resources/aws-ses-receiptfilter_ipfilter.go deleted file mode 100644 index 3a646dac23..0000000000 --- a/cloudformation/resources/aws-ses-receiptfilter_ipfilter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESReceiptFilter_IpFilter AWS CloudFormation Resource (AWS::SES::ReceiptFilter.IpFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html -type AWSSESReceiptFilter_IpFilter struct { - - // Cidr AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html#cfn-ses-receiptfilter-ipfilter-cidr - Cidr string `json:"Cidr,omitempty"` - - // Policy AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html#cfn-ses-receiptfilter-ipfilter-policy - Policy string `json:"Policy,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptFilter_IpFilter) AWSCloudFormationType() string { - return "AWS::SES::ReceiptFilter.IpFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptFilter_IpFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptFilter_IpFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptFilter_IpFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptFilter_IpFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptFilter_IpFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptFilter_IpFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-receiptrule_action.go b/cloudformation/resources/aws-ses-receiptrule_action.go deleted file mode 100644 index 7b86b640be..0000000000 --- a/cloudformation/resources/aws-ses-receiptrule_action.go +++ /dev/null @@ -1,93 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESReceiptRule_Action AWS CloudFormation Resource (AWS::SES::ReceiptRule.Action) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html -type AWSSESReceiptRule_Action struct { - - // AddHeaderAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-addheaderaction - AddHeaderAction *AWSSESReceiptRule_AddHeaderAction `json:"AddHeaderAction,omitempty"` - - // BounceAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-bounceaction - BounceAction *AWSSESReceiptRule_BounceAction `json:"BounceAction,omitempty"` - - // LambdaAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-lambdaaction - LambdaAction *AWSSESReceiptRule_LambdaAction `json:"LambdaAction,omitempty"` - - // S3Action AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-s3action - S3Action *AWSSESReceiptRule_S3Action `json:"S3Action,omitempty"` - - // SNSAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-snsaction - SNSAction *AWSSESReceiptRule_SNSAction `json:"SNSAction,omitempty"` - - // StopAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-stopaction - StopAction *AWSSESReceiptRule_StopAction `json:"StopAction,omitempty"` - - // WorkmailAction AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-workmailaction - WorkmailAction *AWSSESReceiptRule_WorkmailAction `json:"WorkmailAction,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_Action) AWSCloudFormationType() string { - return "AWS::SES::ReceiptRule.Action" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_Action) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_Action) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_Action) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_Action) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_Action) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-receiptrule_addheaderaction.go b/cloudformation/resources/aws-ses-receiptrule_addheaderaction.go deleted file mode 100644 index bbd239581b..0000000000 --- a/cloudformation/resources/aws-ses-receiptrule_addheaderaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESReceiptRule_AddHeaderAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.AddHeaderAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html -type AWSSESReceiptRule_AddHeaderAction struct { - - // HeaderName AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html#cfn-ses-receiptrule-addheaderaction-headername - HeaderName string `json:"HeaderName,omitempty"` - - // HeaderValue AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html#cfn-ses-receiptrule-addheaderaction-headervalue - HeaderValue string `json:"HeaderValue,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_AddHeaderAction) AWSCloudFormationType() string { - return "AWS::SES::ReceiptRule.AddHeaderAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_AddHeaderAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_AddHeaderAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_AddHeaderAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_AddHeaderAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_AddHeaderAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_AddHeaderAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-receiptrule_stopaction.go b/cloudformation/resources/aws-ses-receiptrule_stopaction.go deleted file mode 100644 index 689f11e403..0000000000 --- a/cloudformation/resources/aws-ses-receiptrule_stopaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESReceiptRule_StopAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.StopAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html -type AWSSESReceiptRule_StopAction struct { - - // Scope AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html#cfn-ses-receiptrule-stopaction-scope - Scope string `json:"Scope,omitempty"` - - // TopicArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html#cfn-ses-receiptrule-stopaction-topicarn - TopicArn string `json:"TopicArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_StopAction) AWSCloudFormationType() string { - return "AWS::SES::ReceiptRule.StopAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_StopAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_StopAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_StopAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_StopAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_StopAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_StopAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ses-receiptrule_workmailaction.go b/cloudformation/resources/aws-ses-receiptrule_workmailaction.go deleted file mode 100644 index c0cab15375..0000000000 --- a/cloudformation/resources/aws-ses-receiptrule_workmailaction.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSESReceiptRule_WorkmailAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.WorkmailAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html -type AWSSESReceiptRule_WorkmailAction struct { - - // OrganizationArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html#cfn-ses-receiptrule-workmailaction-organizationarn - OrganizationArn string `json:"OrganizationArn,omitempty"` - - // TopicArn AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html#cfn-ses-receiptrule-workmailaction-topicarn - TopicArn string `json:"TopicArn,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_WorkmailAction) AWSCloudFormationType() string { - return "AWS::SES::ReceiptRule.WorkmailAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_WorkmailAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_WorkmailAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_WorkmailAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_WorkmailAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_WorkmailAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_WorkmailAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-association_instanceassociationoutputlocation.go b/cloudformation/resources/aws-ssm-association_instanceassociationoutputlocation.go deleted file mode 100644 index 5c66340eab..0000000000 --- a/cloudformation/resources/aws-ssm-association_instanceassociationoutputlocation.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMAssociation_InstanceAssociationOutputLocation AWS CloudFormation Resource (AWS::SSM::Association.InstanceAssociationOutputLocation) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-instanceassociationoutputlocation.html -type AWSSSMAssociation_InstanceAssociationOutputLocation struct { - - // S3Location AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-instanceassociationoutputlocation.html#cfn-ssm-association-instanceassociationoutputlocation-s3location - S3Location *AWSSSMAssociation_S3OutputLocation `json:"S3Location,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMAssociation_InstanceAssociationOutputLocation) AWSCloudFormationType() string { - return "AWS::SSM::Association.InstanceAssociationOutputLocation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation_InstanceAssociationOutputLocation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation_InstanceAssociationOutputLocation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation_InstanceAssociationOutputLocation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation_InstanceAssociationOutputLocation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation_InstanceAssociationOutputLocation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation_InstanceAssociationOutputLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-association_parametervalues.go b/cloudformation/resources/aws-ssm-association_parametervalues.go deleted file mode 100644 index 338843f85c..0000000000 --- a/cloudformation/resources/aws-ssm-association_parametervalues.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMAssociation_ParameterValues AWS CloudFormation Resource (AWS::SSM::Association.ParameterValues) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html -type AWSSSMAssociation_ParameterValues struct { - - // ParameterValues AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html#cfn-ssm-association-parametervalues-parametervalues - ParameterValues []string `json:"ParameterValues,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMAssociation_ParameterValues) AWSCloudFormationType() string { - return "AWS::SSM::Association.ParameterValues" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation_ParameterValues) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation_ParameterValues) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation_ParameterValues) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation_ParameterValues) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation_ParameterValues) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation_ParameterValues) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-association_s3outputlocation.go b/cloudformation/resources/aws-ssm-association_s3outputlocation.go deleted file mode 100644 index d65a2fd2e9..0000000000 --- a/cloudformation/resources/aws-ssm-association_s3outputlocation.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMAssociation_S3OutputLocation AWS CloudFormation Resource (AWS::SSM::Association.S3OutputLocation) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html -type AWSSSMAssociation_S3OutputLocation struct { - - // OutputS3BucketName AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3bucketname - OutputS3BucketName string `json:"OutputS3BucketName,omitempty"` - - // OutputS3KeyPrefix AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3keyprefix - OutputS3KeyPrefix string `json:"OutputS3KeyPrefix,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMAssociation_S3OutputLocation) AWSCloudFormationType() string { - return "AWS::SSM::Association.S3OutputLocation" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation_S3OutputLocation) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation_S3OutputLocation) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation_S3OutputLocation) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation_S3OutputLocation) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation_S3OutputLocation) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation_S3OutputLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtarget_targets.go b/cloudformation/resources/aws-ssm-maintenancewindowtarget_targets.go deleted file mode 100644 index e5e5b4dd85..0000000000 --- a/cloudformation/resources/aws-ssm-maintenancewindowtarget_targets.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMMaintenanceWindowTarget_Targets AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTarget.Targets) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html -type AWSSSMMaintenanceWindowTarget_Targets struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html#cfn-ssm-maintenancewindowtarget-targets-key - Key string `json:"Key,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html#cfn-ssm-maintenancewindowtarget-targets-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTarget_Targets) AWSCloudFormationType() string { - return "AWS::SSM::MaintenanceWindowTarget.Targets" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTarget_Targets) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTarget_Targets) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTarget_Targets) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTarget_Targets) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTarget_Targets) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTarget_Targets) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go b/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go deleted file mode 100644 index b502ec462f..0000000000 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowAutomationParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html -type AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters struct { - - // DocumentVersion AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowautomationparameters-documentversion - DocumentVersion string `json:"DocumentVersion,omitempty"` - - // Parameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowautomationparameters-parameters - Parameters interface{} `json:"Parameters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) AWSCloudFormationType() string { - return "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowAutomationParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go b/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go deleted file mode 100644 index d463e6046c..0000000000 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowLambdaParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html -type AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters struct { - - // ClientContext AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-clientcontext - ClientContext string `json:"ClientContext,omitempty"` - - // Payload AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-payload - Payload string `json:"Payload,omitempty"` - - // Qualifier AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-qualifier - Qualifier string `json:"Qualifier,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) AWSCloudFormationType() string { - return "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowLambdaParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go b/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go deleted file mode 100644 index 3b5a789ccc..0000000000 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowStepFunctionsParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html -type AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters struct { - - // Input AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters-input - Input string `json:"Input,omitempty"` - - // Name AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters-name - Name string `json:"Name,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) AWSCloudFormationType() string { - return "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowStepFunctionsParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_notificationconfig.go b/cloudformation/resources/aws-ssm-maintenancewindowtask_notificationconfig.go deleted file mode 100644 index 76240d5847..0000000000 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_notificationconfig.go +++ /dev/null @@ -1,73 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMMaintenanceWindowTask_NotificationConfig AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.NotificationConfig) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html -type AWSSSMMaintenanceWindowTask_NotificationConfig struct { - - // NotificationArn AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationarn - NotificationArn string `json:"NotificationArn,omitempty"` - - // NotificationEvents AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationevents - NotificationEvents []string `json:"NotificationEvents,omitempty"` - - // NotificationType AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationtype - NotificationType string `json:"NotificationType,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_NotificationConfig) AWSCloudFormationType() string { - return "AWS::SSM::MaintenanceWindowTask.NotificationConfig" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_NotificationConfig) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_NotificationConfig) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_NotificationConfig) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_NotificationConfig) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_NotificationConfig) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_NotificationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_target.go b/cloudformation/resources/aws-ssm-maintenancewindowtask_target.go deleted file mode 100644 index c345ad57fd..0000000000 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_target.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMMaintenanceWindowTask_Target AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.Target) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html -type AWSSSMMaintenanceWindowTask_Target struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html#cfn-ssm-maintenancewindowtask-target-key - Key string `json:"Key,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html#cfn-ssm-maintenancewindowtask-target-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_Target) AWSCloudFormationType() string { - return "AWS::SSM::MaintenanceWindowTask.Target" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_Target) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_Target) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_Target) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_Target) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_Target) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_Target) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_taskinvocationparameters.go b/cloudformation/resources/aws-ssm-maintenancewindowtask_taskinvocationparameters.go deleted file mode 100644 index 2f287fe78b..0000000000 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_taskinvocationparameters.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMMaintenanceWindowTask_TaskInvocationParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.TaskInvocationParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html -type AWSSSMMaintenanceWindowTask_TaskInvocationParameters struct { - - // MaintenanceWindowAutomationParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowautomationparameters - MaintenanceWindowAutomationParameters *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters `json:"MaintenanceWindowAutomationParameters,omitempty"` - - // MaintenanceWindowLambdaParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowlambdaparameters - MaintenanceWindowLambdaParameters *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters `json:"MaintenanceWindowLambdaParameters,omitempty"` - - // MaintenanceWindowRunCommandParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowruncommandparameters - MaintenanceWindowRunCommandParameters *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters `json:"MaintenanceWindowRunCommandParameters,omitempty"` - - // MaintenanceWindowStepFunctionsParameters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowstepfunctionsparameters - MaintenanceWindowStepFunctionsParameters *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters `json:"MaintenanceWindowStepFunctionsParameters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) AWSCloudFormationType() string { - return "AWS::SSM::MaintenanceWindowTask.TaskInvocationParameters" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-patchbaseline_patchfilter.go b/cloudformation/resources/aws-ssm-patchbaseline_patchfilter.go deleted file mode 100644 index 41034b1389..0000000000 --- a/cloudformation/resources/aws-ssm-patchbaseline_patchfilter.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMPatchBaseline_PatchFilter AWS CloudFormation Resource (AWS::SSM::PatchBaseline.PatchFilter) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html -type AWSSSMPatchBaseline_PatchFilter struct { - - // Key AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html#cfn-ssm-patchbaseline-patchfilter-key - Key string `json:"Key,omitempty"` - - // Values AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html#cfn-ssm-patchbaseline-patchfilter-values - Values []string `json:"Values,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline_PatchFilter) AWSCloudFormationType() string { - return "AWS::SSM::PatchBaseline.PatchFilter" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_PatchFilter) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_PatchFilter) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_PatchFilter) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_PatchFilter) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_PatchFilter) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_PatchFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-patchbaseline_patchfiltergroup.go b/cloudformation/resources/aws-ssm-patchbaseline_patchfiltergroup.go deleted file mode 100644 index 2e25df5407..0000000000 --- a/cloudformation/resources/aws-ssm-patchbaseline_patchfiltergroup.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMPatchBaseline_PatchFilterGroup AWS CloudFormation Resource (AWS::SSM::PatchBaseline.PatchFilterGroup) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfiltergroup.html -type AWSSSMPatchBaseline_PatchFilterGroup struct { - - // PatchFilters AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfiltergroup.html#cfn-ssm-patchbaseline-patchfiltergroup-patchfilters - PatchFilters []AWSSSMPatchBaseline_PatchFilter `json:"PatchFilters,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline_PatchFilterGroup) AWSCloudFormationType() string { - return "AWS::SSM::PatchBaseline.PatchFilterGroup" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_PatchFilterGroup) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_PatchFilterGroup) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_PatchFilterGroup) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_PatchFilterGroup) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_PatchFilterGroup) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_PatchFilterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-ssm-patchbaseline_rulegroup.go b/cloudformation/resources/aws-ssm-patchbaseline_rulegroup.go deleted file mode 100644 index 3daf39f11b..0000000000 --- a/cloudformation/resources/aws-ssm-patchbaseline_rulegroup.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSSSMPatchBaseline_RuleGroup AWS CloudFormation Resource (AWS::SSM::PatchBaseline.RuleGroup) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rulegroup.html -type AWSSSMPatchBaseline_RuleGroup struct { - - // PatchRules AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rulegroup.html#cfn-ssm-patchbaseline-rulegroup-patchrules - PatchRules []AWSSSMPatchBaseline_Rule `json:"PatchRules,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline_RuleGroup) AWSCloudFormationType() string { - return "AWS::SSM::PatchBaseline.RuleGroup" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_RuleGroup) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_RuleGroup) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_RuleGroup) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_RuleGroup) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_RuleGroup) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_RuleGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-stepfunctions-activity_tagsentry.go b/cloudformation/resources/aws-stepfunctions-activity_tagsentry.go deleted file mode 100644 index 0f2d6e6e8f..0000000000 --- a/cloudformation/resources/aws-stepfunctions-activity_tagsentry.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSStepFunctionsActivity_TagsEntry AWS CloudFormation Resource (AWS::StepFunctions::Activity.TagsEntry) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html -type AWSStepFunctionsActivity_TagsEntry struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html#cfn-stepfunctions-activity-tagsentry-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html#cfn-stepfunctions-activity-tagsentry-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSStepFunctionsActivity_TagsEntry) AWSCloudFormationType() string { - return "AWS::StepFunctions::Activity.TagsEntry" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSStepFunctionsActivity_TagsEntry) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSStepFunctionsActivity_TagsEntry) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSStepFunctionsActivity_TagsEntry) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSStepFunctionsActivity_TagsEntry) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSStepFunctionsActivity_TagsEntry) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSStepFunctionsActivity_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-stepfunctions-statemachine_tagsentry.go b/cloudformation/resources/aws-stepfunctions-statemachine_tagsentry.go deleted file mode 100644 index 0b11f21de3..0000000000 --- a/cloudformation/resources/aws-stepfunctions-statemachine_tagsentry.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSStepFunctionsStateMachine_TagsEntry AWS CloudFormation Resource (AWS::StepFunctions::StateMachine.TagsEntry) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html -type AWSStepFunctionsStateMachine_TagsEntry struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html#cfn-stepfunctions-statemachine-tagsentry-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html#cfn-stepfunctions-statemachine-tagsentry-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSStepFunctionsStateMachine_TagsEntry) AWSCloudFormationType() string { - return "AWS::StepFunctions::StateMachine.TagsEntry" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSStepFunctionsStateMachine_TagsEntry) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSStepFunctionsStateMachine_TagsEntry) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSStepFunctionsStateMachine_TagsEntry) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSStepFunctionsStateMachine_TagsEntry) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSStepFunctionsStateMachine_TagsEntry) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSStepFunctionsStateMachine_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-transfer-server_endpointdetails.go b/cloudformation/resources/aws-transfer-server_endpointdetails.go deleted file mode 100644 index f21e704d24..0000000000 --- a/cloudformation/resources/aws-transfer-server_endpointdetails.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSTransferServer_EndpointDetails AWS CloudFormation Resource (AWS::Transfer::Server.EndpointDetails) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html -type AWSTransferServer_EndpointDetails struct { - - // VpcEndpointId AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html#cfn-transfer-server-endpointdetails-vpcendpointid - VpcEndpointId string `json:"VpcEndpointId,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSTransferServer_EndpointDetails) AWSCloudFormationType() string { - return "AWS::Transfer::Server.EndpointDetails" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferServer_EndpointDetails) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferServer_EndpointDetails) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferServer_EndpointDetails) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferServer_EndpointDetails) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferServer_EndpointDetails) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferServer_EndpointDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-transfer-server_identityproviderdetails.go b/cloudformation/resources/aws-transfer-server_identityproviderdetails.go deleted file mode 100644 index 8ba62a796e..0000000000 --- a/cloudformation/resources/aws-transfer-server_identityproviderdetails.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSTransferServer_IdentityProviderDetails AWS CloudFormation Resource (AWS::Transfer::Server.IdentityProviderDetails) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html -type AWSTransferServer_IdentityProviderDetails struct { - - // InvocationRole AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html#cfn-transfer-server-identityproviderdetails-invocationrole - InvocationRole string `json:"InvocationRole,omitempty"` - - // Url AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html#cfn-transfer-server-identityproviderdetails-url - Url string `json:"Url,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSTransferServer_IdentityProviderDetails) AWSCloudFormationType() string { - return "AWS::Transfer::Server.IdentityProviderDetails" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferServer_IdentityProviderDetails) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferServer_IdentityProviderDetails) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferServer_IdentityProviderDetails) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferServer_IdentityProviderDetails) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferServer_IdentityProviderDetails) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferServer_IdentityProviderDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-transfer-user_sshpublickey.go b/cloudformation/resources/aws-transfer-user_sshpublickey.go deleted file mode 100644 index 4140ff5ccb..0000000000 --- a/cloudformation/resources/aws-transfer-user_sshpublickey.go +++ /dev/null @@ -1,58 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSTransferUser_SshPublicKey AWS CloudFormation Resource (AWS::Transfer::User.SshPublicKey) -// See: -type AWSTransferUser_SshPublicKey struct { - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSTransferUser_SshPublicKey) AWSCloudFormationType() string { - return "AWS::Transfer::User.SshPublicKey" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferUser_SshPublicKey) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferUser_SshPublicKey) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferUser_SshPublicKey) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferUser_SshPublicKey) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferUser_SshPublicKey) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferUser_SshPublicKey) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-waf-bytematchset_fieldtomatch.go b/cloudformation/resources/aws-waf-bytematchset_fieldtomatch.go deleted file mode 100644 index dd55eb438a..0000000000 --- a/cloudformation/resources/aws-waf-bytematchset_fieldtomatch.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFByteMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::ByteMatchSet.FieldToMatch) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html -type AWSWAFByteMatchSet_FieldToMatch struct { - - // Data AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-data - Data string `json:"Data,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFByteMatchSet_FieldToMatch) AWSCloudFormationType() string { - return "AWS::WAF::ByteMatchSet.FieldToMatch" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFByteMatchSet_FieldToMatch) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFByteMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFByteMatchSet_FieldToMatch) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFByteMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFByteMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFByteMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-waf-sizeconstraintset_fieldtomatch.go b/cloudformation/resources/aws-waf-sizeconstraintset_fieldtomatch.go deleted file mode 100644 index 2dfecd989b..0000000000 --- a/cloudformation/resources/aws-waf-sizeconstraintset_fieldtomatch.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFSizeConstraintSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::SizeConstraintSet.FieldToMatch) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html -type AWSWAFSizeConstraintSet_FieldToMatch struct { - - // Data AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data - Data string `json:"Data,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSizeConstraintSet_FieldToMatch) AWSCloudFormationType() string { - return "AWS::WAF::SizeConstraintSet.FieldToMatch" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSizeConstraintSet_FieldToMatch) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSizeConstraintSet_FieldToMatch) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSizeConstraintSet_FieldToMatch) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSizeConstraintSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSizeConstraintSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSizeConstraintSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-waf-sqlinjectionmatchset_fieldtomatch.go b/cloudformation/resources/aws-waf-sqlinjectionmatchset_fieldtomatch.go deleted file mode 100644 index 42edeb90de..0000000000 --- a/cloudformation/resources/aws-waf-sqlinjectionmatchset_fieldtomatch.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFSqlInjectionMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::SqlInjectionMatchSet.FieldToMatch) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html -type AWSWAFSqlInjectionMatchSet_FieldToMatch struct { - - // Data AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data - Data string `json:"Data,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSqlInjectionMatchSet_FieldToMatch) AWSCloudFormationType() string { - return "AWS::WAF::SqlInjectionMatchSet.FieldToMatch" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSqlInjectionMatchSet_FieldToMatch) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSqlInjectionMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSqlInjectionMatchSet_FieldToMatch) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSqlInjectionMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSqlInjectionMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSqlInjectionMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go b/cloudformation/resources/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go deleted file mode 100644 index 0b0e66a659..0000000000 --- a/cloudformation/resources/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple AWS CloudFormation Resource (AWS::WAF::SqlInjectionMatchSet.SqlInjectionMatchTuple) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html -type AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple struct { - - // FieldToMatch AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-fieldtomatch - FieldToMatch *AWSWAFSqlInjectionMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` - - // TextTransformation AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-texttransformation - TextTransformation string `json:"TextTransformation,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) AWSCloudFormationType() string { - return "AWS::WAF::SqlInjectionMatchSet.SqlInjectionMatchTuple" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-waf-webacl_wafaction.go b/cloudformation/resources/aws-waf-webacl_wafaction.go deleted file mode 100644 index cb38fae810..0000000000 --- a/cloudformation/resources/aws-waf-webacl_wafaction.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFWebACL_WafAction AWS CloudFormation Resource (AWS::WAF::WebACL.WafAction) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html -type AWSWAFWebACL_WafAction struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html#cfn-waf-webacl-action-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFWebACL_WafAction) AWSCloudFormationType() string { - return "AWS::WAF::WebACL.WafAction" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFWebACL_WafAction) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFWebACL_WafAction) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFWebACL_WafAction) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFWebACL_WafAction) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFWebACL_WafAction) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFWebACL_WafAction) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-waf-xssmatchset_fieldtomatch.go b/cloudformation/resources/aws-waf-xssmatchset_fieldtomatch.go deleted file mode 100644 index 717dff652d..0000000000 --- a/cloudformation/resources/aws-waf-xssmatchset_fieldtomatch.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFXssMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::XssMatchSet.FieldToMatch) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html -type AWSWAFXssMatchSet_FieldToMatch struct { - - // Data AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-data - Data string `json:"Data,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFXssMatchSet_FieldToMatch) AWSCloudFormationType() string { - return "AWS::WAF::XssMatchSet.FieldToMatch" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFXssMatchSet_FieldToMatch) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFXssMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFXssMatchSet_FieldToMatch) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFXssMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFXssMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFXssMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-waf-xssmatchset_xssmatchtuple.go b/cloudformation/resources/aws-waf-xssmatchset_xssmatchtuple.go deleted file mode 100644 index 0ea16b7320..0000000000 --- a/cloudformation/resources/aws-waf-xssmatchset_xssmatchtuple.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFXssMatchSet_XssMatchTuple AWS CloudFormation Resource (AWS::WAF::XssMatchSet.XssMatchTuple) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html -type AWSWAFXssMatchSet_XssMatchTuple struct { - - // FieldToMatch AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch - FieldToMatch *AWSWAFXssMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` - - // TextTransformation AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-texttransformation - TextTransformation string `json:"TextTransformation,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFXssMatchSet_XssMatchTuple) AWSCloudFormationType() string { - return "AWS::WAF::XssMatchSet.XssMatchTuple" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFXssMatchSet_XssMatchTuple) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFXssMatchSet_XssMatchTuple) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFXssMatchSet_XssMatchTuple) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFXssMatchSet_XssMatchTuple) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFXssMatchSet_XssMatchTuple) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFXssMatchSet_XssMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-bytematchset_fieldtomatch.go b/cloudformation/resources/aws-wafregional-bytematchset_fieldtomatch.go deleted file mode 100644 index 0010b163ab..0000000000 --- a/cloudformation/resources/aws-wafregional-bytematchset_fieldtomatch.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalByteMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::ByteMatchSet.FieldToMatch) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html -type AWSWAFRegionalByteMatchSet_FieldToMatch struct { - - // Data AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-data - Data string `json:"Data,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalByteMatchSet_FieldToMatch) AWSCloudFormationType() string { - return "AWS::WAFRegional::ByteMatchSet.FieldToMatch" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalByteMatchSet_FieldToMatch) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalByteMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalByteMatchSet_FieldToMatch) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalByteMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalByteMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalByteMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-geomatchset_geomatchconstraint.go b/cloudformation/resources/aws-wafregional-geomatchset_geomatchconstraint.go deleted file mode 100644 index e4439637a4..0000000000 --- a/cloudformation/resources/aws-wafregional-geomatchset_geomatchconstraint.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalGeoMatchSet_GeoMatchConstraint AWS CloudFormation Resource (AWS::WAFRegional::GeoMatchSet.GeoMatchConstraint) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html -type AWSWAFRegionalGeoMatchSet_GeoMatchConstraint struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html#cfn-wafregional-geomatchset-geomatchconstraint-type - Type string `json:"Type,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html#cfn-wafregional-geomatchset-geomatchconstraint-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) AWSCloudFormationType() string { - return "AWS::WAFRegional::GeoMatchSet.GeoMatchConstraint" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-ipset_ipsetdescriptor.go b/cloudformation/resources/aws-wafregional-ipset_ipsetdescriptor.go deleted file mode 100644 index 62638ed945..0000000000 --- a/cloudformation/resources/aws-wafregional-ipset_ipsetdescriptor.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalIPSet_IPSetDescriptor AWS CloudFormation Resource (AWS::WAFRegional::IPSet.IPSetDescriptor) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html -type AWSWAFRegionalIPSet_IPSetDescriptor struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-type - Type string `json:"Type,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalIPSet_IPSetDescriptor) AWSCloudFormationType() string { - return "AWS::WAFRegional::IPSet.IPSetDescriptor" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalIPSet_IPSetDescriptor) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalIPSet_IPSetDescriptor) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalIPSet_IPSetDescriptor) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalIPSet_IPSetDescriptor) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalIPSet_IPSetDescriptor) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalIPSet_IPSetDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-sizeconstraintset_fieldtomatch.go b/cloudformation/resources/aws-wafregional-sizeconstraintset_fieldtomatch.go deleted file mode 100644 index e4e8a1a2f0..0000000000 --- a/cloudformation/resources/aws-wafregional-sizeconstraintset_fieldtomatch.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalSizeConstraintSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::SizeConstraintSet.FieldToMatch) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html -type AWSWAFRegionalSizeConstraintSet_FieldToMatch struct { - - // Data AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-data - Data string `json:"Data,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSizeConstraintSet_FieldToMatch) AWSCloudFormationType() string { - return "AWS::WAFRegional::SizeConstraintSet.FieldToMatch" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSizeConstraintSet_FieldToMatch) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSizeConstraintSet_FieldToMatch) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSizeConstraintSet_FieldToMatch) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSizeConstraintSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSizeConstraintSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSizeConstraintSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-sizeconstraintset_sizeconstraint.go b/cloudformation/resources/aws-wafregional-sizeconstraintset_sizeconstraint.go deleted file mode 100644 index d4a7e63937..0000000000 --- a/cloudformation/resources/aws-wafregional-sizeconstraintset_sizeconstraint.go +++ /dev/null @@ -1,78 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalSizeConstraintSet_SizeConstraint AWS CloudFormation Resource (AWS::WAFRegional::SizeConstraintSet.SizeConstraint) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html -type AWSWAFRegionalSizeConstraintSet_SizeConstraint struct { - - // ComparisonOperator AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-comparisonoperator - ComparisonOperator string `json:"ComparisonOperator,omitempty"` - - // FieldToMatch AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-fieldtomatch - FieldToMatch *AWSWAFRegionalSizeConstraintSet_FieldToMatch `json:"FieldToMatch,omitempty"` - - // Size AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-size - Size int `json:"Size"` - - // TextTransformation AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-texttransformation - TextTransformation string `json:"TextTransformation,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSizeConstraintSet_SizeConstraint) AWSCloudFormationType() string { - return "AWS::WAFRegional::SizeConstraintSet.SizeConstraint" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSizeConstraintSet_SizeConstraint) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSizeConstraintSet_SizeConstraint) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSizeConstraintSet_SizeConstraint) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSizeConstraintSet_SizeConstraint) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSizeConstraintSet_SizeConstraint) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSizeConstraintSet_SizeConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go b/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go deleted file mode 100644 index dc9190c7df..0000000000 --- a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::SqlInjectionMatchSet.FieldToMatch) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html -type AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch struct { - - // Data AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-data - Data string `json:"Data,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) AWSCloudFormationType() string { - return "AWS::WAFRegional::SqlInjectionMatchSet.FieldToMatch" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go b/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go deleted file mode 100644 index 15674e03a7..0000000000 --- a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple AWS CloudFormation Resource (AWS::WAFRegional::SqlInjectionMatchSet.SqlInjectionMatchTuple) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html -type AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple struct { - - // FieldToMatch AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-fieldtomatch - FieldToMatch *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` - - // TextTransformation AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-texttransformation - TextTransformation string `json:"TextTransformation,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) AWSCloudFormationType() string { - return "AWS::WAFRegional::SqlInjectionMatchSet.SqlInjectionMatchTuple" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-webacl_action.go b/cloudformation/resources/aws-wafregional-webacl_action.go deleted file mode 100644 index a07cd6df6b..0000000000 --- a/cloudformation/resources/aws-wafregional-webacl_action.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalWebACL_Action AWS CloudFormation Resource (AWS::WAFRegional::WebACL.Action) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html -type AWSWAFRegionalWebACL_Action struct { - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html#cfn-wafregional-webacl-action-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalWebACL_Action) AWSCloudFormationType() string { - return "AWS::WAFRegional::WebACL.Action" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalWebACL_Action) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalWebACL_Action) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalWebACL_Action) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalWebACL_Action) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalWebACL_Action) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalWebACL_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-xssmatchset_fieldtomatch.go b/cloudformation/resources/aws-wafregional-xssmatchset_fieldtomatch.go deleted file mode 100644 index 05c3faa218..0000000000 --- a/cloudformation/resources/aws-wafregional-xssmatchset_fieldtomatch.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalXssMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::XssMatchSet.FieldToMatch) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html -type AWSWAFRegionalXssMatchSet_FieldToMatch struct { - - // Data AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-data - Data string `json:"Data,omitempty"` - - // Type AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-type - Type string `json:"Type,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalXssMatchSet_FieldToMatch) AWSCloudFormationType() string { - return "AWS::WAFRegional::XssMatchSet.FieldToMatch" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalXssMatchSet_FieldToMatch) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalXssMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalXssMatchSet_FieldToMatch) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalXssMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalXssMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalXssMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/aws-wafregional-xssmatchset_xssmatchtuple.go b/cloudformation/resources/aws-wafregional-xssmatchset_xssmatchtuple.go deleted file mode 100644 index 28dee59e51..0000000000 --- a/cloudformation/resources/aws-wafregional-xssmatchset_xssmatchtuple.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// AWSWAFRegionalXssMatchSet_XssMatchTuple AWS CloudFormation Resource (AWS::WAFRegional::XssMatchSet.XssMatchTuple) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html -type AWSWAFRegionalXssMatchSet_XssMatchTuple struct { - - // FieldToMatch AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-fieldtomatch - FieldToMatch *AWSWAFRegionalXssMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` - - // TextTransformation AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-texttransformation - TextTransformation string `json:"TextTransformation,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalXssMatchSet_XssMatchTuple) AWSCloudFormationType() string { - return "AWS::WAFRegional::XssMatchSet.XssMatchTuple" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalXssMatchSet_XssMatchTuple) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalXssMatchSet_XssMatchTuple) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalXssMatchSet_XssMatchTuple) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalXssMatchSet_XssMatchTuple) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalXssMatchSet_XssMatchTuple) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalXssMatchSet_XssMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/awsserverlessapi_definitionuri.go b/cloudformation/resources/awsserverlessapi_definitionuri.go deleted file mode 100644 index e799295265..0000000000 --- a/cloudformation/resources/awsserverlessapi_definitionuri.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import ( - "sort" - - "encoding/json" -) - -// AWSServerlessApi_DefinitionUri is a helper struct that can hold either a String or S3Location value -type AWSServerlessApi_DefinitionUri struct { - String *string - - S3Location *AWSServerlessApi_S3Location -} - -func (r AWSServerlessApi_DefinitionUri) value() interface{} { - ret := []interface{}{} - - if r.String != nil { - ret = append(ret, r.String) - } - - if r.S3Location != nil { - ret = append(ret, *r.S3Location) - } - - sort.Sort(byJSONLength(ret)) // Heuristic to select best attribute - if len(ret) > 0 { - return ret[0] - } - - return nil -} - -func (r AWSServerlessApi_DefinitionUri) MarshalJSON() ([]byte, error) { - return json.Marshal(r.value()) -} - -// Hook into the marshaller -func (r *AWSServerlessApi_DefinitionUri) UnmarshalJSON(b []byte) error { - - // Unmarshal into interface{} to check it's type - var typecheck interface{} - if err := json.Unmarshal(b, &typecheck); err != nil { - return err - } - - switch val := typecheck.(type) { - - case string: - r.String = &val - - case map[string]interface{}: - val = val // This ensures val is used to stop an error - - json.Unmarshal(b, &r.S3Location) - - case []interface{}: - - } - - return nil -} diff --git a/cloudformation/resources/awsserverlessapplication_location.go b/cloudformation/resources/awsserverlessapplication_location.go deleted file mode 100644 index b2a3dc99ab..0000000000 --- a/cloudformation/resources/awsserverlessapplication_location.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import ( - "sort" - - "encoding/json" -) - -// AWSServerlessApplication_Location is a helper struct that can hold either a String or ApplicationLocation value -type AWSServerlessApplication_Location struct { - String *string - - ApplicationLocation *AWSServerlessApplication_ApplicationLocation -} - -func (r AWSServerlessApplication_Location) value() interface{} { - ret := []interface{}{} - - if r.String != nil { - ret = append(ret, r.String) - } - - if r.ApplicationLocation != nil { - ret = append(ret, *r.ApplicationLocation) - } - - sort.Sort(byJSONLength(ret)) // Heuristic to select best attribute - if len(ret) > 0 { - return ret[0] - } - - return nil -} - -func (r AWSServerlessApplication_Location) MarshalJSON() ([]byte, error) { - return json.Marshal(r.value()) -} - -// Hook into the marshaller -func (r *AWSServerlessApplication_Location) UnmarshalJSON(b []byte) error { - - // Unmarshal into interface{} to check it's type - var typecheck interface{} - if err := json.Unmarshal(b, &typecheck); err != nil { - return err - } - - switch val := typecheck.(type) { - - case string: - r.String = &val - - case map[string]interface{}: - val = val // This ensures val is used to stop an error - - json.Unmarshal(b, &r.ApplicationLocation) - - case []interface{}: - - } - - return nil -} diff --git a/cloudformation/resources/awsserverlessfunction_codeuri.go b/cloudformation/resources/awsserverlessfunction_codeuri.go deleted file mode 100644 index 9b4217010b..0000000000 --- a/cloudformation/resources/awsserverlessfunction_codeuri.go +++ /dev/null @@ -1,63 +0,0 @@ -package resources - -import ( - "sort" - - "encoding/json" -) - -// AWSServerlessFunction_CodeUri is a helper struct that can hold either a String or S3Location value -type AWSServerlessFunction_CodeUri struct { - String *string - - S3Location *AWSServerlessFunction_S3Location -} - -func (r AWSServerlessFunction_CodeUri) value() interface{} { - ret := []interface{}{} - - if r.String != nil { - ret = append(ret, r.String) - } - - if r.S3Location != nil { - ret = append(ret, *r.S3Location) - } - - sort.Sort(byJSONLength(ret)) // Heuristic to select best attribute - if len(ret) > 0 { - return ret[0] - } - - return nil -} - -func (r AWSServerlessFunction_CodeUri) MarshalJSON() ([]byte, error) { - return json.Marshal(r.value()) -} - -// Hook into the marshaller -func (r *AWSServerlessFunction_CodeUri) UnmarshalJSON(b []byte) error { - - // Unmarshal into interface{} to check it's type - var typecheck interface{} - if err := json.Unmarshal(b, &typecheck); err != nil { - return err - } - - switch val := typecheck.(type) { - - case string: - r.String = &val - - case map[string]interface{}: - val = val // This ensures val is used to stop an error - - json.Unmarshal(b, &r.S3Location) - - case []interface{}: - - } - - return nil -} diff --git a/cloudformation/resources/awsserverlessfunction_events.go b/cloudformation/resources/awsserverlessfunction_events.go deleted file mode 100644 index 6299b930df..0000000000 --- a/cloudformation/resources/awsserverlessfunction_events.go +++ /dev/null @@ -1,66 +0,0 @@ -package resources - -import ( - "sort" - - "encoding/json" -) - -// AWSServerlessFunction_Events is a helper struct that can hold either a String or String value -type AWSServerlessFunction_Events struct { - String *string - - StringArray *[]string -} - -func (r AWSServerlessFunction_Events) value() interface{} { - ret := []interface{}{} - - if r.String != nil { - ret = append(ret, r.String) - } - - if r.StringArray != nil { - ret = append(ret, r.StringArray) - } - - sort.Sort(byJSONLength(ret)) // Heuristic to select best attribute - if len(ret) > 0 { - return ret[0] - } - - return nil -} - -func (r AWSServerlessFunction_Events) MarshalJSON() ([]byte, error) { - return json.Marshal(r.value()) -} - -// Hook into the marshaller -func (r *AWSServerlessFunction_Events) UnmarshalJSON(b []byte) error { - - // Unmarshal into interface{} to check it's type - var typecheck interface{} - if err := json.Unmarshal(b, &typecheck); err != nil { - return err - } - - switch val := typecheck.(type) { - - case string: - r.String = &val - - case []string: - r.StringArray = &val - - case map[string]interface{}: - val = val // This ensures val is used to stop an error - - case []interface{}: - - json.Unmarshal(b, &r.StringArray) - - } - - return nil -} diff --git a/cloudformation/resources/awsserverlessfunction_policies.go b/cloudformation/resources/awsserverlessfunction_policies.go deleted file mode 100644 index 4898e1fd0c..0000000000 --- a/cloudformation/resources/awsserverlessfunction_policies.go +++ /dev/null @@ -1,89 +0,0 @@ -package resources - -import ( - "sort" - - "encoding/json" -) - -// AWSServerlessFunction_Policies is a helper struct that can hold either a String, String, IAMPolicyDocument, SAMPolicyTemplate, or IAMPolicyDocument value -type AWSServerlessFunction_Policies struct { - String *string - - StringArray *[]string - - IAMPolicyDocument *AWSServerlessFunction_IAMPolicyDocument - - IAMPolicyDocumentArray *[]AWSServerlessFunction_IAMPolicyDocument - SAMPolicyTemplateArray *[]AWSServerlessFunction_SAMPolicyTemplate -} - -func (r AWSServerlessFunction_Policies) value() interface{} { - ret := []interface{}{} - - if r.String != nil { - ret = append(ret, r.String) - } - - if r.StringArray != nil { - ret = append(ret, r.StringArray) - } - - if r.IAMPolicyDocument != nil { - ret = append(ret, *r.IAMPolicyDocument) - } - - if r.IAMPolicyDocumentArray != nil { - ret = append(ret, r.IAMPolicyDocumentArray) - } - - if r.SAMPolicyTemplateArray != nil { - ret = append(ret, r.SAMPolicyTemplateArray) - } - - sort.Sort(byJSONLength(ret)) // Heuristic to select best attribute - if len(ret) > 0 { - return ret[0] - } - - return nil -} - -func (r AWSServerlessFunction_Policies) MarshalJSON() ([]byte, error) { - return json.Marshal(r.value()) -} - -// Hook into the marshaller -func (r *AWSServerlessFunction_Policies) UnmarshalJSON(b []byte) error { - - // Unmarshal into interface{} to check it's type - var typecheck interface{} - if err := json.Unmarshal(b, &typecheck); err != nil { - return err - } - - switch val := typecheck.(type) { - - case string: - r.String = &val - - case []string: - r.StringArray = &val - - case map[string]interface{}: - val = val // This ensures val is used to stop an error - - json.Unmarshal(b, &r.IAMPolicyDocument) - - case []interface{}: - - json.Unmarshal(b, &r.StringArray) - - json.Unmarshal(b, &r.IAMPolicyDocumentArray) - - json.Unmarshal(b, &r.SAMPolicyTemplateArray) - - } - - return nil -} diff --git a/cloudformation/resources/awsserverlessfunction_properties.go b/cloudformation/resources/awsserverlessfunction_properties.go deleted file mode 100644 index 6c11866b3d..0000000000 --- a/cloudformation/resources/awsserverlessfunction_properties.go +++ /dev/null @@ -1,117 +0,0 @@ -package resources - -import ( - "sort" - - "encoding/json" -) - -// AWSServerlessFunction_Properties is a helper struct that can hold either a S3Event, SNSEvent, SQSEvent, KinesisEvent, DynamoDBEvent, ApiEvent, ScheduleEvent, CloudWatchEventEvent, IoTRuleEvent, or AlexaSkillEvent value -type AWSServerlessFunction_Properties struct { - S3Event *AWSServerlessFunction_S3Event - SNSEvent *AWSServerlessFunction_SNSEvent - SQSEvent *AWSServerlessFunction_SQSEvent - KinesisEvent *AWSServerlessFunction_KinesisEvent - DynamoDBEvent *AWSServerlessFunction_DynamoDBEvent - ApiEvent *AWSServerlessFunction_ApiEvent - ScheduleEvent *AWSServerlessFunction_ScheduleEvent - CloudWatchEventEvent *AWSServerlessFunction_CloudWatchEventEvent - IoTRuleEvent *AWSServerlessFunction_IoTRuleEvent - AlexaSkillEvent *AWSServerlessFunction_AlexaSkillEvent -} - -func (r AWSServerlessFunction_Properties) value() interface{} { - ret := []interface{}{} - - if r.S3Event != nil { - ret = append(ret, *r.S3Event) - } - - if r.SNSEvent != nil { - ret = append(ret, *r.SNSEvent) - } - - if r.SQSEvent != nil { - ret = append(ret, *r.SQSEvent) - } - - if r.KinesisEvent != nil { - ret = append(ret, *r.KinesisEvent) - } - - if r.DynamoDBEvent != nil { - ret = append(ret, *r.DynamoDBEvent) - } - - if r.ApiEvent != nil { - ret = append(ret, *r.ApiEvent) - } - - if r.ScheduleEvent != nil { - ret = append(ret, *r.ScheduleEvent) - } - - if r.CloudWatchEventEvent != nil { - ret = append(ret, *r.CloudWatchEventEvent) - } - - if r.IoTRuleEvent != nil { - ret = append(ret, *r.IoTRuleEvent) - } - - if r.AlexaSkillEvent != nil { - ret = append(ret, *r.AlexaSkillEvent) - } - - sort.Sort(byJSONLength(ret)) // Heuristic to select best attribute - if len(ret) > 0 { - return ret[0] - } - - return nil -} - -func (r AWSServerlessFunction_Properties) MarshalJSON() ([]byte, error) { - return json.Marshal(r.value()) -} - -// Hook into the marshaller -func (r *AWSServerlessFunction_Properties) UnmarshalJSON(b []byte) error { - - // Unmarshal into interface{} to check it's type - var typecheck interface{} - if err := json.Unmarshal(b, &typecheck); err != nil { - return err - } - - switch val := typecheck.(type) { - - case map[string]interface{}: - val = val // This ensures val is used to stop an error - - json.Unmarshal(b, &r.S3Event) - - json.Unmarshal(b, &r.SNSEvent) - - json.Unmarshal(b, &r.SQSEvent) - - json.Unmarshal(b, &r.KinesisEvent) - - json.Unmarshal(b, &r.DynamoDBEvent) - - json.Unmarshal(b, &r.ApiEvent) - - json.Unmarshal(b, &r.ScheduleEvent) - - json.Unmarshal(b, &r.CloudWatchEventEvent) - - json.Unmarshal(b, &r.IoTRuleEvent) - - json.Unmarshal(b, &r.AlexaSkillEvent) - - case []interface{}: - - } - - return nil -} diff --git a/cloudformation/resources/tag.go b/cloudformation/resources/tag.go deleted file mode 100644 index 547219c26c..0000000000 --- a/cloudformation/resources/tag.go +++ /dev/null @@ -1,68 +0,0 @@ -package resources - -import "github.com/awslabs/goformation/v2/cloudformation/policies" - -// Tag AWS CloudFormation Resource (Tag) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html -type Tag struct { - - // Key AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-key - Key string `json:"Key,omitempty"` - - // Value AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-value - Value string `json:"Value,omitempty"` - - // _deletionPolicy represents a CloudFormation DeletionPolicy - _deletionPolicy policies.DeletionPolicy - - // _dependsOn stores the logical ID of the resources to be created before this resource - _dependsOn []string - - // _metadata stores structured data associated with this resource - _metadata map[string]interface{} -} - -// AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *Tag) AWSCloudFormationType() string { - return "Tag" -} - -// DependsOn returns a slice of logical ID names this resource depends on. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *Tag) DependsOn() []string { - return r._dependsOn -} - -// SetDependsOn specify that the creation of this resource follows another. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *Tag) SetDependsOn(dependencies []string) { - r._dependsOn = dependencies -} - -// Metadata returns the metadata associated with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *Tag) Metadata() map[string]interface{} { - return r._metadata -} - -// SetMetadata enables you to associate structured data with this resource. -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *Tag) SetMetadata(metadata map[string]interface{}) { - r._metadata = metadata -} - -// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *Tag) DeletionPolicy() policies.DeletionPolicy { - return r._deletionPolicy -} - -// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource -// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *Tag) SetDeletionPolicy(policy policies.DeletionPolicy) { - r._deletionPolicy = policy -} diff --git a/cloudformation/resources/utils.go b/cloudformation/resources/utils.go deleted file mode 100644 index 87cdf4021a..0000000000 --- a/cloudformation/resources/utils.go +++ /dev/null @@ -1,36 +0,0 @@ -package resources - -import ( - "encoding/json" -) - -type byJSONLength []interface{} - -func (s byJSONLength) Len() int { - return len(s) -} - -func (s byJSONLength) Swap(i, j int) { - s[i], s[j] = s[j], s[i] -} - -func (s byJSONLength) Less(i, j int) bool { - // Nil is always at the end - if s[i] == nil { - return false - } - if s[j] == nil { - return true - } - jsoni, _ := json.Marshal(s[i]) - jsonj, _ := json.Marshal(s[j]) - - if jsoni == nil { - return false - } - if jsonj == nil { - return true - } - - return len(jsoni) > len(jsonj) -} diff --git a/cloudformation/resources/aws-robomaker-fleet.go b/cloudformation/robomaker/aws-robomaker-fleet.go similarity index 80% rename from cloudformation/resources/aws-robomaker-fleet.go rename to cloudformation/robomaker/aws-robomaker-fleet.go index 55128eebca..80813d527d 100644 --- a/cloudformation/resources/aws-robomaker-fleet.go +++ b/cloudformation/robomaker/aws-robomaker-fleet.go @@ -1,15 +1,16 @@ -package resources +package robomaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoboMakerFleet AWS CloudFormation Resource (AWS::RoboMaker::Fleet) +// Fleet AWS CloudFormation Resource (AWS::RoboMaker::Fleet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html -type AWSRoboMakerFleet struct { +type Fleet struct { // Name AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSRoboMakerFleet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerFleet) AWSCloudFormationType() string { +func (r *Fleet) AWSCloudFormationType() string { return "AWS::RoboMaker::Fleet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerFleet) DependsOn() []string { +func (r *Fleet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerFleet) SetDependsOn(dependencies []string) { +func (r *Fleet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerFleet) Metadata() map[string]interface{} { +func (r *Fleet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerFleet) SetMetadata(metadata map[string]interface{}) { +func (r *Fleet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerFleet) DeletionPolicy() policies.DeletionPolicy { +func (r *Fleet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerFleet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Fleet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoboMakerFleet) MarshalJSON() ([]byte, error) { - type Properties AWSRoboMakerFleet +func (r Fleet) MarshalJSON() ([]byte, error) { + type Properties Fleet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSRoboMakerFleet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoboMakerFleet) UnmarshalJSON(b []byte) error { - type Properties AWSRoboMakerFleet +func (r *Fleet) UnmarshalJSON(b []byte) error { + type Properties Fleet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSRoboMakerFleet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoboMakerFleet(*res.Properties) + *r = Fleet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-robomaker-robot.go b/cloudformation/robomaker/aws-robomaker-robot.go similarity index 83% rename from cloudformation/resources/aws-robomaker-robot.go rename to cloudformation/robomaker/aws-robomaker-robot.go index 894356a57f..8b18250b53 100644 --- a/cloudformation/resources/aws-robomaker-robot.go +++ b/cloudformation/robomaker/aws-robomaker-robot.go @@ -1,15 +1,16 @@ -package resources +package robomaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoboMakerRobot AWS CloudFormation Resource (AWS::RoboMaker::Robot) +// Robot AWS CloudFormation Resource (AWS::RoboMaker::Robot) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html -type AWSRoboMakerRobot struct { +type Robot struct { // Architecture AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSRoboMakerRobot struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerRobot) AWSCloudFormationType() string { +func (r *Robot) AWSCloudFormationType() string { return "AWS::RoboMaker::Robot" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobot) DependsOn() []string { +func (r *Robot) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobot) SetDependsOn(dependencies []string) { +func (r *Robot) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobot) Metadata() map[string]interface{} { +func (r *Robot) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobot) SetMetadata(metadata map[string]interface{}) { +func (r *Robot) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobot) DeletionPolicy() policies.DeletionPolicy { +func (r *Robot) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobot) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Robot) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoboMakerRobot) MarshalJSON() ([]byte, error) { - type Properties AWSRoboMakerRobot +func (r Robot) MarshalJSON() ([]byte, error) { + type Properties Robot return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSRoboMakerRobot) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoboMakerRobot) UnmarshalJSON(b []byte) error { - type Properties AWSRoboMakerRobot +func (r *Robot) UnmarshalJSON(b []byte) error { + type Properties Robot res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSRoboMakerRobot) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoboMakerRobot(*res.Properties) + *r = Robot(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-robomaker-robotapplication.go b/cloudformation/robomaker/aws-robomaker-robotapplication.go similarity index 78% rename from cloudformation/resources/aws-robomaker-robotapplication.go rename to cloudformation/robomaker/aws-robomaker-robotapplication.go index c715bbc43f..4dc289cef3 100644 --- a/cloudformation/resources/aws-robomaker-robotapplication.go +++ b/cloudformation/robomaker/aws-robomaker-robotapplication.go @@ -1,15 +1,16 @@ -package resources +package robomaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoboMakerRobotApplication AWS CloudFormation Resource (AWS::RoboMaker::RobotApplication) +// RobotApplication AWS CloudFormation Resource (AWS::RoboMaker::RobotApplication) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html -type AWSRoboMakerRobotApplication struct { +type RobotApplication struct { // CurrentRevisionId AWS CloudFormation Property // Required: false @@ -24,12 +25,12 @@ type AWSRoboMakerRobotApplication struct { // RobotSoftwareSuite AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-robotsoftwaresuite - RobotSoftwareSuite *AWSRoboMakerRobotApplication_RobotSoftwareSuite `json:"RobotSoftwareSuite,omitempty"` + RobotSoftwareSuite *RobotApplication_RobotSoftwareSuite `json:"RobotSoftwareSuite,omitempty"` // Sources AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-sources - Sources []AWSRoboMakerRobotApplication_SourceConfig `json:"Sources,omitempty"` + Sources []RobotApplication_SourceConfig `json:"Sources,omitempty"` // Tags AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSRoboMakerRobotApplication struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerRobotApplication) AWSCloudFormationType() string { +func (r *RobotApplication) AWSCloudFormationType() string { return "AWS::RoboMaker::RobotApplication" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobotApplication) DependsOn() []string { +func (r *RobotApplication) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobotApplication) SetDependsOn(dependencies []string) { +func (r *RobotApplication) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobotApplication) Metadata() map[string]interface{} { +func (r *RobotApplication) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobotApplication) SetMetadata(metadata map[string]interface{}) { +func (r *RobotApplication) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobotApplication) DeletionPolicy() policies.DeletionPolicy { +func (r *RobotApplication) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobotApplication) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RobotApplication) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoboMakerRobotApplication) MarshalJSON() ([]byte, error) { - type Properties AWSRoboMakerRobotApplication +func (r RobotApplication) MarshalJSON() ([]byte, error) { + type Properties RobotApplication return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSRoboMakerRobotApplication) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoboMakerRobotApplication) UnmarshalJSON(b []byte) error { - type Properties AWSRoboMakerRobotApplication +func (r *RobotApplication) UnmarshalJSON(b []byte) error { + type Properties RobotApplication res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSRoboMakerRobotApplication) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoboMakerRobotApplication(*res.Properties) + *r = RobotApplication(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/robomaker/aws-robomaker-robotapplication_robotsoftwaresuite.go b/cloudformation/robomaker/aws-robomaker-robotapplication_robotsoftwaresuite.go new file mode 100644 index 0000000000..3f351c993f --- /dev/null +++ b/cloudformation/robomaker/aws-robomaker-robotapplication_robotsoftwaresuite.go @@ -0,0 +1,70 @@ +package robomaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RobotApplication_RobotSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::RobotApplication.RobotSoftwareSuite) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html +type RobotApplication_RobotSoftwareSuite struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html#cfn-robomaker-robotapplication-robotsoftwaresuite-name + Name string `json:"Name,omitempty"` + + // Version AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html#cfn-robomaker-robotapplication-robotsoftwaresuite-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RobotApplication_RobotSoftwareSuite) AWSCloudFormationType() string { + return "AWS::RoboMaker::RobotApplication.RobotSoftwareSuite" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RobotApplication_RobotSoftwareSuite) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RobotApplication_RobotSoftwareSuite) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RobotApplication_RobotSoftwareSuite) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RobotApplication_RobotSoftwareSuite) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RobotApplication_RobotSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RobotApplication_RobotSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/robomaker/aws-robomaker-robotapplication_sourceconfig.go b/cloudformation/robomaker/aws-robomaker-robotapplication_sourceconfig.go new file mode 100644 index 0000000000..612e081f33 --- /dev/null +++ b/cloudformation/robomaker/aws-robomaker-robotapplication_sourceconfig.go @@ -0,0 +1,75 @@ +package robomaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RobotApplication_SourceConfig AWS CloudFormation Resource (AWS::RoboMaker::RobotApplication.SourceConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html +type RobotApplication_SourceConfig struct { + + // Architecture AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-architecture + Architecture string `json:"Architecture,omitempty"` + + // S3Bucket AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-s3bucket + S3Bucket string `json:"S3Bucket,omitempty"` + + // S3Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-s3key + S3Key string `json:"S3Key,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RobotApplication_SourceConfig) AWSCloudFormationType() string { + return "AWS::RoboMaker::RobotApplication.SourceConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RobotApplication_SourceConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RobotApplication_SourceConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RobotApplication_SourceConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RobotApplication_SourceConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RobotApplication_SourceConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RobotApplication_SourceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-robomaker-robotapplicationversion.go b/cloudformation/robomaker/aws-robomaker-robotapplicationversion.go similarity index 77% rename from cloudformation/resources/aws-robomaker-robotapplicationversion.go rename to cloudformation/robomaker/aws-robomaker-robotapplicationversion.go index 1ee06a3818..09992ee497 100644 --- a/cloudformation/resources/aws-robomaker-robotapplicationversion.go +++ b/cloudformation/robomaker/aws-robomaker-robotapplicationversion.go @@ -1,15 +1,16 @@ -package resources +package robomaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoboMakerRobotApplicationVersion AWS CloudFormation Resource (AWS::RoboMaker::RobotApplicationVersion) +// RobotApplicationVersion AWS CloudFormation Resource (AWS::RoboMaker::RobotApplicationVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html -type AWSRoboMakerRobotApplicationVersion struct { +type RobotApplicationVersion struct { // Application AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSRoboMakerRobotApplicationVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerRobotApplicationVersion) AWSCloudFormationType() string { +func (r *RobotApplicationVersion) AWSCloudFormationType() string { return "AWS::RoboMaker::RobotApplicationVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobotApplicationVersion) DependsOn() []string { +func (r *RobotApplicationVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerRobotApplicationVersion) SetDependsOn(dependencies []string) { +func (r *RobotApplicationVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobotApplicationVersion) Metadata() map[string]interface{} { +func (r *RobotApplicationVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerRobotApplicationVersion) SetMetadata(metadata map[string]interface{}) { +func (r *RobotApplicationVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobotApplicationVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *RobotApplicationVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerRobotApplicationVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RobotApplicationVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoboMakerRobotApplicationVersion) MarshalJSON() ([]byte, error) { - type Properties AWSRoboMakerRobotApplicationVersion +func (r RobotApplicationVersion) MarshalJSON() ([]byte, error) { + type Properties RobotApplicationVersion return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSRoboMakerRobotApplicationVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoboMakerRobotApplicationVersion) UnmarshalJSON(b []byte) error { - type Properties AWSRoboMakerRobotApplicationVersion +func (r *RobotApplicationVersion) UnmarshalJSON(b []byte) error { + type Properties RobotApplicationVersion res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSRoboMakerRobotApplicationVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoboMakerRobotApplicationVersion(*res.Properties) + *r = RobotApplicationVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-robomaker-simulationapplication.go b/cloudformation/robomaker/aws-robomaker-simulationapplication.go similarity index 76% rename from cloudformation/resources/aws-robomaker-simulationapplication.go rename to cloudformation/robomaker/aws-robomaker-simulationapplication.go index 45ea2c786f..577e79286f 100644 --- a/cloudformation/resources/aws-robomaker-simulationapplication.go +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication.go @@ -1,15 +1,16 @@ -package resources +package robomaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoboMakerSimulationApplication AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication) +// SimulationApplication AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html -type AWSRoboMakerSimulationApplication struct { +type SimulationApplication struct { // CurrentRevisionId AWS CloudFormation Property // Required: false @@ -24,22 +25,22 @@ type AWSRoboMakerSimulationApplication struct { // RenderingEngine AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-renderingengine - RenderingEngine *AWSRoboMakerSimulationApplication_RenderingEngine `json:"RenderingEngine,omitempty"` + RenderingEngine *SimulationApplication_RenderingEngine `json:"RenderingEngine,omitempty"` // RobotSoftwareSuite AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-robotsoftwaresuite - RobotSoftwareSuite *AWSRoboMakerSimulationApplication_RobotSoftwareSuite `json:"RobotSoftwareSuite,omitempty"` + RobotSoftwareSuite *SimulationApplication_RobotSoftwareSuite `json:"RobotSoftwareSuite,omitempty"` // SimulationSoftwareSuite AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite - SimulationSoftwareSuite *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite `json:"SimulationSoftwareSuite,omitempty"` + SimulationSoftwareSuite *SimulationApplication_SimulationSoftwareSuite `json:"SimulationSoftwareSuite,omitempty"` // Sources AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-sources - Sources []AWSRoboMakerSimulationApplication_SourceConfig `json:"Sources,omitempty"` + Sources []SimulationApplication_SourceConfig `json:"Sources,omitempty"` // Tags AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSRoboMakerSimulationApplication struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication) AWSCloudFormationType() string { +func (r *SimulationApplication) AWSCloudFormationType() string { return "AWS::RoboMaker::SimulationApplication" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication) DependsOn() []string { +func (r *SimulationApplication) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplication) SetDependsOn(dependencies []string) { +func (r *SimulationApplication) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication) Metadata() map[string]interface{} { +func (r *SimulationApplication) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplication) SetMetadata(metadata map[string]interface{}) { +func (r *SimulationApplication) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication) DeletionPolicy() policies.DeletionPolicy { +func (r *SimulationApplication) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplication) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimulationApplication) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoboMakerSimulationApplication) MarshalJSON() ([]byte, error) { - type Properties AWSRoboMakerSimulationApplication +func (r SimulationApplication) MarshalJSON() ([]byte, error) { + type Properties SimulationApplication return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSRoboMakerSimulationApplication) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoboMakerSimulationApplication) UnmarshalJSON(b []byte) error { - type Properties AWSRoboMakerSimulationApplication +func (r *SimulationApplication) UnmarshalJSON(b []byte) error { + type Properties SimulationApplication res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSRoboMakerSimulationApplication) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoboMakerSimulationApplication(*res.Properties) + *r = SimulationApplication(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/robomaker/aws-robomaker-simulationapplication_renderingengine.go b/cloudformation/robomaker/aws-robomaker-simulationapplication_renderingengine.go new file mode 100644 index 0000000000..4de83a2564 --- /dev/null +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication_renderingengine.go @@ -0,0 +1,70 @@ +package robomaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SimulationApplication_RenderingEngine AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.RenderingEngine) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html +type SimulationApplication_RenderingEngine struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html#cfn-robomaker-simulationapplication-renderingengine-name + Name string `json:"Name,omitempty"` + + // Version AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html#cfn-robomaker-simulationapplication-renderingengine-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SimulationApplication_RenderingEngine) AWSCloudFormationType() string { + return "AWS::RoboMaker::SimulationApplication.RenderingEngine" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimulationApplication_RenderingEngine) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimulationApplication_RenderingEngine) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimulationApplication_RenderingEngine) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimulationApplication_RenderingEngine) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimulationApplication_RenderingEngine) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimulationApplication_RenderingEngine) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/robomaker/aws-robomaker-simulationapplication_robotsoftwaresuite.go b/cloudformation/robomaker/aws-robomaker-simulationapplication_robotsoftwaresuite.go new file mode 100644 index 0000000000..885558ab6d --- /dev/null +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication_robotsoftwaresuite.go @@ -0,0 +1,70 @@ +package robomaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SimulationApplication_RobotSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.RobotSoftwareSuite) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html +type SimulationApplication_RobotSoftwareSuite struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html#cfn-robomaker-simulationapplication-robotsoftwaresuite-name + Name string `json:"Name,omitempty"` + + // Version AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html#cfn-robomaker-simulationapplication-robotsoftwaresuite-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SimulationApplication_RobotSoftwareSuite) AWSCloudFormationType() string { + return "AWS::RoboMaker::SimulationApplication.RobotSoftwareSuite" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimulationApplication_RobotSoftwareSuite) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimulationApplication_RobotSoftwareSuite) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimulationApplication_RobotSoftwareSuite) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimulationApplication_RobotSoftwareSuite) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimulationApplication_RobotSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimulationApplication_RobotSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/robomaker/aws-robomaker-simulationapplication_simulationsoftwaresuite.go b/cloudformation/robomaker/aws-robomaker-simulationapplication_simulationsoftwaresuite.go new file mode 100644 index 0000000000..ba7f1d3060 --- /dev/null +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication_simulationsoftwaresuite.go @@ -0,0 +1,70 @@ +package robomaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SimulationApplication_SimulationSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.SimulationSoftwareSuite) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html +type SimulationApplication_SimulationSoftwareSuite struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite-name + Name string `json:"Name,omitempty"` + + // Version AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite-version + Version string `json:"Version,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SimulationApplication_SimulationSoftwareSuite) AWSCloudFormationType() string { + return "AWS::RoboMaker::SimulationApplication.SimulationSoftwareSuite" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimulationApplication_SimulationSoftwareSuite) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimulationApplication_SimulationSoftwareSuite) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimulationApplication_SimulationSoftwareSuite) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimulationApplication_SimulationSoftwareSuite) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimulationApplication_SimulationSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimulationApplication_SimulationSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/robomaker/aws-robomaker-simulationapplication_sourceconfig.go b/cloudformation/robomaker/aws-robomaker-simulationapplication_sourceconfig.go new file mode 100644 index 0000000000..193831d9ba --- /dev/null +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication_sourceconfig.go @@ -0,0 +1,75 @@ +package robomaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SimulationApplication_SourceConfig AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.SourceConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html +type SimulationApplication_SourceConfig struct { + + // Architecture AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-architecture + Architecture string `json:"Architecture,omitempty"` + + // S3Bucket AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-s3bucket + S3Bucket string `json:"S3Bucket,omitempty"` + + // S3Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-s3key + S3Key string `json:"S3Key,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SimulationApplication_SourceConfig) AWSCloudFormationType() string { + return "AWS::RoboMaker::SimulationApplication.SourceConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimulationApplication_SourceConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimulationApplication_SourceConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimulationApplication_SourceConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimulationApplication_SourceConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimulationApplication_SourceConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimulationApplication_SourceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-robomaker-simulationapplicationversion.go b/cloudformation/robomaker/aws-robomaker-simulationapplicationversion.go similarity index 76% rename from cloudformation/resources/aws-robomaker-simulationapplicationversion.go rename to cloudformation/robomaker/aws-robomaker-simulationapplicationversion.go index 6b4a43e1d1..8da580e111 100644 --- a/cloudformation/resources/aws-robomaker-simulationapplicationversion.go +++ b/cloudformation/robomaker/aws-robomaker-simulationapplicationversion.go @@ -1,15 +1,16 @@ -package resources +package robomaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoboMakerSimulationApplicationVersion AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplicationVersion) +// SimulationApplicationVersion AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplicationVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html -type AWSRoboMakerSimulationApplicationVersion struct { +type SimulationApplicationVersion struct { // Application AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSRoboMakerSimulationApplicationVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplicationVersion) AWSCloudFormationType() string { +func (r *SimulationApplicationVersion) AWSCloudFormationType() string { return "AWS::RoboMaker::SimulationApplicationVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplicationVersion) DependsOn() []string { +func (r *SimulationApplicationVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoboMakerSimulationApplicationVersion) SetDependsOn(dependencies []string) { +func (r *SimulationApplicationVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplicationVersion) Metadata() map[string]interface{} { +func (r *SimulationApplicationVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoboMakerSimulationApplicationVersion) SetMetadata(metadata map[string]interface{}) { +func (r *SimulationApplicationVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplicationVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *SimulationApplicationVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoboMakerSimulationApplicationVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimulationApplicationVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoboMakerSimulationApplicationVersion) MarshalJSON() ([]byte, error) { - type Properties AWSRoboMakerSimulationApplicationVersion +func (r SimulationApplicationVersion) MarshalJSON() ([]byte, error) { + type Properties SimulationApplicationVersion return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSRoboMakerSimulationApplicationVersion) MarshalJSON() ([]byte, error) // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoboMakerSimulationApplicationVersion) UnmarshalJSON(b []byte) error { - type Properties AWSRoboMakerSimulationApplicationVersion +func (r *SimulationApplicationVersion) UnmarshalJSON(b []byte) error { + type Properties SimulationApplicationVersion res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSRoboMakerSimulationApplicationVersion) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoboMakerSimulationApplicationVersion(*res.Properties) + *r = SimulationApplicationVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-route53-healthcheck.go b/cloudformation/route53/aws-route53-healthcheck.go similarity index 76% rename from cloudformation/resources/aws-route53-healthcheck.go rename to cloudformation/route53/aws-route53-healthcheck.go index 881dc3d091..0a53e98a6a 100644 --- a/cloudformation/resources/aws-route53-healthcheck.go +++ b/cloudformation/route53/aws-route53-healthcheck.go @@ -1,25 +1,26 @@ -package resources +package route53 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoute53HealthCheck AWS CloudFormation Resource (AWS::Route53::HealthCheck) +// HealthCheck AWS CloudFormation Resource (AWS::Route53::HealthCheck) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html -type AWSRoute53HealthCheck struct { +type HealthCheck struct { // HealthCheckConfig AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html#cfn-route53-healthcheck-healthcheckconfig - HealthCheckConfig *AWSRoute53HealthCheck_HealthCheckConfig `json:"HealthCheckConfig,omitempty"` + HealthCheckConfig *HealthCheck_HealthCheckConfig `json:"HealthCheckConfig,omitempty"` // HealthCheckTags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html#cfn-route53-healthcheck-healthchecktags - HealthCheckTags []AWSRoute53HealthCheck_HealthCheckTag `json:"HealthCheckTags,omitempty"` + HealthCheckTags []HealthCheck_HealthCheckTag `json:"HealthCheckTags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSRoute53HealthCheck struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HealthCheck) AWSCloudFormationType() string { +func (r *HealthCheck) AWSCloudFormationType() string { return "AWS::Route53::HealthCheck" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HealthCheck) DependsOn() []string { +func (r *HealthCheck) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HealthCheck) SetDependsOn(dependencies []string) { +func (r *HealthCheck) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HealthCheck) Metadata() map[string]interface{} { +func (r *HealthCheck) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HealthCheck) SetMetadata(metadata map[string]interface{}) { +func (r *HealthCheck) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HealthCheck) DeletionPolicy() policies.DeletionPolicy { +func (r *HealthCheck) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HealthCheck) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *HealthCheck) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoute53HealthCheck) MarshalJSON() ([]byte, error) { - type Properties AWSRoute53HealthCheck +func (r HealthCheck) MarshalJSON() ([]byte, error) { + type Properties HealthCheck return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSRoute53HealthCheck) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoute53HealthCheck) UnmarshalJSON(b []byte) error { - type Properties AWSRoute53HealthCheck +func (r *HealthCheck) UnmarshalJSON(b []byte) error { + type Properties HealthCheck res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSRoute53HealthCheck) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoute53HealthCheck(*res.Properties) + *r = HealthCheck(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/route53/aws-route53-healthcheck_alarmidentifier.go b/cloudformation/route53/aws-route53-healthcheck_alarmidentifier.go new file mode 100644 index 0000000000..162e4df6eb --- /dev/null +++ b/cloudformation/route53/aws-route53-healthcheck_alarmidentifier.go @@ -0,0 +1,70 @@ +package route53 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// HealthCheck_AlarmIdentifier AWS CloudFormation Resource (AWS::Route53::HealthCheck.AlarmIdentifier) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html +type HealthCheck_AlarmIdentifier struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html#cfn-route53-healthcheck-alarmidentifier-name + Name string `json:"Name,omitempty"` + + // Region AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html#cfn-route53-healthcheck-alarmidentifier-region + Region string `json:"Region,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *HealthCheck_AlarmIdentifier) AWSCloudFormationType() string { + return "AWS::Route53::HealthCheck.AlarmIdentifier" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HealthCheck_AlarmIdentifier) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HealthCheck_AlarmIdentifier) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HealthCheck_AlarmIdentifier) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HealthCheck_AlarmIdentifier) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HealthCheck_AlarmIdentifier) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HealthCheck_AlarmIdentifier) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-route53-healthcheck_healthcheckconfig.go b/cloudformation/route53/aws-route53-healthcheck_healthcheckconfig.go similarity index 87% rename from cloudformation/resources/aws-route53-healthcheck_healthcheckconfig.go rename to cloudformation/route53/aws-route53-healthcheck_healthcheckconfig.go index 3d1893296e..d3778fe8af 100644 --- a/cloudformation/resources/aws-route53-healthcheck_healthcheckconfig.go +++ b/cloudformation/route53/aws-route53-healthcheck_healthcheckconfig.go @@ -1,15 +1,17 @@ -package resources +package route53 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53HealthCheck_HealthCheckConfig AWS CloudFormation Resource (AWS::Route53::HealthCheck.HealthCheckConfig) +// HealthCheck_HealthCheckConfig AWS CloudFormation Resource (AWS::Route53::HealthCheck.HealthCheckConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html -type AWSRoute53HealthCheck_HealthCheckConfig struct { +type HealthCheck_HealthCheckConfig struct { // AlarmIdentifier AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-alarmidentifier - AlarmIdentifier *AWSRoute53HealthCheck_AlarmIdentifier `json:"AlarmIdentifier,omitempty"` + AlarmIdentifier *HealthCheck_AlarmIdentifier `json:"AlarmIdentifier,omitempty"` // ChildHealthChecks AWS CloudFormation Property // Required: false @@ -97,42 +99,42 @@ type AWSRoute53HealthCheck_HealthCheckConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HealthCheck_HealthCheckConfig) AWSCloudFormationType() string { +func (r *HealthCheck_HealthCheckConfig) AWSCloudFormationType() string { return "AWS::Route53::HealthCheck.HealthCheckConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HealthCheck_HealthCheckConfig) DependsOn() []string { +func (r *HealthCheck_HealthCheckConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HealthCheck_HealthCheckConfig) SetDependsOn(dependencies []string) { +func (r *HealthCheck_HealthCheckConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HealthCheck_HealthCheckConfig) Metadata() map[string]interface{} { +func (r *HealthCheck_HealthCheckConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HealthCheck_HealthCheckConfig) SetMetadata(metadata map[string]interface{}) { +func (r *HealthCheck_HealthCheckConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HealthCheck_HealthCheckConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *HealthCheck_HealthCheckConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HealthCheck_HealthCheckConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *HealthCheck_HealthCheckConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/route53/aws-route53-healthcheck_healthchecktag.go b/cloudformation/route53/aws-route53-healthcheck_healthchecktag.go new file mode 100644 index 0000000000..c453f10279 --- /dev/null +++ b/cloudformation/route53/aws-route53-healthcheck_healthchecktag.go @@ -0,0 +1,70 @@ +package route53 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// HealthCheck_HealthCheckTag AWS CloudFormation Resource (AWS::Route53::HealthCheck.HealthCheckTag) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html +type HealthCheck_HealthCheckTag struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html#cfn-route53-healthchecktags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html#cfn-route53-healthchecktags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *HealthCheck_HealthCheckTag) AWSCloudFormationType() string { + return "AWS::Route53::HealthCheck.HealthCheckTag" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HealthCheck_HealthCheckTag) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HealthCheck_HealthCheckTag) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HealthCheck_HealthCheckTag) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HealthCheck_HealthCheckTag) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HealthCheck_HealthCheckTag) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HealthCheck_HealthCheckTag) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-route53-hostedzone.go b/cloudformation/route53/aws-route53-hostedzone.go similarity index 77% rename from cloudformation/resources/aws-route53-hostedzone.go rename to cloudformation/route53/aws-route53-hostedzone.go index 4c6b61fb10..64771dff1f 100644 --- a/cloudformation/resources/aws-route53-hostedzone.go +++ b/cloudformation/route53/aws-route53-hostedzone.go @@ -1,25 +1,26 @@ -package resources +package route53 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoute53HostedZone AWS CloudFormation Resource (AWS::Route53::HostedZone) +// HostedZone AWS CloudFormation Resource (AWS::Route53::HostedZone) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html -type AWSRoute53HostedZone struct { +type HostedZone struct { // HostedZoneConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-hostedzoneconfig - HostedZoneConfig *AWSRoute53HostedZone_HostedZoneConfig `json:"HostedZoneConfig,omitempty"` + HostedZoneConfig *HostedZone_HostedZoneConfig `json:"HostedZoneConfig,omitempty"` // HostedZoneTags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-hostedzonetags - HostedZoneTags []AWSRoute53HostedZone_HostedZoneTag `json:"HostedZoneTags,omitempty"` + HostedZoneTags []HostedZone_HostedZoneTag `json:"HostedZoneTags,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -29,12 +30,12 @@ type AWSRoute53HostedZone struct { // QueryLoggingConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-queryloggingconfig - QueryLoggingConfig *AWSRoute53HostedZone_QueryLoggingConfig `json:"QueryLoggingConfig,omitempty"` + QueryLoggingConfig *HostedZone_QueryLoggingConfig `json:"QueryLoggingConfig,omitempty"` // VPCs AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-vpcs - VPCs []AWSRoute53HostedZone_VPC `json:"VPCs,omitempty"` + VPCs []HostedZone_VPC `json:"VPCs,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +48,50 @@ type AWSRoute53HostedZone struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HostedZone) AWSCloudFormationType() string { +func (r *HostedZone) AWSCloudFormationType() string { return "AWS::Route53::HostedZone" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone) DependsOn() []string { +func (r *HostedZone) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone) SetDependsOn(dependencies []string) { +func (r *HostedZone) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone) Metadata() map[string]interface{} { +func (r *HostedZone) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone) SetMetadata(metadata map[string]interface{}) { +func (r *HostedZone) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone) DeletionPolicy() policies.DeletionPolicy { +func (r *HostedZone) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *HostedZone) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoute53HostedZone) MarshalJSON() ([]byte, error) { - type Properties AWSRoute53HostedZone +func (r HostedZone) MarshalJSON() ([]byte, error) { + type Properties HostedZone return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSRoute53HostedZone) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoute53HostedZone) UnmarshalJSON(b []byte) error { - type Properties AWSRoute53HostedZone +func (r *HostedZone) UnmarshalJSON(b []byte) error { + type Properties HostedZone res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSRoute53HostedZone) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoute53HostedZone(*res.Properties) + *r = HostedZone(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/route53/aws-route53-hostedzone_hostedzoneconfig.go b/cloudformation/route53/aws-route53-hostedzone_hostedzoneconfig.go new file mode 100644 index 0000000000..c309a25636 --- /dev/null +++ b/cloudformation/route53/aws-route53-hostedzone_hostedzoneconfig.go @@ -0,0 +1,65 @@ +package route53 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// HostedZone_HostedZoneConfig AWS CloudFormation Resource (AWS::Route53::HostedZone.HostedZoneConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html +type HostedZone_HostedZoneConfig struct { + + // Comment AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html#cfn-route53-hostedzone-hostedzoneconfig-comment + Comment string `json:"Comment,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *HostedZone_HostedZoneConfig) AWSCloudFormationType() string { + return "AWS::Route53::HostedZone.HostedZoneConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HostedZone_HostedZoneConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HostedZone_HostedZoneConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HostedZone_HostedZoneConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HostedZone_HostedZoneConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HostedZone_HostedZoneConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HostedZone_HostedZoneConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/route53/aws-route53-hostedzone_hostedzonetag.go b/cloudformation/route53/aws-route53-hostedzone_hostedzonetag.go new file mode 100644 index 0000000000..34cca15370 --- /dev/null +++ b/cloudformation/route53/aws-route53-hostedzone_hostedzonetag.go @@ -0,0 +1,70 @@ +package route53 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// HostedZone_HostedZoneTag AWS CloudFormation Resource (AWS::Route53::HostedZone.HostedZoneTag) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html +type HostedZone_HostedZoneTag struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html#cfn-route53-hostedzonetags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html#cfn-route53-hostedzonetags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *HostedZone_HostedZoneTag) AWSCloudFormationType() string { + return "AWS::Route53::HostedZone.HostedZoneTag" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HostedZone_HostedZoneTag) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HostedZone_HostedZoneTag) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HostedZone_HostedZoneTag) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HostedZone_HostedZoneTag) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HostedZone_HostedZoneTag) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HostedZone_HostedZoneTag) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/route53/aws-route53-hostedzone_queryloggingconfig.go b/cloudformation/route53/aws-route53-hostedzone_queryloggingconfig.go new file mode 100644 index 0000000000..3182b9eb9d --- /dev/null +++ b/cloudformation/route53/aws-route53-hostedzone_queryloggingconfig.go @@ -0,0 +1,65 @@ +package route53 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// HostedZone_QueryLoggingConfig AWS CloudFormation Resource (AWS::Route53::HostedZone.QueryLoggingConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-queryloggingconfig.html +type HostedZone_QueryLoggingConfig struct { + + // CloudWatchLogsLogGroupArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-queryloggingconfig.html#cfn-route53-hostedzone-queryloggingconfig-cloudwatchlogsloggrouparn + CloudWatchLogsLogGroupArn string `json:"CloudWatchLogsLogGroupArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *HostedZone_QueryLoggingConfig) AWSCloudFormationType() string { + return "AWS::Route53::HostedZone.QueryLoggingConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HostedZone_QueryLoggingConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *HostedZone_QueryLoggingConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HostedZone_QueryLoggingConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *HostedZone_QueryLoggingConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HostedZone_QueryLoggingConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *HostedZone_QueryLoggingConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-route53-hostedzone_vpc.go b/cloudformation/route53/aws-route53-hostedzone_vpc.go similarity index 76% rename from cloudformation/resources/aws-route53-hostedzone_vpc.go rename to cloudformation/route53/aws-route53-hostedzone_vpc.go index 8d0ddf37cf..05cec3251d 100644 --- a/cloudformation/resources/aws-route53-hostedzone_vpc.go +++ b/cloudformation/route53/aws-route53-hostedzone_vpc.go @@ -1,10 +1,12 @@ -package resources +package route53 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53HostedZone_VPC AWS CloudFormation Resource (AWS::Route53::HostedZone.VPC) +// HostedZone_VPC AWS CloudFormation Resource (AWS::Route53::HostedZone.VPC) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone-hostedzonevpcs.html -type AWSRoute53HostedZone_VPC struct { +type HostedZone_VPC struct { // VPCId AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoute53HostedZone_VPC struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HostedZone_VPC) AWSCloudFormationType() string { +func (r *HostedZone_VPC) AWSCloudFormationType() string { return "AWS::Route53::HostedZone.VPC" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone_VPC) DependsOn() []string { +func (r *HostedZone_VPC) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53HostedZone_VPC) SetDependsOn(dependencies []string) { +func (r *HostedZone_VPC) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone_VPC) Metadata() map[string]interface{} { +func (r *HostedZone_VPC) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53HostedZone_VPC) SetMetadata(metadata map[string]interface{}) { +func (r *HostedZone_VPC) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone_VPC) DeletionPolicy() policies.DeletionPolicy { +func (r *HostedZone_VPC) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53HostedZone_VPC) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *HostedZone_VPC) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-route53-recordset.go b/cloudformation/route53/aws-route53-recordset.go similarity index 86% rename from cloudformation/resources/aws-route53-recordset.go rename to cloudformation/route53/aws-route53-recordset.go index c777cbb48e..17bfdf1eeb 100644 --- a/cloudformation/resources/aws-route53-recordset.go +++ b/cloudformation/route53/aws-route53-recordset.go @@ -1,20 +1,21 @@ -package resources +package route53 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoute53RecordSet AWS CloudFormation Resource (AWS::Route53::RecordSet) +// RecordSet AWS CloudFormation Resource (AWS::Route53::RecordSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html -type AWSRoute53RecordSet struct { +type RecordSet struct { // AliasTarget AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-aliastarget - AliasTarget *AWSRoute53RecordSet_AliasTarget `json:"AliasTarget,omitempty"` + AliasTarget *RecordSet_AliasTarget `json:"AliasTarget,omitempty"` // Comment AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSRoute53RecordSet struct { // GeoLocation AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-geolocation - GeoLocation *AWSRoute53RecordSet_GeoLocation `json:"GeoLocation,omitempty"` + GeoLocation *RecordSet_GeoLocation `json:"GeoLocation,omitempty"` // HealthCheckId AWS CloudFormation Property // Required: false @@ -97,50 +98,50 @@ type AWSRoute53RecordSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53RecordSet) AWSCloudFormationType() string { +func (r *RecordSet) AWSCloudFormationType() string { return "AWS::Route53::RecordSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSet) DependsOn() []string { +func (r *RecordSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSet) SetDependsOn(dependencies []string) { +func (r *RecordSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSet) Metadata() map[string]interface{} { +func (r *RecordSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSet) SetMetadata(metadata map[string]interface{}) { +func (r *RecordSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSet) DeletionPolicy() policies.DeletionPolicy { +func (r *RecordSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RecordSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoute53RecordSet) MarshalJSON() ([]byte, error) { - type Properties AWSRoute53RecordSet +func (r RecordSet) MarshalJSON() ([]byte, error) { + type Properties RecordSet return json.Marshal(&struct { Type string Properties Properties @@ -158,8 +159,8 @@ func (r AWSRoute53RecordSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoute53RecordSet) UnmarshalJSON(b []byte) error { - type Properties AWSRoute53RecordSet +func (r *RecordSet) UnmarshalJSON(b []byte) error { + type Properties RecordSet res := &struct { Type string Properties *Properties @@ -178,7 +179,7 @@ func (r *AWSRoute53RecordSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoute53RecordSet(*res.Properties) + *r = RecordSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-route53-recordset_aliastarget.go b/cloudformation/route53/aws-route53-recordset_aliastarget.go similarity index 76% rename from cloudformation/resources/aws-route53-recordset_aliastarget.go rename to cloudformation/route53/aws-route53-recordset_aliastarget.go index e8fc66cf85..21b4ac8e37 100644 --- a/cloudformation/resources/aws-route53-recordset_aliastarget.go +++ b/cloudformation/route53/aws-route53-recordset_aliastarget.go @@ -1,10 +1,12 @@ -package resources +package route53 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53RecordSet_AliasTarget AWS CloudFormation Resource (AWS::Route53::RecordSet.AliasTarget) +// RecordSet_AliasTarget AWS CloudFormation Resource (AWS::Route53::RecordSet.AliasTarget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html -type AWSRoute53RecordSet_AliasTarget struct { +type RecordSet_AliasTarget struct { // DNSName AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSRoute53RecordSet_AliasTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53RecordSet_AliasTarget) AWSCloudFormationType() string { +func (r *RecordSet_AliasTarget) AWSCloudFormationType() string { return "AWS::Route53::RecordSet.AliasTarget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSet_AliasTarget) DependsOn() []string { +func (r *RecordSet_AliasTarget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSet_AliasTarget) SetDependsOn(dependencies []string) { +func (r *RecordSet_AliasTarget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSet_AliasTarget) Metadata() map[string]interface{} { +func (r *RecordSet_AliasTarget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSet_AliasTarget) SetMetadata(metadata map[string]interface{}) { +func (r *RecordSet_AliasTarget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSet_AliasTarget) DeletionPolicy() policies.DeletionPolicy { +func (r *RecordSet_AliasTarget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSet_AliasTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RecordSet_AliasTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-route53-recordset_geolocation.go b/cloudformation/route53/aws-route53-recordset_geolocation.go similarity index 76% rename from cloudformation/resources/aws-route53-recordset_geolocation.go rename to cloudformation/route53/aws-route53-recordset_geolocation.go index c1a5c470f7..2c9e6ed640 100644 --- a/cloudformation/resources/aws-route53-recordset_geolocation.go +++ b/cloudformation/route53/aws-route53-recordset_geolocation.go @@ -1,10 +1,12 @@ -package resources +package route53 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53RecordSet_GeoLocation AWS CloudFormation Resource (AWS::Route53::RecordSet.GeoLocation) +// RecordSet_GeoLocation AWS CloudFormation Resource (AWS::Route53::RecordSet.GeoLocation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html -type AWSRoute53RecordSet_GeoLocation struct { +type RecordSet_GeoLocation struct { // ContinentCode AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSRoute53RecordSet_GeoLocation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53RecordSet_GeoLocation) AWSCloudFormationType() string { +func (r *RecordSet_GeoLocation) AWSCloudFormationType() string { return "AWS::Route53::RecordSet.GeoLocation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSet_GeoLocation) DependsOn() []string { +func (r *RecordSet_GeoLocation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSet_GeoLocation) SetDependsOn(dependencies []string) { +func (r *RecordSet_GeoLocation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSet_GeoLocation) Metadata() map[string]interface{} { +func (r *RecordSet_GeoLocation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSet_GeoLocation) SetMetadata(metadata map[string]interface{}) { +func (r *RecordSet_GeoLocation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSet_GeoLocation) DeletionPolicy() policies.DeletionPolicy { +func (r *RecordSet_GeoLocation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSet_GeoLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RecordSet_GeoLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-route53-recordsetgroup.go b/cloudformation/route53/aws-route53-recordsetgroup.go similarity index 80% rename from cloudformation/resources/aws-route53-recordsetgroup.go rename to cloudformation/route53/aws-route53-recordsetgroup.go index 631b71cfe3..183ac346e9 100644 --- a/cloudformation/resources/aws-route53-recordsetgroup.go +++ b/cloudformation/route53/aws-route53-recordsetgroup.go @@ -1,15 +1,16 @@ -package resources +package route53 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoute53RecordSetGroup AWS CloudFormation Resource (AWS::Route53::RecordSetGroup) +// RecordSetGroup AWS CloudFormation Resource (AWS::Route53::RecordSetGroup) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html -type AWSRoute53RecordSetGroup struct { +type RecordSetGroup struct { // Comment AWS CloudFormation Property // Required: false @@ -29,7 +30,7 @@ type AWSRoute53RecordSetGroup struct { // RecordSets AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-recordsets - RecordSets []AWSRoute53RecordSetGroup_RecordSet `json:"RecordSets,omitempty"` + RecordSets []RecordSetGroup_RecordSet `json:"RecordSets,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSRoute53RecordSetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53RecordSetGroup) AWSCloudFormationType() string { +func (r *RecordSetGroup) AWSCloudFormationType() string { return "AWS::Route53::RecordSetGroup" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSetGroup) DependsOn() []string { +func (r *RecordSetGroup) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSetGroup) SetDependsOn(dependencies []string) { +func (r *RecordSetGroup) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSetGroup) Metadata() map[string]interface{} { +func (r *RecordSetGroup) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSetGroup) SetMetadata(metadata map[string]interface{}) { +func (r *RecordSetGroup) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSetGroup) DeletionPolicy() policies.DeletionPolicy { +func (r *RecordSetGroup) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RecordSetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoute53RecordSetGroup) MarshalJSON() ([]byte, error) { - type Properties AWSRoute53RecordSetGroup +func (r RecordSetGroup) MarshalJSON() ([]byte, error) { + type Properties RecordSetGroup return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSRoute53RecordSetGroup) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoute53RecordSetGroup) UnmarshalJSON(b []byte) error { - type Properties AWSRoute53RecordSetGroup +func (r *RecordSetGroup) UnmarshalJSON(b []byte) error { + type Properties RecordSetGroup res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSRoute53RecordSetGroup) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoute53RecordSetGroup(*res.Properties) + *r = RecordSetGroup(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-route53-recordsetgroup_aliastarget.go b/cloudformation/route53/aws-route53-recordsetgroup_aliastarget.go similarity index 75% rename from cloudformation/resources/aws-route53-recordsetgroup_aliastarget.go rename to cloudformation/route53/aws-route53-recordsetgroup_aliastarget.go index 92698e1663..b61f989344 100644 --- a/cloudformation/resources/aws-route53-recordsetgroup_aliastarget.go +++ b/cloudformation/route53/aws-route53-recordsetgroup_aliastarget.go @@ -1,10 +1,12 @@ -package resources +package route53 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53RecordSetGroup_AliasTarget AWS CloudFormation Resource (AWS::Route53::RecordSetGroup.AliasTarget) +// RecordSetGroup_AliasTarget AWS CloudFormation Resource (AWS::Route53::RecordSetGroup.AliasTarget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html -type AWSRoute53RecordSetGroup_AliasTarget struct { +type RecordSetGroup_AliasTarget struct { // DNSName AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSRoute53RecordSetGroup_AliasTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53RecordSetGroup_AliasTarget) AWSCloudFormationType() string { +func (r *RecordSetGroup_AliasTarget) AWSCloudFormationType() string { return "AWS::Route53::RecordSetGroup.AliasTarget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSetGroup_AliasTarget) DependsOn() []string { +func (r *RecordSetGroup_AliasTarget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSetGroup_AliasTarget) SetDependsOn(dependencies []string) { +func (r *RecordSetGroup_AliasTarget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSetGroup_AliasTarget) Metadata() map[string]interface{} { +func (r *RecordSetGroup_AliasTarget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSetGroup_AliasTarget) SetMetadata(metadata map[string]interface{}) { +func (r *RecordSetGroup_AliasTarget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSetGroup_AliasTarget) DeletionPolicy() policies.DeletionPolicy { +func (r *RecordSetGroup_AliasTarget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSetGroup_AliasTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RecordSetGroup_AliasTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-route53-recordsetgroup_geolocation.go b/cloudformation/route53/aws-route53-recordsetgroup_geolocation.go similarity index 76% rename from cloudformation/resources/aws-route53-recordsetgroup_geolocation.go rename to cloudformation/route53/aws-route53-recordsetgroup_geolocation.go index 54ca1e558a..8436120bae 100644 --- a/cloudformation/resources/aws-route53-recordsetgroup_geolocation.go +++ b/cloudformation/route53/aws-route53-recordsetgroup_geolocation.go @@ -1,10 +1,12 @@ -package resources +package route53 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53RecordSetGroup_GeoLocation AWS CloudFormation Resource (AWS::Route53::RecordSetGroup.GeoLocation) +// RecordSetGroup_GeoLocation AWS CloudFormation Resource (AWS::Route53::RecordSetGroup.GeoLocation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html -type AWSRoute53RecordSetGroup_GeoLocation struct { +type RecordSetGroup_GeoLocation struct { // ContinentCode AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSRoute53RecordSetGroup_GeoLocation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53RecordSetGroup_GeoLocation) AWSCloudFormationType() string { +func (r *RecordSetGroup_GeoLocation) AWSCloudFormationType() string { return "AWS::Route53::RecordSetGroup.GeoLocation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSetGroup_GeoLocation) DependsOn() []string { +func (r *RecordSetGroup_GeoLocation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSetGroup_GeoLocation) SetDependsOn(dependencies []string) { +func (r *RecordSetGroup_GeoLocation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSetGroup_GeoLocation) Metadata() map[string]interface{} { +func (r *RecordSetGroup_GeoLocation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSetGroup_GeoLocation) SetMetadata(metadata map[string]interface{}) { +func (r *RecordSetGroup_GeoLocation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSetGroup_GeoLocation) DeletionPolicy() policies.DeletionPolicy { +func (r *RecordSetGroup_GeoLocation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSetGroup_GeoLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RecordSetGroup_GeoLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-route53-recordsetgroup_recordset.go b/cloudformation/route53/aws-route53-recordsetgroup_recordset.go similarity index 84% rename from cloudformation/resources/aws-route53-recordsetgroup_recordset.go rename to cloudformation/route53/aws-route53-recordsetgroup_recordset.go index bfe30d53a7..2c7c456d5d 100644 --- a/cloudformation/resources/aws-route53-recordsetgroup_recordset.go +++ b/cloudformation/route53/aws-route53-recordsetgroup_recordset.go @@ -1,15 +1,17 @@ -package resources +package route53 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53RecordSetGroup_RecordSet AWS CloudFormation Resource (AWS::Route53::RecordSetGroup.RecordSet) +// RecordSetGroup_RecordSet AWS CloudFormation Resource (AWS::Route53::RecordSetGroup.RecordSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html -type AWSRoute53RecordSetGroup_RecordSet struct { +type RecordSetGroup_RecordSet struct { // AliasTarget AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-aliastarget - AliasTarget *AWSRoute53RecordSetGroup_AliasTarget `json:"AliasTarget,omitempty"` + AliasTarget *RecordSetGroup_AliasTarget `json:"AliasTarget,omitempty"` // Comment AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSRoute53RecordSetGroup_RecordSet struct { // GeoLocation AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-geolocation - GeoLocation *AWSRoute53RecordSetGroup_GeoLocation `json:"GeoLocation,omitempty"` + GeoLocation *RecordSetGroup_GeoLocation `json:"GeoLocation,omitempty"` // HealthCheckId AWS CloudFormation Property // Required: false @@ -92,42 +94,42 @@ type AWSRoute53RecordSetGroup_RecordSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53RecordSetGroup_RecordSet) AWSCloudFormationType() string { +func (r *RecordSetGroup_RecordSet) AWSCloudFormationType() string { return "AWS::Route53::RecordSetGroup.RecordSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSetGroup_RecordSet) DependsOn() []string { +func (r *RecordSetGroup_RecordSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53RecordSetGroup_RecordSet) SetDependsOn(dependencies []string) { +func (r *RecordSetGroup_RecordSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSetGroup_RecordSet) Metadata() map[string]interface{} { +func (r *RecordSetGroup_RecordSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53RecordSetGroup_RecordSet) SetMetadata(metadata map[string]interface{}) { +func (r *RecordSetGroup_RecordSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSetGroup_RecordSet) DeletionPolicy() policies.DeletionPolicy { +func (r *RecordSetGroup_RecordSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53RecordSetGroup_RecordSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RecordSetGroup_RecordSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-route53resolver-resolverendpoint.go b/cloudformation/route53resolver/aws-route53resolver-resolverendpoint.go similarity index 78% rename from cloudformation/resources/aws-route53resolver-resolverendpoint.go rename to cloudformation/route53resolver/aws-route53resolver-resolverendpoint.go index 8d9bf55eb8..b0e619b073 100644 --- a/cloudformation/resources/aws-route53resolver-resolverendpoint.go +++ b/cloudformation/route53resolver/aws-route53resolver-resolverendpoint.go @@ -1,15 +1,17 @@ -package resources +package route53resolver import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRoute53ResolverResolverEndpoint AWS CloudFormation Resource (AWS::Route53Resolver::ResolverEndpoint) +// ResolverEndpoint AWS CloudFormation Resource (AWS::Route53Resolver::ResolverEndpoint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html -type AWSRoute53ResolverResolverEndpoint struct { +type ResolverEndpoint struct { // Direction AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSRoute53ResolverResolverEndpoint struct { // IpAddresses AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-ipaddresses - IpAddresses []AWSRoute53ResolverResolverEndpoint_IpAddressRequest `json:"IpAddresses,omitempty"` + IpAddresses []ResolverEndpoint_IpAddressRequest `json:"IpAddresses,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSRoute53ResolverResolverEndpoint struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSRoute53ResolverResolverEndpoint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53ResolverResolverEndpoint) AWSCloudFormationType() string { +func (r *ResolverEndpoint) AWSCloudFormationType() string { return "AWS::Route53Resolver::ResolverEndpoint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverEndpoint) DependsOn() []string { +func (r *ResolverEndpoint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverEndpoint) SetDependsOn(dependencies []string) { +func (r *ResolverEndpoint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverEndpoint) Metadata() map[string]interface{} { +func (r *ResolverEndpoint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverEndpoint) SetMetadata(metadata map[string]interface{}) { +func (r *ResolverEndpoint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverEndpoint) DeletionPolicy() policies.DeletionPolicy { +func (r *ResolverEndpoint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResolverEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoute53ResolverResolverEndpoint) MarshalJSON() ([]byte, error) { - type Properties AWSRoute53ResolverResolverEndpoint +func (r ResolverEndpoint) MarshalJSON() ([]byte, error) { + type Properties ResolverEndpoint return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSRoute53ResolverResolverEndpoint) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoute53ResolverResolverEndpoint) UnmarshalJSON(b []byte) error { - type Properties AWSRoute53ResolverResolverEndpoint +func (r *ResolverEndpoint) UnmarshalJSON(b []byte) error { + type Properties ResolverEndpoint res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSRoute53ResolverResolverEndpoint) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoute53ResolverResolverEndpoint(*res.Properties) + *r = ResolverEndpoint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/route53resolver/aws-route53resolver-resolverendpoint_ipaddressrequest.go b/cloudformation/route53resolver/aws-route53resolver-resolverendpoint_ipaddressrequest.go new file mode 100644 index 0000000000..fb9dba729c --- /dev/null +++ b/cloudformation/route53resolver/aws-route53resolver-resolverendpoint_ipaddressrequest.go @@ -0,0 +1,70 @@ +package route53resolver + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResolverEndpoint_IpAddressRequest AWS CloudFormation Resource (AWS::Route53Resolver::ResolverEndpoint.IpAddressRequest) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html +type ResolverEndpoint_IpAddressRequest struct { + + // Ip AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html#cfn-route53resolver-resolverendpoint-ipaddressrequest-ip + Ip string `json:"Ip,omitempty"` + + // SubnetId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html#cfn-route53resolver-resolverendpoint-ipaddressrequest-subnetid + SubnetId string `json:"SubnetId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResolverEndpoint_IpAddressRequest) AWSCloudFormationType() string { + return "AWS::Route53Resolver::ResolverEndpoint.IpAddressRequest" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResolverEndpoint_IpAddressRequest) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResolverEndpoint_IpAddressRequest) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResolverEndpoint_IpAddressRequest) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResolverEndpoint_IpAddressRequest) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResolverEndpoint_IpAddressRequest) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResolverEndpoint_IpAddressRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-route53resolver-resolverrule.go b/cloudformation/route53resolver/aws-route53resolver-resolverrule.go similarity index 80% rename from cloudformation/resources/aws-route53resolver-resolverrule.go rename to cloudformation/route53resolver/aws-route53resolver-resolverrule.go index a03e45002a..60c5ef0f97 100644 --- a/cloudformation/resources/aws-route53resolver-resolverrule.go +++ b/cloudformation/route53resolver/aws-route53resolver-resolverrule.go @@ -1,15 +1,17 @@ -package resources +package route53resolver import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSRoute53ResolverResolverRule AWS CloudFormation Resource (AWS::Route53Resolver::ResolverRule) +// ResolverRule AWS CloudFormation Resource (AWS::Route53Resolver::ResolverRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html -type AWSRoute53ResolverResolverRule struct { +type ResolverRule struct { // DomainName AWS CloudFormation Property // Required: true @@ -34,12 +36,12 @@ type AWSRoute53ResolverResolverRule struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // TargetIps AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-targetips - TargetIps []AWSRoute53ResolverResolverRule_TargetAddress `json:"TargetIps,omitempty"` + TargetIps []ResolverRule_TargetAddress `json:"TargetIps,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +54,50 @@ type AWSRoute53ResolverResolverRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53ResolverResolverRule) AWSCloudFormationType() string { +func (r *ResolverRule) AWSCloudFormationType() string { return "AWS::Route53Resolver::ResolverRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverRule) DependsOn() []string { +func (r *ResolverRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverRule) SetDependsOn(dependencies []string) { +func (r *ResolverRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverRule) Metadata() map[string]interface{} { +func (r *ResolverRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverRule) SetMetadata(metadata map[string]interface{}) { +func (r *ResolverRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverRule) DeletionPolicy() policies.DeletionPolicy { +func (r *ResolverRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResolverRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoute53ResolverResolverRule) MarshalJSON() ([]byte, error) { - type Properties AWSRoute53ResolverResolverRule +func (r ResolverRule) MarshalJSON() ([]byte, error) { + type Properties ResolverRule return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +115,8 @@ func (r AWSRoute53ResolverResolverRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoute53ResolverResolverRule) UnmarshalJSON(b []byte) error { - type Properties AWSRoute53ResolverResolverRule +func (r *ResolverRule) UnmarshalJSON(b []byte) error { + type Properties ResolverRule res := &struct { Type string Properties *Properties @@ -133,7 +135,7 @@ func (r *AWSRoute53ResolverResolverRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoute53ResolverResolverRule(*res.Properties) + *r = ResolverRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go b/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go new file mode 100644 index 0000000000..60e7b20a69 --- /dev/null +++ b/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go @@ -0,0 +1,70 @@ +package route53resolver + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ResolverRule_TargetAddress AWS CloudFormation Resource (AWS::Route53Resolver::ResolverRule.TargetAddress) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html +type ResolverRule_TargetAddress struct { + + // Ip AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip + Ip string `json:"Ip,omitempty"` + + // Port AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-port + Port string `json:"Port,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ResolverRule_TargetAddress) AWSCloudFormationType() string { + return "AWS::Route53Resolver::ResolverRule.TargetAddress" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResolverRule_TargetAddress) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ResolverRule_TargetAddress) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResolverRule_TargetAddress) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ResolverRule_TargetAddress) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResolverRule_TargetAddress) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ResolverRule_TargetAddress) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-route53resolver-resolverruleassociation.go b/cloudformation/route53resolver/aws-route53resolver-resolverruleassociation.go similarity index 77% rename from cloudformation/resources/aws-route53resolver-resolverruleassociation.go rename to cloudformation/route53resolver/aws-route53resolver-resolverruleassociation.go index 96756c6e23..b70b52f7ca 100644 --- a/cloudformation/resources/aws-route53resolver-resolverruleassociation.go +++ b/cloudformation/route53resolver/aws-route53resolver-resolverruleassociation.go @@ -1,15 +1,16 @@ -package resources +package route53resolver import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSRoute53ResolverResolverRuleAssociation AWS CloudFormation Resource (AWS::Route53Resolver::ResolverRuleAssociation) +// ResolverRuleAssociation AWS CloudFormation Resource (AWS::Route53Resolver::ResolverRuleAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html -type AWSRoute53ResolverResolverRuleAssociation struct { +type ResolverRuleAssociation struct { // Name AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSRoute53ResolverResolverRuleAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53ResolverResolverRuleAssociation) AWSCloudFormationType() string { +func (r *ResolverRuleAssociation) AWSCloudFormationType() string { return "AWS::Route53Resolver::ResolverRuleAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverRuleAssociation) DependsOn() []string { +func (r *ResolverRuleAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSRoute53ResolverResolverRuleAssociation) SetDependsOn(dependencies []string) { +func (r *ResolverRuleAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverRuleAssociation) Metadata() map[string]interface{} { +func (r *ResolverRuleAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSRoute53ResolverResolverRuleAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *ResolverRuleAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverRuleAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *ResolverRuleAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSRoute53ResolverResolverRuleAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResolverRuleAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSRoute53ResolverResolverRuleAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSRoute53ResolverResolverRuleAssociation +func (r ResolverRuleAssociation) MarshalJSON() ([]byte, error) { + type Properties ResolverRuleAssociation return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSRoute53ResolverResolverRuleAssociation) MarshalJSON() ([]byte, error) // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSRoute53ResolverResolverRuleAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSRoute53ResolverResolverRuleAssociation +func (r *ResolverRuleAssociation) UnmarshalJSON(b []byte) error { + type Properties ResolverRuleAssociation res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSRoute53ResolverResolverRuleAssociation) UnmarshalJSON(b []byte) erro // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSRoute53ResolverResolverRuleAssociation(*res.Properties) + *r = ResolverRuleAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-s3-bucket.go b/cloudformation/s3/aws-s3-bucket.go similarity index 76% rename from cloudformation/resources/aws-s3-bucket.go rename to cloudformation/s3/aws-s3-bucket.go index 28f4776264..88b633d76f 100644 --- a/cloudformation/resources/aws-s3-bucket.go +++ b/cloudformation/s3/aws-s3-bucket.go @@ -1,20 +1,22 @@ -package resources +package s3 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSS3Bucket AWS CloudFormation Resource (AWS::S3::Bucket) +// Bucket AWS CloudFormation Resource (AWS::S3::Bucket) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html -type AWSS3Bucket struct { +type Bucket struct { // AccelerateConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accelerateconfiguration - AccelerateConfiguration *AWSS3Bucket_AccelerateConfiguration `json:"AccelerateConfiguration,omitempty"` + AccelerateConfiguration *Bucket_AccelerateConfiguration `json:"AccelerateConfiguration,omitempty"` // AccessControl AWS CloudFormation Property // Required: false @@ -24,12 +26,12 @@ type AWSS3Bucket struct { // AnalyticsConfigurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-analyticsconfigurations - AnalyticsConfigurations []AWSS3Bucket_AnalyticsConfiguration `json:"AnalyticsConfigurations,omitempty"` + AnalyticsConfigurations []Bucket_AnalyticsConfiguration `json:"AnalyticsConfigurations,omitempty"` // BucketEncryption AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-bucketencryption - BucketEncryption *AWSS3Bucket_BucketEncryption `json:"BucketEncryption,omitempty"` + BucketEncryption *Bucket_BucketEncryption `json:"BucketEncryption,omitempty"` // BucketName AWS CloudFormation Property // Required: false @@ -39,37 +41,37 @@ type AWSS3Bucket struct { // CorsConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-crossoriginconfig - CorsConfiguration *AWSS3Bucket_CorsConfiguration `json:"CorsConfiguration,omitempty"` + CorsConfiguration *Bucket_CorsConfiguration `json:"CorsConfiguration,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 - InventoryConfigurations []AWSS3Bucket_InventoryConfiguration `json:"InventoryConfigurations,omitempty"` + InventoryConfigurations []Bucket_InventoryConfiguration `json:"InventoryConfigurations,omitempty"` // LifecycleConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-lifecycleconfig - LifecycleConfiguration *AWSS3Bucket_LifecycleConfiguration `json:"LifecycleConfiguration,omitempty"` + LifecycleConfiguration *Bucket_LifecycleConfiguration `json:"LifecycleConfiguration,omitempty"` // LoggingConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-loggingconfig - LoggingConfiguration *AWSS3Bucket_LoggingConfiguration `json:"LoggingConfiguration,omitempty"` + LoggingConfiguration *Bucket_LoggingConfiguration `json:"LoggingConfiguration,omitempty"` // MetricsConfigurations AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-metricsconfigurations - MetricsConfigurations []AWSS3Bucket_MetricsConfiguration `json:"MetricsConfigurations,omitempty"` + MetricsConfigurations []Bucket_MetricsConfiguration `json:"MetricsConfigurations,omitempty"` // NotificationConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-notification - NotificationConfiguration *AWSS3Bucket_NotificationConfiguration `json:"NotificationConfiguration,omitempty"` + NotificationConfiguration *Bucket_NotificationConfiguration `json:"NotificationConfiguration,omitempty"` // ObjectLockConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockconfiguration - ObjectLockConfiguration *AWSS3Bucket_ObjectLockConfiguration `json:"ObjectLockConfiguration,omitempty"` + ObjectLockConfiguration *Bucket_ObjectLockConfiguration `json:"ObjectLockConfiguration,omitempty"` // ObjectLockEnabled AWS CloudFormation Property // Required: false @@ -79,27 +81,27 @@ type AWSS3Bucket struct { // PublicAccessBlockConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-publicaccessblockconfiguration - PublicAccessBlockConfiguration *AWSS3Bucket_PublicAccessBlockConfiguration `json:"PublicAccessBlockConfiguration,omitempty"` + PublicAccessBlockConfiguration *Bucket_PublicAccessBlockConfiguration `json:"PublicAccessBlockConfiguration,omitempty"` // ReplicationConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-replicationconfiguration - ReplicationConfiguration *AWSS3Bucket_ReplicationConfiguration `json:"ReplicationConfiguration,omitempty"` + ReplicationConfiguration *Bucket_ReplicationConfiguration `json:"ReplicationConfiguration,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VersioningConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-versioning - VersioningConfiguration *AWSS3Bucket_VersioningConfiguration `json:"VersioningConfiguration,omitempty"` + VersioningConfiguration *Bucket_VersioningConfiguration `json:"VersioningConfiguration,omitempty"` // WebsiteConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-websiteconfiguration - WebsiteConfiguration *AWSS3Bucket_WebsiteConfiguration `json:"WebsiteConfiguration,omitempty"` + WebsiteConfiguration *Bucket_WebsiteConfiguration `json:"WebsiteConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -112,50 +114,50 @@ type AWSS3Bucket struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket) AWSCloudFormationType() string { +func (r *Bucket) AWSCloudFormationType() string { return "AWS::S3::Bucket" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket) DependsOn() []string { +func (r *Bucket) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket) SetDependsOn(dependencies []string) { +func (r *Bucket) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket) Metadata() map[string]interface{} { +func (r *Bucket) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSS3Bucket) MarshalJSON() ([]byte, error) { - type Properties AWSS3Bucket +func (r Bucket) MarshalJSON() ([]byte, error) { + type Properties Bucket return json.Marshal(&struct { Type string Properties Properties @@ -173,8 +175,8 @@ func (r AWSS3Bucket) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSS3Bucket) UnmarshalJSON(b []byte) error { - type Properties AWSS3Bucket +func (r *Bucket) UnmarshalJSON(b []byte) error { + type Properties Bucket res := &struct { Type string Properties *Properties @@ -193,7 +195,7 @@ func (r *AWSS3Bucket) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSS3Bucket(*res.Properties) + *r = Bucket(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/s3/aws-s3-bucket_abortincompletemultipartupload.go b/cloudformation/s3/aws-s3-bucket_abortincompletemultipartupload.go new file mode 100644 index 0000000000..7b3f28a76b --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_abortincompletemultipartupload.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_AbortIncompleteMultipartUpload AWS CloudFormation Resource (AWS::S3::Bucket.AbortIncompleteMultipartUpload) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html +type Bucket_AbortIncompleteMultipartUpload struct { + + // DaysAfterInitiation AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html#cfn-s3-bucket-abortincompletemultipartupload-daysafterinitiation + DaysAfterInitiation int `json:"DaysAfterInitiation"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_AbortIncompleteMultipartUpload) AWSCloudFormationType() string { + return "AWS::S3::Bucket.AbortIncompleteMultipartUpload" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_AbortIncompleteMultipartUpload) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_AbortIncompleteMultipartUpload) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_AbortIncompleteMultipartUpload) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_AbortIncompleteMultipartUpload) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_AbortIncompleteMultipartUpload) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_AbortIncompleteMultipartUpload) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_accelerateconfiguration.go b/cloudformation/s3/aws-s3-bucket_accelerateconfiguration.go new file mode 100644 index 0000000000..7eff8cdcd3 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_accelerateconfiguration.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_AccelerateConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.AccelerateConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html +type Bucket_AccelerateConfiguration struct { + + // AccelerationStatus AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html#cfn-s3-bucket-accelerateconfiguration-accelerationstatus + AccelerationStatus string `json:"AccelerationStatus,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_AccelerateConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.AccelerateConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_AccelerateConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_AccelerateConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_AccelerateConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_AccelerateConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_AccelerateConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_AccelerateConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_accesscontroltranslation.go b/cloudformation/s3/aws-s3-bucket_accesscontroltranslation.go new file mode 100644 index 0000000000..1a9cb190fb --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_accesscontroltranslation.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_AccessControlTranslation AWS CloudFormation Resource (AWS::S3::Bucket.AccessControlTranslation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html +type Bucket_AccessControlTranslation struct { + + // Owner AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html#cfn-s3-bucket-accesscontroltranslation-owner + Owner string `json:"Owner,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_AccessControlTranslation) AWSCloudFormationType() string { + return "AWS::S3::Bucket.AccessControlTranslation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_AccessControlTranslation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_AccessControlTranslation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_AccessControlTranslation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_AccessControlTranslation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_AccessControlTranslation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_AccessControlTranslation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_analyticsconfiguration.go b/cloudformation/s3/aws-s3-bucket_analyticsconfiguration.go new file mode 100644 index 0000000000..6efac4170b --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_analyticsconfiguration.go @@ -0,0 +1,80 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_AnalyticsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.AnalyticsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html +type Bucket_AnalyticsConfiguration struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-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-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-prefix + Prefix string `json:"Prefix,omitempty"` + + // StorageClassAnalysis AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-storageclassanalysis + StorageClassAnalysis *Bucket_StorageClassAnalysis `json:"StorageClassAnalysis,omitempty"` + + // TagFilters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-tagfilters + TagFilters []Bucket_TagFilter `json:"TagFilters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_AnalyticsConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.AnalyticsConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_AnalyticsConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_AnalyticsConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_AnalyticsConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_AnalyticsConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_AnalyticsConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_AnalyticsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_bucketencryption.go b/cloudformation/s3/aws-s3-bucket_bucketencryption.go new file mode 100644 index 0000000000..31555d1f73 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_bucketencryption.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_BucketEncryption AWS CloudFormation Resource (AWS::S3::Bucket.BucketEncryption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html +type Bucket_BucketEncryption struct { + + // ServerSideEncryptionConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html#cfn-s3-bucket-bucketencryption-serversideencryptionconfiguration + ServerSideEncryptionConfiguration []Bucket_ServerSideEncryptionRule `json:"ServerSideEncryptionConfiguration,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_BucketEncryption) AWSCloudFormationType() string { + return "AWS::S3::Bucket.BucketEncryption" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_BucketEncryption) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_BucketEncryption) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_BucketEncryption) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_BucketEncryption) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_BucketEncryption) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_BucketEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_corsconfiguration.go b/cloudformation/s3/aws-s3-bucket_corsconfiguration.go new file mode 100644 index 0000000000..b89ffb712e --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_corsconfiguration.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_CorsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.CorsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html +type Bucket_CorsConfiguration struct { + + // CorsRules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html#cfn-s3-bucket-cors-corsrule + CorsRules []Bucket_CorsRule `json:"CorsRules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_CorsConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.CorsConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_CorsConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_CorsConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_CorsConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_CorsConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_CorsConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_CorsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucket_corsrule.go b/cloudformation/s3/aws-s3-bucket_corsrule.go similarity index 83% rename from cloudformation/resources/aws-s3-bucket_corsrule.go rename to cloudformation/s3/aws-s3-bucket_corsrule.go index e64da74f1e..e2a855f138 100644 --- a/cloudformation/resources/aws-s3-bucket_corsrule.go +++ b/cloudformation/s3/aws-s3-bucket_corsrule.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_CorsRule AWS CloudFormation Resource (AWS::S3::Bucket.CorsRule) +// Bucket_CorsRule AWS CloudFormation Resource (AWS::S3::Bucket.CorsRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html -type AWSS3Bucket_CorsRule struct { +type Bucket_CorsRule struct { // AllowedHeaders AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSS3Bucket_CorsRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_CorsRule) AWSCloudFormationType() string { +func (r *Bucket_CorsRule) AWSCloudFormationType() string { return "AWS::S3::Bucket.CorsRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_CorsRule) DependsOn() []string { +func (r *Bucket_CorsRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_CorsRule) SetDependsOn(dependencies []string) { +func (r *Bucket_CorsRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_CorsRule) Metadata() map[string]interface{} { +func (r *Bucket_CorsRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_CorsRule) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_CorsRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_CorsRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_CorsRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_CorsRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_CorsRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/s3/aws-s3-bucket_dataexport.go b/cloudformation/s3/aws-s3-bucket_dataexport.go new file mode 100644 index 0000000000..7b7991b9f7 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_dataexport.go @@ -0,0 +1,70 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_DataExport AWS CloudFormation Resource (AWS::S3::Bucket.DataExport) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html +type Bucket_DataExport struct { + + // Destination AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-destination + Destination *Bucket_Destination `json:"Destination,omitempty"` + + // OutputSchemaVersion AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-outputschemaversion + OutputSchemaVersion string `json:"OutputSchemaVersion,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_DataExport) AWSCloudFormationType() string { + return "AWS::S3::Bucket.DataExport" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_DataExport) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_DataExport) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_DataExport) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_DataExport) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_DataExport) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_DataExport) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucket_defaultretention.go b/cloudformation/s3/aws-s3-bucket_defaultretention.go similarity index 76% rename from cloudformation/resources/aws-s3-bucket_defaultretention.go rename to cloudformation/s3/aws-s3-bucket_defaultretention.go index ad32272121..bfa25c6625 100644 --- a/cloudformation/resources/aws-s3-bucket_defaultretention.go +++ b/cloudformation/s3/aws-s3-bucket_defaultretention.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_DefaultRetention AWS CloudFormation Resource (AWS::S3::Bucket.DefaultRetention) +// Bucket_DefaultRetention AWS CloudFormation Resource (AWS::S3::Bucket.DefaultRetention) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html -type AWSS3Bucket_DefaultRetention struct { +type Bucket_DefaultRetention struct { // Days AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSS3Bucket_DefaultRetention struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_DefaultRetention) AWSCloudFormationType() string { +func (r *Bucket_DefaultRetention) AWSCloudFormationType() string { return "AWS::S3::Bucket.DefaultRetention" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_DefaultRetention) DependsOn() []string { +func (r *Bucket_DefaultRetention) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_DefaultRetention) SetDependsOn(dependencies []string) { +func (r *Bucket_DefaultRetention) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_DefaultRetention) Metadata() map[string]interface{} { +func (r *Bucket_DefaultRetention) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_DefaultRetention) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_DefaultRetention) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_DefaultRetention) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_DefaultRetention) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_DefaultRetention) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_DefaultRetention) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_destination.go b/cloudformation/s3/aws-s3-bucket_destination.go similarity index 79% rename from cloudformation/resources/aws-s3-bucket_destination.go rename to cloudformation/s3/aws-s3-bucket_destination.go index b2f82210ca..dd01994248 100644 --- a/cloudformation/resources/aws-s3-bucket_destination.go +++ b/cloudformation/s3/aws-s3-bucket_destination.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_Destination AWS CloudFormation Resource (AWS::S3::Bucket.Destination) +// Bucket_Destination AWS CloudFormation Resource (AWS::S3::Bucket.Destination) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html -type AWSS3Bucket_Destination struct { +type Bucket_Destination struct { // BucketAccountId AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSS3Bucket_Destination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_Destination) AWSCloudFormationType() string { +func (r *Bucket_Destination) AWSCloudFormationType() string { return "AWS::S3::Bucket.Destination" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_Destination) DependsOn() []string { +func (r *Bucket_Destination) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_Destination) SetDependsOn(dependencies []string) { +func (r *Bucket_Destination) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_Destination) Metadata() map[string]interface{} { +func (r *Bucket_Destination) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_Destination) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_Destination) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_Destination) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_Destination) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_Destination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_Destination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/s3/aws-s3-bucket_encryptionconfiguration.go b/cloudformation/s3/aws-s3-bucket_encryptionconfiguration.go new file mode 100644 index 0000000000..c292cc421f --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_encryptionconfiguration.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_EncryptionConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.EncryptionConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html +type Bucket_EncryptionConfiguration struct { + + // ReplicaKmsKeyID AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html#cfn-s3-bucket-encryptionconfiguration-replicakmskeyid + ReplicaKmsKeyID string `json:"ReplicaKmsKeyID,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_EncryptionConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.EncryptionConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_EncryptionConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_EncryptionConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_EncryptionConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucket_filterrule.go b/cloudformation/s3/aws-s3-bucket_filterrule.go similarity index 77% rename from cloudformation/resources/aws-s3-bucket_filterrule.go rename to cloudformation/s3/aws-s3-bucket_filterrule.go index 0f6ff4ceec..63f5ad46b1 100644 --- a/cloudformation/resources/aws-s3-bucket_filterrule.go +++ b/cloudformation/s3/aws-s3-bucket_filterrule.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_FilterRule AWS CloudFormation Resource (AWS::S3::Bucket.FilterRule) +// Bucket_FilterRule AWS CloudFormation Resource (AWS::S3::Bucket.FilterRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html -type AWSS3Bucket_FilterRule struct { +type Bucket_FilterRule struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSS3Bucket_FilterRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_FilterRule) AWSCloudFormationType() string { +func (r *Bucket_FilterRule) AWSCloudFormationType() string { return "AWS::S3::Bucket.FilterRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_FilterRule) DependsOn() []string { +func (r *Bucket_FilterRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_FilterRule) SetDependsOn(dependencies []string) { +func (r *Bucket_FilterRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_FilterRule) Metadata() map[string]interface{} { +func (r *Bucket_FilterRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_FilterRule) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_FilterRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_FilterRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_FilterRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_FilterRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_FilterRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_inventoryconfiguration.go b/cloudformation/s3/aws-s3-bucket_inventoryconfiguration.go similarity index 80% rename from cloudformation/resources/aws-s3-bucket_inventoryconfiguration.go rename to cloudformation/s3/aws-s3-bucket_inventoryconfiguration.go index 55f8478c53..2c801257cf 100644 --- a/cloudformation/resources/aws-s3-bucket_inventoryconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_inventoryconfiguration.go @@ -1,15 +1,17 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_InventoryConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.InventoryConfiguration) +// Bucket_InventoryConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.InventoryConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html -type AWSS3Bucket_InventoryConfiguration struct { +type Bucket_InventoryConfiguration struct { // Destination AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-destination - Destination *AWSS3Bucket_Destination `json:"Destination,omitempty"` + Destination *Bucket_Destination `json:"Destination,omitempty"` // Enabled AWS CloudFormation Property // Required: true @@ -52,42 +54,42 @@ type AWSS3Bucket_InventoryConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_InventoryConfiguration) AWSCloudFormationType() string { +func (r *Bucket_InventoryConfiguration) AWSCloudFormationType() string { return "AWS::S3::Bucket.InventoryConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_InventoryConfiguration) DependsOn() []string { +func (r *Bucket_InventoryConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_InventoryConfiguration) SetDependsOn(dependencies []string) { +func (r *Bucket_InventoryConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_InventoryConfiguration) Metadata() map[string]interface{} { +func (r *Bucket_InventoryConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_InventoryConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_InventoryConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_InventoryConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_InventoryConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_InventoryConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_InventoryConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_lambdaconfiguration.go b/cloudformation/s3/aws-s3-bucket_lambdaconfiguration.go similarity index 75% rename from cloudformation/resources/aws-s3-bucket_lambdaconfiguration.go rename to cloudformation/s3/aws-s3-bucket_lambdaconfiguration.go index 24c547c174..3037016ed7 100644 --- a/cloudformation/resources/aws-s3-bucket_lambdaconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_lambdaconfiguration.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_LambdaConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.LambdaConfiguration) +// Bucket_LambdaConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.LambdaConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html -type AWSS3Bucket_LambdaConfiguration struct { +type Bucket_LambdaConfiguration struct { // Event AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSS3Bucket_LambdaConfiguration struct { // Filter AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-filter - Filter *AWSS3Bucket_NotificationFilter `json:"Filter,omitempty"` + Filter *Bucket_NotificationFilter `json:"Filter,omitempty"` // Function AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSS3Bucket_LambdaConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_LambdaConfiguration) AWSCloudFormationType() string { +func (r *Bucket_LambdaConfiguration) AWSCloudFormationType() string { return "AWS::S3::Bucket.LambdaConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_LambdaConfiguration) DependsOn() []string { +func (r *Bucket_LambdaConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_LambdaConfiguration) SetDependsOn(dependencies []string) { +func (r *Bucket_LambdaConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_LambdaConfiguration) Metadata() map[string]interface{} { +func (r *Bucket_LambdaConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_LambdaConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_LambdaConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_LambdaConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_LambdaConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_LambdaConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_LambdaConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/s3/aws-s3-bucket_lifecycleconfiguration.go b/cloudformation/s3/aws-s3-bucket_lifecycleconfiguration.go new file mode 100644 index 0000000000..ba4eee51b9 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_lifecycleconfiguration.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_LifecycleConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.LifecycleConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html +type Bucket_LifecycleConfiguration struct { + + // Rules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html#cfn-s3-bucket-lifecycleconfig-rules + Rules []Bucket_Rule `json:"Rules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_LifecycleConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.LifecycleConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_LifecycleConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_LifecycleConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_LifecycleConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_LifecycleConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_LifecycleConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_LifecycleConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_loggingconfiguration.go b/cloudformation/s3/aws-s3-bucket_loggingconfiguration.go new file mode 100644 index 0000000000..5ed0c67cf3 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_loggingconfiguration.go @@ -0,0 +1,70 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_LoggingConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.LoggingConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html +type Bucket_LoggingConfiguration struct { + + // DestinationBucketName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-destinationbucketname + DestinationBucketName string `json:"DestinationBucketName,omitempty"` + + // LogFilePrefix AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-logfileprefix + LogFilePrefix string `json:"LogFilePrefix,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_LoggingConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.LoggingConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_LoggingConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_LoggingConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_LoggingConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_LoggingConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_LoggingConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_LoggingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_metricsconfiguration.go b/cloudformation/s3/aws-s3-bucket_metricsconfiguration.go new file mode 100644 index 0000000000..50b69f712d --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_metricsconfiguration.go @@ -0,0 +1,75 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_MetricsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.MetricsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html +type Bucket_MetricsConfiguration struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-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-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-prefix + Prefix string `json:"Prefix,omitempty"` + + // TagFilters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-tagfilters + TagFilters []Bucket_TagFilter `json:"TagFilters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_MetricsConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.MetricsConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_MetricsConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_MetricsConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_MetricsConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_MetricsConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_MetricsConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_MetricsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_noncurrentversiontransition.go b/cloudformation/s3/aws-s3-bucket_noncurrentversiontransition.go new file mode 100644 index 0000000000..72b402ecee --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_noncurrentversiontransition.go @@ -0,0 +1,70 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_NoncurrentVersionTransition AWS CloudFormation Resource (AWS::S3::Bucket.NoncurrentVersionTransition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html +type Bucket_NoncurrentVersionTransition struct { + + // StorageClass AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-storageclass + StorageClass string `json:"StorageClass,omitempty"` + + // TransitionInDays AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-transitionindays + TransitionInDays int `json:"TransitionInDays"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_NoncurrentVersionTransition) AWSCloudFormationType() string { + return "AWS::S3::Bucket.NoncurrentVersionTransition" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_NoncurrentVersionTransition) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_NoncurrentVersionTransition) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_NoncurrentVersionTransition) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_NoncurrentVersionTransition) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_NoncurrentVersionTransition) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_NoncurrentVersionTransition) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_notificationconfiguration.go b/cloudformation/s3/aws-s3-bucket_notificationconfiguration.go new file mode 100644 index 0000000000..8a599ee73e --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_notificationconfiguration.go @@ -0,0 +1,75 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_NotificationConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.NotificationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html +type Bucket_NotificationConfiguration struct { + + // LambdaConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig + LambdaConfigurations []Bucket_LambdaConfiguration `json:"LambdaConfigurations,omitempty"` + + // QueueConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-queueconfig + QueueConfigurations []Bucket_QueueConfiguration `json:"QueueConfigurations,omitempty"` + + // TopicConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-topicconfig + TopicConfigurations []Bucket_TopicConfiguration `json:"TopicConfigurations,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_NotificationConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.NotificationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_NotificationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_NotificationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_NotificationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_notificationfilter.go b/cloudformation/s3/aws-s3-bucket_notificationfilter.go new file mode 100644 index 0000000000..b86ab6e87f --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_notificationfilter.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_NotificationFilter AWS CloudFormation Resource (AWS::S3::Bucket.NotificationFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html +type Bucket_NotificationFilter struct { + + // S3Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key + S3Key *Bucket_S3KeyFilter `json:"S3Key,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_NotificationFilter) AWSCloudFormationType() string { + return "AWS::S3::Bucket.NotificationFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_NotificationFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_NotificationFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_NotificationFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_NotificationFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_NotificationFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_NotificationFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_objectlockconfiguration.go b/cloudformation/s3/aws-s3-bucket_objectlockconfiguration.go new file mode 100644 index 0000000000..63faa26889 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_objectlockconfiguration.go @@ -0,0 +1,70 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_ObjectLockConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.ObjectLockConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html +type Bucket_ObjectLockConfiguration struct { + + // ObjectLockEnabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-objectlockenabled + ObjectLockEnabled string `json:"ObjectLockEnabled,omitempty"` + + // Rule AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-rule + Rule *Bucket_ObjectLockRule `json:"Rule,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_ObjectLockConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.ObjectLockConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ObjectLockConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ObjectLockConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ObjectLockConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ObjectLockConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ObjectLockConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ObjectLockConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_objectlockrule.go b/cloudformation/s3/aws-s3-bucket_objectlockrule.go new file mode 100644 index 0000000000..1b7bc29061 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_objectlockrule.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_ObjectLockRule AWS CloudFormation Resource (AWS::S3::Bucket.ObjectLockRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html +type Bucket_ObjectLockRule struct { + + // DefaultRetention AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html#cfn-s3-bucket-objectlockrule-defaultretention + DefaultRetention *Bucket_DefaultRetention `json:"DefaultRetention,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_ObjectLockRule) AWSCloudFormationType() string { + return "AWS::S3::Bucket.ObjectLockRule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ObjectLockRule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ObjectLockRule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ObjectLockRule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ObjectLockRule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ObjectLockRule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ObjectLockRule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucket_publicaccessblockconfiguration.go b/cloudformation/s3/aws-s3-bucket_publicaccessblockconfiguration.go similarity index 77% rename from cloudformation/resources/aws-s3-bucket_publicaccessblockconfiguration.go rename to cloudformation/s3/aws-s3-bucket_publicaccessblockconfiguration.go index 5967b82fe1..dd4f5ddb0d 100644 --- a/cloudformation/resources/aws-s3-bucket_publicaccessblockconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_publicaccessblockconfiguration.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_PublicAccessBlockConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.PublicAccessBlockConfiguration) +// Bucket_PublicAccessBlockConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.PublicAccessBlockConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html -type AWSS3Bucket_PublicAccessBlockConfiguration struct { +type Bucket_PublicAccessBlockConfiguration struct { // BlockPublicAcls AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSS3Bucket_PublicAccessBlockConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_PublicAccessBlockConfiguration) AWSCloudFormationType() string { +func (r *Bucket_PublicAccessBlockConfiguration) AWSCloudFormationType() string { return "AWS::S3::Bucket.PublicAccessBlockConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_PublicAccessBlockConfiguration) DependsOn() []string { +func (r *Bucket_PublicAccessBlockConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_PublicAccessBlockConfiguration) SetDependsOn(dependencies []string) { +func (r *Bucket_PublicAccessBlockConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_PublicAccessBlockConfiguration) Metadata() map[string]interface{} { +func (r *Bucket_PublicAccessBlockConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_PublicAccessBlockConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_PublicAccessBlockConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_PublicAccessBlockConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_PublicAccessBlockConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_PublicAccessBlockConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_PublicAccessBlockConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_queueconfiguration.go b/cloudformation/s3/aws-s3-bucket_queueconfiguration.go similarity index 75% rename from cloudformation/resources/aws-s3-bucket_queueconfiguration.go rename to cloudformation/s3/aws-s3-bucket_queueconfiguration.go index b04befcd5e..b557f83a1a 100644 --- a/cloudformation/resources/aws-s3-bucket_queueconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_queueconfiguration.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_QueueConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.QueueConfiguration) +// Bucket_QueueConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.QueueConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html -type AWSS3Bucket_QueueConfiguration struct { +type Bucket_QueueConfiguration struct { // Event AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSS3Bucket_QueueConfiguration struct { // Filter AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-filter - Filter *AWSS3Bucket_NotificationFilter `json:"Filter,omitempty"` + Filter *Bucket_NotificationFilter `json:"Filter,omitempty"` // Queue AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSS3Bucket_QueueConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_QueueConfiguration) AWSCloudFormationType() string { +func (r *Bucket_QueueConfiguration) AWSCloudFormationType() string { return "AWS::S3::Bucket.QueueConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_QueueConfiguration) DependsOn() []string { +func (r *Bucket_QueueConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_QueueConfiguration) SetDependsOn(dependencies []string) { +func (r *Bucket_QueueConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_QueueConfiguration) Metadata() map[string]interface{} { +func (r *Bucket_QueueConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_QueueConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_QueueConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_QueueConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_QueueConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_QueueConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_QueueConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/s3/aws-s3-bucket_redirectallrequeststo.go b/cloudformation/s3/aws-s3-bucket_redirectallrequeststo.go new file mode 100644 index 0000000000..fe22f75e1a --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_redirectallrequeststo.go @@ -0,0 +1,70 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_RedirectAllRequestsTo AWS CloudFormation Resource (AWS::S3::Bucket.RedirectAllRequestsTo) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html +type Bucket_RedirectAllRequestsTo struct { + + // HostName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-hostname + HostName string `json:"HostName,omitempty"` + + // Protocol AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-protocol + Protocol string `json:"Protocol,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_RedirectAllRequestsTo) AWSCloudFormationType() string { + return "AWS::S3::Bucket.RedirectAllRequestsTo" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_RedirectAllRequestsTo) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_RedirectAllRequestsTo) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_RedirectAllRequestsTo) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_RedirectAllRequestsTo) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_RedirectAllRequestsTo) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_RedirectAllRequestsTo) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucket_redirectrule.go b/cloudformation/s3/aws-s3-bucket_redirectrule.go similarity index 82% rename from cloudformation/resources/aws-s3-bucket_redirectrule.go rename to cloudformation/s3/aws-s3-bucket_redirectrule.go index 9dc1b08489..045c82c8a5 100644 --- a/cloudformation/resources/aws-s3-bucket_redirectrule.go +++ b/cloudformation/s3/aws-s3-bucket_redirectrule.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_RedirectRule AWS CloudFormation Resource (AWS::S3::Bucket.RedirectRule) +// Bucket_RedirectRule AWS CloudFormation Resource (AWS::S3::Bucket.RedirectRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html -type AWSS3Bucket_RedirectRule struct { +type Bucket_RedirectRule struct { // HostName AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSS3Bucket_RedirectRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_RedirectRule) AWSCloudFormationType() string { +func (r *Bucket_RedirectRule) AWSCloudFormationType() string { return "AWS::S3::Bucket.RedirectRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_RedirectRule) DependsOn() []string { +func (r *Bucket_RedirectRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_RedirectRule) SetDependsOn(dependencies []string) { +func (r *Bucket_RedirectRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_RedirectRule) Metadata() map[string]interface{} { +func (r *Bucket_RedirectRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_RedirectRule) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_RedirectRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_RedirectRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_RedirectRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_RedirectRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_RedirectRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/s3/aws-s3-bucket_replicationconfiguration.go b/cloudformation/s3/aws-s3-bucket_replicationconfiguration.go new file mode 100644 index 0000000000..ccde894661 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_replicationconfiguration.go @@ -0,0 +1,70 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_ReplicationConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.ReplicationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html +type Bucket_ReplicationConfiguration struct { + + // Role AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-role + Role string `json:"Role,omitempty"` + + // Rules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-rules + Rules []Bucket_ReplicationRule `json:"Rules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_ReplicationConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.ReplicationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ReplicationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ReplicationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ReplicationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ReplicationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ReplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ReplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucket_replicationdestination.go b/cloudformation/s3/aws-s3-bucket_replicationdestination.go similarity index 76% rename from cloudformation/resources/aws-s3-bucket_replicationdestination.go rename to cloudformation/s3/aws-s3-bucket_replicationdestination.go index ee4fa78973..e5c5672e2d 100644 --- a/cloudformation/resources/aws-s3-bucket_replicationdestination.go +++ b/cloudformation/s3/aws-s3-bucket_replicationdestination.go @@ -1,15 +1,17 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_ReplicationDestination AWS CloudFormation Resource (AWS::S3::Bucket.ReplicationDestination) +// Bucket_ReplicationDestination AWS CloudFormation Resource (AWS::S3::Bucket.ReplicationDestination) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html -type AWSS3Bucket_ReplicationDestination struct { +type Bucket_ReplicationDestination struct { // AccessControlTranslation AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-accesscontroltranslation - AccessControlTranslation *AWSS3Bucket_AccessControlTranslation `json:"AccessControlTranslation,omitempty"` + AccessControlTranslation *Bucket_AccessControlTranslation `json:"AccessControlTranslation,omitempty"` // Account AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSS3Bucket_ReplicationDestination struct { // EncryptionConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-encryptionconfiguration - EncryptionConfiguration *AWSS3Bucket_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` + EncryptionConfiguration *Bucket_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` // StorageClass AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSS3Bucket_ReplicationDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ReplicationDestination) AWSCloudFormationType() string { +func (r *Bucket_ReplicationDestination) AWSCloudFormationType() string { return "AWS::S3::Bucket.ReplicationDestination" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ReplicationDestination) DependsOn() []string { +func (r *Bucket_ReplicationDestination) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ReplicationDestination) SetDependsOn(dependencies []string) { +func (r *Bucket_ReplicationDestination) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ReplicationDestination) Metadata() map[string]interface{} { +func (r *Bucket_ReplicationDestination) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ReplicationDestination) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_ReplicationDestination) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ReplicationDestination) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_ReplicationDestination) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ReplicationDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_ReplicationDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_replicationrule.go b/cloudformation/s3/aws-s3-bucket_replicationrule.go similarity index 76% rename from cloudformation/resources/aws-s3-bucket_replicationrule.go rename to cloudformation/s3/aws-s3-bucket_replicationrule.go index c17feec789..72bc5dcaba 100644 --- a/cloudformation/resources/aws-s3-bucket_replicationrule.go +++ b/cloudformation/s3/aws-s3-bucket_replicationrule.go @@ -1,15 +1,17 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_ReplicationRule AWS CloudFormation Resource (AWS::S3::Bucket.ReplicationRule) +// Bucket_ReplicationRule AWS CloudFormation Resource (AWS::S3::Bucket.ReplicationRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html -type AWSS3Bucket_ReplicationRule struct { +type Bucket_ReplicationRule struct { // Destination AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-destination - Destination *AWSS3Bucket_ReplicationDestination `json:"Destination,omitempty"` + Destination *Bucket_ReplicationDestination `json:"Destination,omitempty"` // Id AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSS3Bucket_ReplicationRule struct { // SourceSelectionCriteria AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-sourceselectioncriteria - SourceSelectionCriteria *AWSS3Bucket_SourceSelectionCriteria `json:"SourceSelectionCriteria,omitempty"` + SourceSelectionCriteria *Bucket_SourceSelectionCriteria `json:"SourceSelectionCriteria,omitempty"` // Status AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSS3Bucket_ReplicationRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ReplicationRule) AWSCloudFormationType() string { +func (r *Bucket_ReplicationRule) AWSCloudFormationType() string { return "AWS::S3::Bucket.ReplicationRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ReplicationRule) DependsOn() []string { +func (r *Bucket_ReplicationRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_ReplicationRule) SetDependsOn(dependencies []string) { +func (r *Bucket_ReplicationRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ReplicationRule) Metadata() map[string]interface{} { +func (r *Bucket_ReplicationRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_ReplicationRule) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_ReplicationRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ReplicationRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_ReplicationRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_ReplicationRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_ReplicationRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/s3/aws-s3-bucket_routingrule.go b/cloudformation/s3/aws-s3-bucket_routingrule.go new file mode 100644 index 0000000000..15ad15d4c8 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_routingrule.go @@ -0,0 +1,70 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_RoutingRule AWS CloudFormation Resource (AWS::S3::Bucket.RoutingRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html +type Bucket_RoutingRule struct { + + // RedirectRule AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-redirectrule + RedirectRule *Bucket_RedirectRule `json:"RedirectRule,omitempty"` + + // RoutingRuleCondition AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition + RoutingRuleCondition *Bucket_RoutingRuleCondition `json:"RoutingRuleCondition,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_RoutingRule) AWSCloudFormationType() string { + return "AWS::S3::Bucket.RoutingRule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_RoutingRule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_RoutingRule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_RoutingRule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_RoutingRule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_RoutingRule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_RoutingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucket_routingrulecondition.go b/cloudformation/s3/aws-s3-bucket_routingrulecondition.go similarity index 76% rename from cloudformation/resources/aws-s3-bucket_routingrulecondition.go rename to cloudformation/s3/aws-s3-bucket_routingrulecondition.go index 6d5b98b906..681566a77c 100644 --- a/cloudformation/resources/aws-s3-bucket_routingrulecondition.go +++ b/cloudformation/s3/aws-s3-bucket_routingrulecondition.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_RoutingRuleCondition AWS CloudFormation Resource (AWS::S3::Bucket.RoutingRuleCondition) +// Bucket_RoutingRuleCondition AWS CloudFormation Resource (AWS::S3::Bucket.RoutingRuleCondition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html -type AWSS3Bucket_RoutingRuleCondition struct { +type Bucket_RoutingRuleCondition struct { // HttpErrorCodeReturnedEquals AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSS3Bucket_RoutingRuleCondition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_RoutingRuleCondition) AWSCloudFormationType() string { +func (r *Bucket_RoutingRuleCondition) AWSCloudFormationType() string { return "AWS::S3::Bucket.RoutingRuleCondition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_RoutingRuleCondition) DependsOn() []string { +func (r *Bucket_RoutingRuleCondition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_RoutingRuleCondition) SetDependsOn(dependencies []string) { +func (r *Bucket_RoutingRuleCondition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_RoutingRuleCondition) Metadata() map[string]interface{} { +func (r *Bucket_RoutingRuleCondition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_RoutingRuleCondition) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_RoutingRuleCondition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_RoutingRuleCondition) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_RoutingRuleCondition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_RoutingRuleCondition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_RoutingRuleCondition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_rule.go b/cloudformation/s3/aws-s3-bucket_rule.go similarity index 80% rename from cloudformation/resources/aws-s3-bucket_rule.go rename to cloudformation/s3/aws-s3-bucket_rule.go index 0c31043620..b4c03d2027 100644 --- a/cloudformation/resources/aws-s3-bucket_rule.go +++ b/cloudformation/s3/aws-s3-bucket_rule.go @@ -1,15 +1,17 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_Rule AWS CloudFormation Resource (AWS::S3::Bucket.Rule) +// Bucket_Rule AWS CloudFormation Resource (AWS::S3::Bucket.Rule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html -type AWSS3Bucket_Rule struct { +type Bucket_Rule struct { // AbortIncompleteMultipartUpload AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-abortincompletemultipartupload - AbortIncompleteMultipartUpload *AWSS3Bucket_AbortIncompleteMultipartUpload `json:"AbortIncompleteMultipartUpload,omitempty"` + AbortIncompleteMultipartUpload *Bucket_AbortIncompleteMultipartUpload `json:"AbortIncompleteMultipartUpload,omitempty"` // ExpirationDate AWS CloudFormation Property // Required: false @@ -34,12 +36,12 @@ type AWSS3Bucket_Rule struct { // NoncurrentVersionTransition AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition - NoncurrentVersionTransition *AWSS3Bucket_NoncurrentVersionTransition `json:"NoncurrentVersionTransition,omitempty"` + NoncurrentVersionTransition *Bucket_NoncurrentVersionTransition `json:"NoncurrentVersionTransition,omitempty"` // NoncurrentVersionTransitions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransitions - NoncurrentVersionTransitions []AWSS3Bucket_NoncurrentVersionTransition `json:"NoncurrentVersionTransitions,omitempty"` + NoncurrentVersionTransitions []Bucket_NoncurrentVersionTransition `json:"NoncurrentVersionTransitions,omitempty"` // Prefix AWS CloudFormation Property // Required: false @@ -54,17 +56,17 @@ type AWSS3Bucket_Rule struct { // TagFilters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-tagfilters - TagFilters []AWSS3Bucket_TagFilter `json:"TagFilters,omitempty"` + TagFilters []Bucket_TagFilter `json:"TagFilters,omitempty"` // Transition AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transition - Transition *AWSS3Bucket_Transition `json:"Transition,omitempty"` + Transition *Bucket_Transition `json:"Transition,omitempty"` // Transitions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transitions - Transitions []AWSS3Bucket_Transition `json:"Transitions,omitempty"` + Transitions []Bucket_Transition `json:"Transitions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -77,42 +79,42 @@ type AWSS3Bucket_Rule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_Rule) AWSCloudFormationType() string { +func (r *Bucket_Rule) AWSCloudFormationType() string { return "AWS::S3::Bucket.Rule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_Rule) DependsOn() []string { +func (r *Bucket_Rule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_Rule) SetDependsOn(dependencies []string) { +func (r *Bucket_Rule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_Rule) Metadata() map[string]interface{} { +func (r *Bucket_Rule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_Rule) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_Rule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_Rule) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_Rule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/s3/aws-s3-bucket_s3keyfilter.go b/cloudformation/s3/aws-s3-bucket_s3keyfilter.go new file mode 100644 index 0000000000..0a3bd0cd26 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_s3keyfilter.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_S3KeyFilter AWS CloudFormation Resource (AWS::S3::Bucket.S3KeyFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html +type Bucket_S3KeyFilter struct { + + // Rules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules + Rules []Bucket_FilterRule `json:"Rules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_S3KeyFilter) AWSCloudFormationType() string { + return "AWS::S3::Bucket.S3KeyFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_S3KeyFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_S3KeyFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_S3KeyFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_S3KeyFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_S3KeyFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_S3KeyFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_serversideencryptionbydefault.go b/cloudformation/s3/aws-s3-bucket_serversideencryptionbydefault.go new file mode 100644 index 0000000000..116a409363 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_serversideencryptionbydefault.go @@ -0,0 +1,70 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_ServerSideEncryptionByDefault AWS CloudFormation Resource (AWS::S3::Bucket.ServerSideEncryptionByDefault) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html +type Bucket_ServerSideEncryptionByDefault struct { + + // KMSMasterKeyID AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-kmsmasterkeyid + KMSMasterKeyID string `json:"KMSMasterKeyID,omitempty"` + + // SSEAlgorithm AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-ssealgorithm + SSEAlgorithm string `json:"SSEAlgorithm,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_ServerSideEncryptionByDefault) AWSCloudFormationType() string { + return "AWS::S3::Bucket.ServerSideEncryptionByDefault" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ServerSideEncryptionByDefault) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ServerSideEncryptionByDefault) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ServerSideEncryptionByDefault) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ServerSideEncryptionByDefault) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ServerSideEncryptionByDefault) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ServerSideEncryptionByDefault) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_serversideencryptionrule.go b/cloudformation/s3/aws-s3-bucket_serversideencryptionrule.go new file mode 100644 index 0000000000..b06289ff30 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_serversideencryptionrule.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_ServerSideEncryptionRule AWS CloudFormation Resource (AWS::S3::Bucket.ServerSideEncryptionRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html +type Bucket_ServerSideEncryptionRule struct { + + // ServerSideEncryptionByDefault AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html#cfn-s3-bucket-serversideencryptionrule-serversideencryptionbydefault + ServerSideEncryptionByDefault *Bucket_ServerSideEncryptionByDefault `json:"ServerSideEncryptionByDefault,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_ServerSideEncryptionRule) AWSCloudFormationType() string { + return "AWS::S3::Bucket.ServerSideEncryptionRule" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ServerSideEncryptionRule) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_ServerSideEncryptionRule) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ServerSideEncryptionRule) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_ServerSideEncryptionRule) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ServerSideEncryptionRule) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_ServerSideEncryptionRule) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_sourceselectioncriteria.go b/cloudformation/s3/aws-s3-bucket_sourceselectioncriteria.go new file mode 100644 index 0000000000..1a710e5915 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_sourceselectioncriteria.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_SourceSelectionCriteria AWS CloudFormation Resource (AWS::S3::Bucket.SourceSelectionCriteria) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html +type Bucket_SourceSelectionCriteria struct { + + // SseKmsEncryptedObjects AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html#cfn-s3-bucket-sourceselectioncriteria-ssekmsencryptedobjects + SseKmsEncryptedObjects *Bucket_SseKmsEncryptedObjects `json:"SseKmsEncryptedObjects,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_SourceSelectionCriteria) AWSCloudFormationType() string { + return "AWS::S3::Bucket.SourceSelectionCriteria" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_SourceSelectionCriteria) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_SourceSelectionCriteria) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_SourceSelectionCriteria) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_SourceSelectionCriteria) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_SourceSelectionCriteria) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_SourceSelectionCriteria) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_ssekmsencryptedobjects.go b/cloudformation/s3/aws-s3-bucket_ssekmsencryptedobjects.go new file mode 100644 index 0000000000..d36b66b114 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_ssekmsencryptedobjects.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_SseKmsEncryptedObjects AWS CloudFormation Resource (AWS::S3::Bucket.SseKmsEncryptedObjects) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html +type Bucket_SseKmsEncryptedObjects struct { + + // Status AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html#cfn-s3-bucket-ssekmsencryptedobjects-status + Status string `json:"Status,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_SseKmsEncryptedObjects) AWSCloudFormationType() string { + return "AWS::S3::Bucket.SseKmsEncryptedObjects" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_SseKmsEncryptedObjects) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_SseKmsEncryptedObjects) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_SseKmsEncryptedObjects) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_SseKmsEncryptedObjects) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_SseKmsEncryptedObjects) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_SseKmsEncryptedObjects) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_storageclassanalysis.go b/cloudformation/s3/aws-s3-bucket_storageclassanalysis.go new file mode 100644 index 0000000000..4b6007b259 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_storageclassanalysis.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_StorageClassAnalysis AWS CloudFormation Resource (AWS::S3::Bucket.StorageClassAnalysis) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html +type Bucket_StorageClassAnalysis struct { + + // DataExport AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html#cfn-s3-bucket-storageclassanalysis-dataexport + DataExport *Bucket_DataExport `json:"DataExport,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_StorageClassAnalysis) AWSCloudFormationType() string { + return "AWS::S3::Bucket.StorageClassAnalysis" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_StorageClassAnalysis) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_StorageClassAnalysis) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_StorageClassAnalysis) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_StorageClassAnalysis) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_StorageClassAnalysis) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_StorageClassAnalysis) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucket_tagfilter.go b/cloudformation/s3/aws-s3-bucket_tagfilter.go similarity index 76% rename from cloudformation/resources/aws-s3-bucket_tagfilter.go rename to cloudformation/s3/aws-s3-bucket_tagfilter.go index 7918e6748f..c5433aae43 100644 --- a/cloudformation/resources/aws-s3-bucket_tagfilter.go +++ b/cloudformation/s3/aws-s3-bucket_tagfilter.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_TagFilter AWS CloudFormation Resource (AWS::S3::Bucket.TagFilter) +// Bucket_TagFilter AWS CloudFormation Resource (AWS::S3::Bucket.TagFilter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html -type AWSS3Bucket_TagFilter struct { +type Bucket_TagFilter struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSS3Bucket_TagFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_TagFilter) AWSCloudFormationType() string { +func (r *Bucket_TagFilter) AWSCloudFormationType() string { return "AWS::S3::Bucket.TagFilter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_TagFilter) DependsOn() []string { +func (r *Bucket_TagFilter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_TagFilter) SetDependsOn(dependencies []string) { +func (r *Bucket_TagFilter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_TagFilter) Metadata() map[string]interface{} { +func (r *Bucket_TagFilter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_TagFilter) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_TagFilter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_TagFilter) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_TagFilter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_topicconfiguration.go b/cloudformation/s3/aws-s3-bucket_topicconfiguration.go similarity index 75% rename from cloudformation/resources/aws-s3-bucket_topicconfiguration.go rename to cloudformation/s3/aws-s3-bucket_topicconfiguration.go index a7f55ae5b9..006022010f 100644 --- a/cloudformation/resources/aws-s3-bucket_topicconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_topicconfiguration.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_TopicConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.TopicConfiguration) +// Bucket_TopicConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.TopicConfiguration) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html -type AWSS3Bucket_TopicConfiguration struct { +type Bucket_TopicConfiguration struct { // Event AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSS3Bucket_TopicConfiguration struct { // Filter AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-filter - Filter *AWSS3Bucket_NotificationFilter `json:"Filter,omitempty"` + Filter *Bucket_NotificationFilter `json:"Filter,omitempty"` // Topic AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSS3Bucket_TopicConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_TopicConfiguration) AWSCloudFormationType() string { +func (r *Bucket_TopicConfiguration) AWSCloudFormationType() string { return "AWS::S3::Bucket.TopicConfiguration" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_TopicConfiguration) DependsOn() []string { +func (r *Bucket_TopicConfiguration) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_TopicConfiguration) SetDependsOn(dependencies []string) { +func (r *Bucket_TopicConfiguration) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_TopicConfiguration) Metadata() map[string]interface{} { +func (r *Bucket_TopicConfiguration) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_TopicConfiguration) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_TopicConfiguration) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_TopicConfiguration) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_TopicConfiguration) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_TopicConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_TopicConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_transition.go b/cloudformation/s3/aws-s3-bucket_transition.go similarity index 79% rename from cloudformation/resources/aws-s3-bucket_transition.go rename to cloudformation/s3/aws-s3-bucket_transition.go index 9890883e50..9d944a0a6f 100644 --- a/cloudformation/resources/aws-s3-bucket_transition.go +++ b/cloudformation/s3/aws-s3-bucket_transition.go @@ -1,10 +1,12 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_Transition AWS CloudFormation Resource (AWS::S3::Bucket.Transition) +// Bucket_Transition AWS CloudFormation Resource (AWS::S3::Bucket.Transition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html -type AWSS3Bucket_Transition struct { +type Bucket_Transition struct { // StorageClass AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSS3Bucket_Transition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_Transition) AWSCloudFormationType() string { +func (r *Bucket_Transition) AWSCloudFormationType() string { return "AWS::S3::Bucket.Transition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_Transition) DependsOn() []string { +func (r *Bucket_Transition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3Bucket_Transition) SetDependsOn(dependencies []string) { +func (r *Bucket_Transition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_Transition) Metadata() map[string]interface{} { +func (r *Bucket_Transition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3Bucket_Transition) SetMetadata(metadata map[string]interface{}) { +func (r *Bucket_Transition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_Transition) DeletionPolicy() policies.DeletionPolicy { +func (r *Bucket_Transition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3Bucket_Transition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_Transition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/s3/aws-s3-bucket_versioningconfiguration.go b/cloudformation/s3/aws-s3-bucket_versioningconfiguration.go new file mode 100644 index 0000000000..4a78abdff5 --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_versioningconfiguration.go @@ -0,0 +1,65 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_VersioningConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.VersioningConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html +type Bucket_VersioningConfiguration struct { + + // Status AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html#cfn-s3-bucket-versioningconfig-status + Status string `json:"Status,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_VersioningConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.VersioningConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_VersioningConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_VersioningConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_VersioningConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_VersioningConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_VersioningConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_VersioningConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/s3/aws-s3-bucket_websiteconfiguration.go b/cloudformation/s3/aws-s3-bucket_websiteconfiguration.go new file mode 100644 index 0000000000..368f5c4aeb --- /dev/null +++ b/cloudformation/s3/aws-s3-bucket_websiteconfiguration.go @@ -0,0 +1,80 @@ +package s3 + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Bucket_WebsiteConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.WebsiteConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html +type Bucket_WebsiteConfiguration struct { + + // ErrorDocument AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-errordocument + ErrorDocument string `json:"ErrorDocument,omitempty"` + + // IndexDocument AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-indexdocument + IndexDocument string `json:"IndexDocument,omitempty"` + + // RedirectAllRequestsTo AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-redirectallrequeststo + RedirectAllRequestsTo *Bucket_RedirectAllRequestsTo `json:"RedirectAllRequestsTo,omitempty"` + + // RoutingRules AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-routingrules + RoutingRules []Bucket_RoutingRule `json:"RoutingRules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Bucket_WebsiteConfiguration) AWSCloudFormationType() string { + return "AWS::S3::Bucket.WebsiteConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_WebsiteConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Bucket_WebsiteConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_WebsiteConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Bucket_WebsiteConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_WebsiteConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Bucket_WebsiteConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-s3-bucketpolicy.go b/cloudformation/s3/aws-s3-bucketpolicy.go similarity index 81% rename from cloudformation/resources/aws-s3-bucketpolicy.go rename to cloudformation/s3/aws-s3-bucketpolicy.go index cc0f6791c0..a2c4b7e22d 100644 --- a/cloudformation/resources/aws-s3-bucketpolicy.go +++ b/cloudformation/s3/aws-s3-bucketpolicy.go @@ -1,15 +1,16 @@ -package resources +package s3 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSS3BucketPolicy AWS CloudFormation Resource (AWS::S3::BucketPolicy) +// BucketPolicy AWS CloudFormation Resource (AWS::S3::BucketPolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html -type AWSS3BucketPolicy struct { +type BucketPolicy struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSS3BucketPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3BucketPolicy) AWSCloudFormationType() string { +func (r *BucketPolicy) AWSCloudFormationType() string { return "AWS::S3::BucketPolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3BucketPolicy) DependsOn() []string { +func (r *BucketPolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSS3BucketPolicy) SetDependsOn(dependencies []string) { +func (r *BucketPolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3BucketPolicy) Metadata() map[string]interface{} { +func (r *BucketPolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSS3BucketPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *BucketPolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3BucketPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *BucketPolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSS3BucketPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *BucketPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSS3BucketPolicy) MarshalJSON() ([]byte, error) { - type Properties AWSS3BucketPolicy +func (r BucketPolicy) MarshalJSON() ([]byte, error) { + type Properties BucketPolicy return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSS3BucketPolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSS3BucketPolicy) UnmarshalJSON(b []byte) error { - type Properties AWSS3BucketPolicy +func (r *BucketPolicy) UnmarshalJSON(b []byte) error { + type Properties BucketPolicy res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSS3BucketPolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSS3BucketPolicy(*res.Properties) + *r = BucketPolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sagemaker-coderepository.go b/cloudformation/sagemaker/aws-sagemaker-coderepository.go similarity index 77% rename from cloudformation/resources/aws-sagemaker-coderepository.go rename to cloudformation/sagemaker/aws-sagemaker-coderepository.go index 89ca6d1e89..af018e6f22 100644 --- a/cloudformation/resources/aws-sagemaker-coderepository.go +++ b/cloudformation/sagemaker/aws-sagemaker-coderepository.go @@ -1,15 +1,16 @@ -package resources +package sagemaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSageMakerCodeRepository AWS CloudFormation Resource (AWS::SageMaker::CodeRepository) +// CodeRepository AWS CloudFormation Resource (AWS::SageMaker::CodeRepository) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html -type AWSSageMakerCodeRepository struct { +type CodeRepository struct { // CodeRepositoryName AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSSageMakerCodeRepository struct { // GitConfig AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html#cfn-sagemaker-coderepository-gitconfig - GitConfig *AWSSageMakerCodeRepository_GitConfig `json:"GitConfig,omitempty"` + GitConfig *CodeRepository_GitConfig `json:"GitConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSSageMakerCodeRepository struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerCodeRepository) AWSCloudFormationType() string { +func (r *CodeRepository) AWSCloudFormationType() string { return "AWS::SageMaker::CodeRepository" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerCodeRepository) DependsOn() []string { +func (r *CodeRepository) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerCodeRepository) SetDependsOn(dependencies []string) { +func (r *CodeRepository) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerCodeRepository) Metadata() map[string]interface{} { +func (r *CodeRepository) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerCodeRepository) SetMetadata(metadata map[string]interface{}) { +func (r *CodeRepository) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerCodeRepository) DeletionPolicy() policies.DeletionPolicy { +func (r *CodeRepository) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerCodeRepository) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CodeRepository) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSageMakerCodeRepository) MarshalJSON() ([]byte, error) { - type Properties AWSSageMakerCodeRepository +func (r CodeRepository) MarshalJSON() ([]byte, error) { + type Properties CodeRepository return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSSageMakerCodeRepository) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSageMakerCodeRepository) UnmarshalJSON(b []byte) error { - type Properties AWSSageMakerCodeRepository +func (r *CodeRepository) UnmarshalJSON(b []byte) error { + type Properties CodeRepository res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSSageMakerCodeRepository) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSageMakerCodeRepository(*res.Properties) + *r = CodeRepository(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sagemaker-coderepository_gitconfig.go b/cloudformation/sagemaker/aws-sagemaker-coderepository_gitconfig.go similarity index 75% rename from cloudformation/resources/aws-sagemaker-coderepository_gitconfig.go rename to cloudformation/sagemaker/aws-sagemaker-coderepository_gitconfig.go index bd3c759689..370ed90385 100644 --- a/cloudformation/resources/aws-sagemaker-coderepository_gitconfig.go +++ b/cloudformation/sagemaker/aws-sagemaker-coderepository_gitconfig.go @@ -1,10 +1,12 @@ -package resources +package sagemaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSageMakerCodeRepository_GitConfig AWS CloudFormation Resource (AWS::SageMaker::CodeRepository.GitConfig) +// CodeRepository_GitConfig AWS CloudFormation Resource (AWS::SageMaker::CodeRepository.GitConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html -type AWSSageMakerCodeRepository_GitConfig struct { +type CodeRepository_GitConfig struct { // Branch AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSSageMakerCodeRepository_GitConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerCodeRepository_GitConfig) AWSCloudFormationType() string { +func (r *CodeRepository_GitConfig) AWSCloudFormationType() string { return "AWS::SageMaker::CodeRepository.GitConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerCodeRepository_GitConfig) DependsOn() []string { +func (r *CodeRepository_GitConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerCodeRepository_GitConfig) SetDependsOn(dependencies []string) { +func (r *CodeRepository_GitConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerCodeRepository_GitConfig) Metadata() map[string]interface{} { +func (r *CodeRepository_GitConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerCodeRepository_GitConfig) SetMetadata(metadata map[string]interface{}) { +func (r *CodeRepository_GitConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerCodeRepository_GitConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *CodeRepository_GitConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerCodeRepository_GitConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CodeRepository_GitConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-sagemaker-endpoint.go b/cloudformation/sagemaker/aws-sagemaker-endpoint.go similarity index 80% rename from cloudformation/resources/aws-sagemaker-endpoint.go rename to cloudformation/sagemaker/aws-sagemaker-endpoint.go index 94d990926b..6d868807ac 100644 --- a/cloudformation/resources/aws-sagemaker-endpoint.go +++ b/cloudformation/sagemaker/aws-sagemaker-endpoint.go @@ -1,15 +1,17 @@ -package resources +package sagemaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSageMakerEndpoint AWS CloudFormation Resource (AWS::SageMaker::Endpoint) +// Endpoint AWS CloudFormation Resource (AWS::SageMaker::Endpoint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html -type AWSSageMakerEndpoint struct { +type Endpoint struct { // EndpointConfigName AWS CloudFormation Property // Required: true @@ -24,7 +26,7 @@ type AWSSageMakerEndpoint struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html#cfn-sagemaker-endpoint-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +39,50 @@ type AWSSageMakerEndpoint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerEndpoint) AWSCloudFormationType() string { +func (r *Endpoint) AWSCloudFormationType() string { return "AWS::SageMaker::Endpoint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerEndpoint) DependsOn() []string { +func (r *Endpoint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerEndpoint) SetDependsOn(dependencies []string) { +func (r *Endpoint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerEndpoint) Metadata() map[string]interface{} { +func (r *Endpoint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerEndpoint) SetMetadata(metadata map[string]interface{}) { +func (r *Endpoint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerEndpoint) DeletionPolicy() policies.DeletionPolicy { +func (r *Endpoint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerEndpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Endpoint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSageMakerEndpoint) MarshalJSON() ([]byte, error) { - type Properties AWSSageMakerEndpoint +func (r Endpoint) MarshalJSON() ([]byte, error) { + type Properties Endpoint return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +100,8 @@ func (r AWSSageMakerEndpoint) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSageMakerEndpoint) UnmarshalJSON(b []byte) error { - type Properties AWSSageMakerEndpoint +func (r *Endpoint) UnmarshalJSON(b []byte) error { + type Properties Endpoint res := &struct { Type string Properties *Properties @@ -118,7 +120,7 @@ func (r *AWSSageMakerEndpoint) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSageMakerEndpoint(*res.Properties) + *r = Endpoint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sagemaker-endpointconfig.go b/cloudformation/sagemaker/aws-sagemaker-endpointconfig.go similarity index 78% rename from cloudformation/resources/aws-sagemaker-endpointconfig.go rename to cloudformation/sagemaker/aws-sagemaker-endpointconfig.go index 0555f5f731..2f69f8e8c3 100644 --- a/cloudformation/resources/aws-sagemaker-endpointconfig.go +++ b/cloudformation/sagemaker/aws-sagemaker-endpointconfig.go @@ -1,15 +1,17 @@ -package resources +package sagemaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSageMakerEndpointConfig AWS CloudFormation Resource (AWS::SageMaker::EndpointConfig) +// EndpointConfig AWS CloudFormation Resource (AWS::SageMaker::EndpointConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html -type AWSSageMakerEndpointConfig struct { +type EndpointConfig struct { // EndpointConfigName AWS CloudFormation Property // Required: false @@ -24,12 +26,12 @@ type AWSSageMakerEndpointConfig struct { // ProductionVariants AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html#cfn-sagemaker-endpointconfig-productionvariants - ProductionVariants []AWSSageMakerEndpointConfig_ProductionVariant `json:"ProductionVariants,omitempty"` + ProductionVariants []EndpointConfig_ProductionVariant `json:"ProductionVariants,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html#cfn-sagemaker-endpointconfig-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +44,50 @@ type AWSSageMakerEndpointConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerEndpointConfig) AWSCloudFormationType() string { +func (r *EndpointConfig) AWSCloudFormationType() string { return "AWS::SageMaker::EndpointConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerEndpointConfig) DependsOn() []string { +func (r *EndpointConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerEndpointConfig) SetDependsOn(dependencies []string) { +func (r *EndpointConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerEndpointConfig) Metadata() map[string]interface{} { +func (r *EndpointConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerEndpointConfig) SetMetadata(metadata map[string]interface{}) { +func (r *EndpointConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerEndpointConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *EndpointConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerEndpointConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EndpointConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSageMakerEndpointConfig) MarshalJSON() ([]byte, error) { - type Properties AWSSageMakerEndpointConfig +func (r EndpointConfig) MarshalJSON() ([]byte, error) { + type Properties EndpointConfig return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +105,8 @@ func (r AWSSageMakerEndpointConfig) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSageMakerEndpointConfig) UnmarshalJSON(b []byte) error { - type Properties AWSSageMakerEndpointConfig +func (r *EndpointConfig) UnmarshalJSON(b []byte) error { + type Properties EndpointConfig res := &struct { Type string Properties *Properties @@ -123,7 +125,7 @@ func (r *AWSSageMakerEndpointConfig) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSageMakerEndpointConfig(*res.Properties) + *r = EndpointConfig(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sagemaker-endpointconfig_productionvariant.go b/cloudformation/sagemaker/aws-sagemaker-endpointconfig_productionvariant.go similarity index 80% rename from cloudformation/resources/aws-sagemaker-endpointconfig_productionvariant.go rename to cloudformation/sagemaker/aws-sagemaker-endpointconfig_productionvariant.go index fb4d15d186..63571d45dc 100644 --- a/cloudformation/resources/aws-sagemaker-endpointconfig_productionvariant.go +++ b/cloudformation/sagemaker/aws-sagemaker-endpointconfig_productionvariant.go @@ -1,10 +1,12 @@ -package resources +package sagemaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSageMakerEndpointConfig_ProductionVariant AWS CloudFormation Resource (AWS::SageMaker::EndpointConfig.ProductionVariant) +// EndpointConfig_ProductionVariant AWS CloudFormation Resource (AWS::SageMaker::EndpointConfig.ProductionVariant) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html -type AWSSageMakerEndpointConfig_ProductionVariant struct { +type EndpointConfig_ProductionVariant struct { // AcceleratorType AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSSageMakerEndpointConfig_ProductionVariant struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerEndpointConfig_ProductionVariant) AWSCloudFormationType() string { +func (r *EndpointConfig_ProductionVariant) AWSCloudFormationType() string { return "AWS::SageMaker::EndpointConfig.ProductionVariant" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerEndpointConfig_ProductionVariant) DependsOn() []string { +func (r *EndpointConfig_ProductionVariant) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerEndpointConfig_ProductionVariant) SetDependsOn(dependencies []string) { +func (r *EndpointConfig_ProductionVariant) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerEndpointConfig_ProductionVariant) Metadata() map[string]interface{} { +func (r *EndpointConfig_ProductionVariant) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerEndpointConfig_ProductionVariant) SetMetadata(metadata map[string]interface{}) { +func (r *EndpointConfig_ProductionVariant) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerEndpointConfig_ProductionVariant) DeletionPolicy() policies.DeletionPolicy { +func (r *EndpointConfig_ProductionVariant) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerEndpointConfig_ProductionVariant) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EndpointConfig_ProductionVariant) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-sagemaker-model.go b/cloudformation/sagemaker/aws-sagemaker-model.go similarity index 79% rename from cloudformation/resources/aws-sagemaker-model.go rename to cloudformation/sagemaker/aws-sagemaker-model.go index 73519c4831..8bd8d8b2bf 100644 --- a/cloudformation/resources/aws-sagemaker-model.go +++ b/cloudformation/sagemaker/aws-sagemaker-model.go @@ -1,20 +1,22 @@ -package resources +package sagemaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSageMakerModel AWS CloudFormation Resource (AWS::SageMaker::Model) +// Model AWS CloudFormation Resource (AWS::SageMaker::Model) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html -type AWSSageMakerModel struct { +type Model struct { // Containers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-containers - Containers []AWSSageMakerModel_ContainerDefinition `json:"Containers,omitempty"` + Containers []Model_ContainerDefinition `json:"Containers,omitempty"` // ExecutionRoleArn AWS CloudFormation Property // Required: true @@ -29,17 +31,17 @@ type AWSSageMakerModel struct { // PrimaryContainer AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-primarycontainer - PrimaryContainer *AWSSageMakerModel_ContainerDefinition `json:"PrimaryContainer,omitempty"` + PrimaryContainer *Model_ContainerDefinition `json:"PrimaryContainer,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VpcConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-vpcconfig - VpcConfig *AWSSageMakerModel_VpcConfig `json:"VpcConfig,omitempty"` + VpcConfig *Model_VpcConfig `json:"VpcConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +54,50 @@ type AWSSageMakerModel struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerModel) AWSCloudFormationType() string { +func (r *Model) AWSCloudFormationType() string { return "AWS::SageMaker::Model" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerModel) DependsOn() []string { +func (r *Model) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerModel) SetDependsOn(dependencies []string) { +func (r *Model) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerModel) Metadata() map[string]interface{} { +func (r *Model) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerModel) SetMetadata(metadata map[string]interface{}) { +func (r *Model) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerModel) DeletionPolicy() policies.DeletionPolicy { +func (r *Model) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerModel) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Model) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSageMakerModel) MarshalJSON() ([]byte, error) { - type Properties AWSSageMakerModel +func (r Model) MarshalJSON() ([]byte, error) { + type Properties Model return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +115,8 @@ func (r AWSSageMakerModel) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSageMakerModel) UnmarshalJSON(b []byte) error { - type Properties AWSSageMakerModel +func (r *Model) UnmarshalJSON(b []byte) error { + type Properties Model res := &struct { Type string Properties *Properties @@ -133,7 +135,7 @@ func (r *AWSSageMakerModel) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSageMakerModel(*res.Properties) + *r = Model(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sagemaker-model_containerdefinition.go b/cloudformation/sagemaker/aws-sagemaker-model_containerdefinition.go similarity index 77% rename from cloudformation/resources/aws-sagemaker-model_containerdefinition.go rename to cloudformation/sagemaker/aws-sagemaker-model_containerdefinition.go index cd7935e45b..0e85aa8b6a 100644 --- a/cloudformation/resources/aws-sagemaker-model_containerdefinition.go +++ b/cloudformation/sagemaker/aws-sagemaker-model_containerdefinition.go @@ -1,10 +1,12 @@ -package resources +package sagemaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSageMakerModel_ContainerDefinition AWS CloudFormation Resource (AWS::SageMaker::Model.ContainerDefinition) +// Model_ContainerDefinition AWS CloudFormation Resource (AWS::SageMaker::Model.ContainerDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html -type AWSSageMakerModel_ContainerDefinition struct { +type Model_ContainerDefinition struct { // ContainerHostname AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSSageMakerModel_ContainerDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerModel_ContainerDefinition) AWSCloudFormationType() string { +func (r *Model_ContainerDefinition) AWSCloudFormationType() string { return "AWS::SageMaker::Model.ContainerDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerModel_ContainerDefinition) DependsOn() []string { +func (r *Model_ContainerDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerModel_ContainerDefinition) SetDependsOn(dependencies []string) { +func (r *Model_ContainerDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerModel_ContainerDefinition) Metadata() map[string]interface{} { +func (r *Model_ContainerDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerModel_ContainerDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *Model_ContainerDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerModel_ContainerDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *Model_ContainerDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerModel_ContainerDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Model_ContainerDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-sagemaker-model_vpcconfig.go b/cloudformation/sagemaker/aws-sagemaker-model_vpcconfig.go similarity index 75% rename from cloudformation/resources/aws-sagemaker-model_vpcconfig.go rename to cloudformation/sagemaker/aws-sagemaker-model_vpcconfig.go index 012f130bbe..4c6d82003f 100644 --- a/cloudformation/resources/aws-sagemaker-model_vpcconfig.go +++ b/cloudformation/sagemaker/aws-sagemaker-model_vpcconfig.go @@ -1,10 +1,12 @@ -package resources +package sagemaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSageMakerModel_VpcConfig AWS CloudFormation Resource (AWS::SageMaker::Model.VpcConfig) +// Model_VpcConfig AWS CloudFormation Resource (AWS::SageMaker::Model.VpcConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-vpcconfig.html -type AWSSageMakerModel_VpcConfig struct { +type Model_VpcConfig struct { // SecurityGroupIds AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSageMakerModel_VpcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerModel_VpcConfig) AWSCloudFormationType() string { +func (r *Model_VpcConfig) AWSCloudFormationType() string { return "AWS::SageMaker::Model.VpcConfig" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerModel_VpcConfig) DependsOn() []string { +func (r *Model_VpcConfig) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerModel_VpcConfig) SetDependsOn(dependencies []string) { +func (r *Model_VpcConfig) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerModel_VpcConfig) Metadata() map[string]interface{} { +func (r *Model_VpcConfig) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerModel_VpcConfig) SetMetadata(metadata map[string]interface{}) { +func (r *Model_VpcConfig) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerModel_VpcConfig) DeletionPolicy() policies.DeletionPolicy { +func (r *Model_VpcConfig) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerModel_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Model_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-sagemaker-notebookinstance.go b/cloudformation/sagemaker/aws-sagemaker-notebookinstance.go similarity index 87% rename from cloudformation/resources/aws-sagemaker-notebookinstance.go rename to cloudformation/sagemaker/aws-sagemaker-notebookinstance.go index c8401742af..fb164dccb3 100644 --- a/cloudformation/resources/aws-sagemaker-notebookinstance.go +++ b/cloudformation/sagemaker/aws-sagemaker-notebookinstance.go @@ -1,15 +1,17 @@ -package resources +package sagemaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSageMakerNotebookInstance AWS CloudFormation Resource (AWS::SageMaker::NotebookInstance) +// NotebookInstance AWS CloudFormation Resource (AWS::SageMaker::NotebookInstance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html -type AWSSageMakerNotebookInstance struct { +type NotebookInstance struct { // AcceleratorTypes AWS CloudFormation Property // Required: false @@ -74,7 +76,7 @@ type AWSSageMakerNotebookInstance struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VolumeSizeInGB AWS CloudFormation Property // Required: false @@ -92,50 +94,50 @@ type AWSSageMakerNotebookInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerNotebookInstance) AWSCloudFormationType() string { +func (r *NotebookInstance) AWSCloudFormationType() string { return "AWS::SageMaker::NotebookInstance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerNotebookInstance) DependsOn() []string { +func (r *NotebookInstance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerNotebookInstance) SetDependsOn(dependencies []string) { +func (r *NotebookInstance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerNotebookInstance) Metadata() map[string]interface{} { +func (r *NotebookInstance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerNotebookInstance) SetMetadata(metadata map[string]interface{}) { +func (r *NotebookInstance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerNotebookInstance) DeletionPolicy() policies.DeletionPolicy { +func (r *NotebookInstance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerNotebookInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NotebookInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSageMakerNotebookInstance) MarshalJSON() ([]byte, error) { - type Properties AWSSageMakerNotebookInstance +func (r NotebookInstance) MarshalJSON() ([]byte, error) { + type Properties NotebookInstance return json.Marshal(&struct { Type string Properties Properties @@ -153,8 +155,8 @@ func (r AWSSageMakerNotebookInstance) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSageMakerNotebookInstance) UnmarshalJSON(b []byte) error { - type Properties AWSSageMakerNotebookInstance +func (r *NotebookInstance) UnmarshalJSON(b []byte) error { + type Properties NotebookInstance res := &struct { Type string Properties *Properties @@ -173,7 +175,7 @@ func (r *AWSSageMakerNotebookInstance) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSageMakerNotebookInstance(*res.Properties) + *r = NotebookInstance(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig.go b/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig.go new file mode 100644 index 0000000000..033d1b7f19 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig.go @@ -0,0 +1,134 @@ +package sagemaker + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// NotebookInstanceLifecycleConfig AWS CloudFormation Resource (AWS::SageMaker::NotebookInstanceLifecycleConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html +type NotebookInstanceLifecycleConfig struct { + + // NotebookInstanceLifecycleConfigName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecycleconfigname + NotebookInstanceLifecycleConfigName string `json:"NotebookInstanceLifecycleConfigName,omitempty"` + + // OnCreate AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-oncreate + OnCreate []NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook `json:"OnCreate,omitempty"` + + // OnStart AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-onstart + OnStart []NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook `json:"OnStart,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *NotebookInstanceLifecycleConfig) AWSCloudFormationType() string { + return "AWS::SageMaker::NotebookInstanceLifecycleConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NotebookInstanceLifecycleConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NotebookInstanceLifecycleConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NotebookInstanceLifecycleConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NotebookInstanceLifecycleConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NotebookInstanceLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NotebookInstanceLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r NotebookInstanceLifecycleConfig) MarshalJSON() ([]byte, error) { + type Properties NotebookInstanceLifecycleConfig + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *NotebookInstanceLifecycleConfig) UnmarshalJSON(b []byte) error { + type Properties NotebookInstanceLifecycleConfig + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = NotebookInstanceLifecycleConfig(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go b/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go new file mode 100644 index 0000000000..666983f051 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go @@ -0,0 +1,65 @@ +package sagemaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook AWS CloudFormation Resource (AWS::SageMaker::NotebookInstanceLifecycleConfig.NotebookInstanceLifecycleHook) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook.html +type NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook struct { + + // Content AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook.html#cfn-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook-content + Content string `json:"Content,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) AWSCloudFormationType() string { + return "AWS::SageMaker::NotebookInstanceLifecycleConfig.NotebookInstanceLifecycleHook" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-sagemaker-workteam.go b/cloudformation/sagemaker/aws-sagemaker-workteam.go similarity index 79% rename from cloudformation/resources/aws-sagemaker-workteam.go rename to cloudformation/sagemaker/aws-sagemaker-workteam.go index ad18c33164..3b9fe0076f 100644 --- a/cloudformation/resources/aws-sagemaker-workteam.go +++ b/cloudformation/sagemaker/aws-sagemaker-workteam.go @@ -1,15 +1,17 @@ -package resources +package sagemaker import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSageMakerWorkteam AWS CloudFormation Resource (AWS::SageMaker::Workteam) +// Workteam AWS CloudFormation Resource (AWS::SageMaker::Workteam) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html -type AWSSageMakerWorkteam struct { +type Workteam struct { // Description AWS CloudFormation Property // Required: false @@ -19,17 +21,17 @@ type AWSSageMakerWorkteam struct { // MemberDefinitions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html#cfn-sagemaker-workteam-memberdefinitions - MemberDefinitions []AWSSageMakerWorkteam_MemberDefinition `json:"MemberDefinitions,omitempty"` + MemberDefinitions []Workteam_MemberDefinition `json:"MemberDefinitions,omitempty"` // NotificationConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html#cfn-sagemaker-workteam-notificationconfiguration - NotificationConfiguration *AWSSageMakerWorkteam_NotificationConfiguration `json:"NotificationConfiguration,omitempty"` + NotificationConfiguration *Workteam_NotificationConfiguration `json:"NotificationConfiguration,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html#cfn-sagemaker-workteam-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // WorkteamName AWS CloudFormation Property // Required: false @@ -47,50 +49,50 @@ type AWSSageMakerWorkteam struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerWorkteam) AWSCloudFormationType() string { +func (r *Workteam) AWSCloudFormationType() string { return "AWS::SageMaker::Workteam" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerWorkteam) DependsOn() []string { +func (r *Workteam) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerWorkteam) SetDependsOn(dependencies []string) { +func (r *Workteam) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerWorkteam) Metadata() map[string]interface{} { +func (r *Workteam) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerWorkteam) SetMetadata(metadata map[string]interface{}) { +func (r *Workteam) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerWorkteam) DeletionPolicy() policies.DeletionPolicy { +func (r *Workteam) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerWorkteam) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Workteam) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSageMakerWorkteam) MarshalJSON() ([]byte, error) { - type Properties AWSSageMakerWorkteam +func (r Workteam) MarshalJSON() ([]byte, error) { + type Properties Workteam return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSSageMakerWorkteam) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSageMakerWorkteam) UnmarshalJSON(b []byte) error { - type Properties AWSSageMakerWorkteam +func (r *Workteam) UnmarshalJSON(b []byte) error { + type Properties Workteam res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSSageMakerWorkteam) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSageMakerWorkteam(*res.Properties) + *r = Workteam(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sagemaker-workteam_cognitomemberdefinition.go b/cloudformation/sagemaker/aws-sagemaker-workteam_cognitomemberdefinition.go similarity index 75% rename from cloudformation/resources/aws-sagemaker-workteam_cognitomemberdefinition.go rename to cloudformation/sagemaker/aws-sagemaker-workteam_cognitomemberdefinition.go index deccda82fb..c0382d295f 100644 --- a/cloudformation/resources/aws-sagemaker-workteam_cognitomemberdefinition.go +++ b/cloudformation/sagemaker/aws-sagemaker-workteam_cognitomemberdefinition.go @@ -1,10 +1,12 @@ -package resources +package sagemaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSageMakerWorkteam_CognitoMemberDefinition AWS CloudFormation Resource (AWS::SageMaker::Workteam.CognitoMemberDefinition) +// Workteam_CognitoMemberDefinition AWS CloudFormation Resource (AWS::SageMaker::Workteam.CognitoMemberDefinition) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-cognitomemberdefinition.html -type AWSSageMakerWorkteam_CognitoMemberDefinition struct { +type Workteam_CognitoMemberDefinition struct { // CognitoClientId AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSSageMakerWorkteam_CognitoMemberDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerWorkteam_CognitoMemberDefinition) AWSCloudFormationType() string { +func (r *Workteam_CognitoMemberDefinition) AWSCloudFormationType() string { return "AWS::SageMaker::Workteam.CognitoMemberDefinition" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerWorkteam_CognitoMemberDefinition) DependsOn() []string { +func (r *Workteam_CognitoMemberDefinition) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSageMakerWorkteam_CognitoMemberDefinition) SetDependsOn(dependencies []string) { +func (r *Workteam_CognitoMemberDefinition) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerWorkteam_CognitoMemberDefinition) Metadata() map[string]interface{} { +func (r *Workteam_CognitoMemberDefinition) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSageMakerWorkteam_CognitoMemberDefinition) SetMetadata(metadata map[string]interface{}) { +func (r *Workteam_CognitoMemberDefinition) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerWorkteam_CognitoMemberDefinition) DeletionPolicy() policies.DeletionPolicy { +func (r *Workteam_CognitoMemberDefinition) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSageMakerWorkteam_CognitoMemberDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Workteam_CognitoMemberDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/sagemaker/aws-sagemaker-workteam_memberdefinition.go b/cloudformation/sagemaker/aws-sagemaker-workteam_memberdefinition.go new file mode 100644 index 0000000000..f1a02c00a0 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-workteam_memberdefinition.go @@ -0,0 +1,65 @@ +package sagemaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Workteam_MemberDefinition AWS CloudFormation Resource (AWS::SageMaker::Workteam.MemberDefinition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-memberdefinition.html +type Workteam_MemberDefinition struct { + + // CognitoMemberDefinition AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-memberdefinition.html#cfn-sagemaker-workteam-memberdefinition-cognitomemberdefinition + CognitoMemberDefinition *Workteam_CognitoMemberDefinition `json:"CognitoMemberDefinition,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Workteam_MemberDefinition) AWSCloudFormationType() string { + return "AWS::SageMaker::Workteam.MemberDefinition" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Workteam_MemberDefinition) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Workteam_MemberDefinition) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Workteam_MemberDefinition) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Workteam_MemberDefinition) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Workteam_MemberDefinition) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Workteam_MemberDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/sagemaker/aws-sagemaker-workteam_notificationconfiguration.go b/cloudformation/sagemaker/aws-sagemaker-workteam_notificationconfiguration.go new file mode 100644 index 0000000000..9d2428678f --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-workteam_notificationconfiguration.go @@ -0,0 +1,65 @@ +package sagemaker + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Workteam_NotificationConfiguration AWS CloudFormation Resource (AWS::SageMaker::Workteam.NotificationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-notificationconfiguration.html +type Workteam_NotificationConfiguration struct { + + // NotificationTopicArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-notificationconfiguration.html#cfn-sagemaker-workteam-notificationconfiguration-notificationtopicarn + NotificationTopicArn string `json:"NotificationTopicArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Workteam_NotificationConfiguration) AWSCloudFormationType() string { + return "AWS::SageMaker::Workteam.NotificationConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Workteam_NotificationConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Workteam_NotificationConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Workteam_NotificationConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Workteam_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Workteam_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Workteam_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-sdb-domain.go b/cloudformation/sdb/aws-sdb-domain.go similarity index 81% rename from cloudformation/resources/aws-sdb-domain.go rename to cloudformation/sdb/aws-sdb-domain.go index 2a0fac53e8..64d368e222 100644 --- a/cloudformation/resources/aws-sdb-domain.go +++ b/cloudformation/sdb/aws-sdb-domain.go @@ -1,15 +1,16 @@ -package resources +package sdb import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSDBDomain AWS CloudFormation Resource (AWS::SDB::Domain) +// Domain AWS CloudFormation Resource (AWS::SDB::Domain) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-simpledb.html -type AWSSDBDomain struct { +type Domain struct { // Description AWS CloudFormation Property // Required: false @@ -27,50 +28,50 @@ type AWSSDBDomain struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSDBDomain) AWSCloudFormationType() string { +func (r *Domain) AWSCloudFormationType() string { return "AWS::SDB::Domain" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSDBDomain) DependsOn() []string { +func (r *Domain) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSDBDomain) SetDependsOn(dependencies []string) { +func (r *Domain) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSDBDomain) Metadata() map[string]interface{} { +func (r *Domain) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSDBDomain) SetMetadata(metadata map[string]interface{}) { +func (r *Domain) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSDBDomain) DeletionPolicy() policies.DeletionPolicy { +func (r *Domain) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSDBDomain) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSDBDomain) MarshalJSON() ([]byte, error) { - type Properties AWSSDBDomain +func (r Domain) MarshalJSON() ([]byte, error) { + type Properties Domain return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSSDBDomain) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSDBDomain) UnmarshalJSON(b []byte) error { - type Properties AWSSDBDomain +func (r *Domain) UnmarshalJSON(b []byte) error { + type Properties Domain res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSSDBDomain) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSDBDomain(*res.Properties) + *r = Domain(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-secretsmanager-resourcepolicy.go b/cloudformation/secretsmanager/aws-secretsmanager-resourcepolicy.go similarity index 78% rename from cloudformation/resources/aws-secretsmanager-resourcepolicy.go rename to cloudformation/secretsmanager/aws-secretsmanager-resourcepolicy.go index 7fdced69dd..42c0fa6dd6 100644 --- a/cloudformation/resources/aws-secretsmanager-resourcepolicy.go +++ b/cloudformation/secretsmanager/aws-secretsmanager-resourcepolicy.go @@ -1,15 +1,16 @@ -package resources +package secretsmanager import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSecretsManagerResourcePolicy AWS CloudFormation Resource (AWS::SecretsManager::ResourcePolicy) +// ResourcePolicy AWS CloudFormation Resource (AWS::SecretsManager::ResourcePolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html -type AWSSecretsManagerResourcePolicy struct { +type ResourcePolicy struct { // ResourcePolicy AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSSecretsManagerResourcePolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSecretsManagerResourcePolicy) AWSCloudFormationType() string { +func (r *ResourcePolicy) AWSCloudFormationType() string { return "AWS::SecretsManager::ResourcePolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerResourcePolicy) DependsOn() []string { +func (r *ResourcePolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerResourcePolicy) SetDependsOn(dependencies []string) { +func (r *ResourcePolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerResourcePolicy) Metadata() map[string]interface{} { +func (r *ResourcePolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerResourcePolicy) SetMetadata(metadata map[string]interface{}) { +func (r *ResourcePolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerResourcePolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *ResourcePolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerResourcePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourcePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSecretsManagerResourcePolicy) MarshalJSON() ([]byte, error) { - type Properties AWSSecretsManagerResourcePolicy +func (r ResourcePolicy) MarshalJSON() ([]byte, error) { + type Properties ResourcePolicy return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSSecretsManagerResourcePolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSecretsManagerResourcePolicy) UnmarshalJSON(b []byte) error { - type Properties AWSSecretsManagerResourcePolicy +func (r *ResourcePolicy) UnmarshalJSON(b []byte) error { + type Properties ResourcePolicy res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSSecretsManagerResourcePolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSecretsManagerResourcePolicy(*res.Properties) + *r = ResourcePolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-secretsmanager-rotationschedule.go b/cloudformation/secretsmanager/aws-secretsmanager-rotationschedule.go similarity index 77% rename from cloudformation/resources/aws-secretsmanager-rotationschedule.go rename to cloudformation/secretsmanager/aws-secretsmanager-rotationschedule.go index a3e69b28bb..3634a1d236 100644 --- a/cloudformation/resources/aws-secretsmanager-rotationschedule.go +++ b/cloudformation/secretsmanager/aws-secretsmanager-rotationschedule.go @@ -1,15 +1,16 @@ -package resources +package secretsmanager import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSecretsManagerRotationSchedule AWS CloudFormation Resource (AWS::SecretsManager::RotationSchedule) +// RotationSchedule AWS CloudFormation Resource (AWS::SecretsManager::RotationSchedule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html -type AWSSecretsManagerRotationSchedule struct { +type RotationSchedule struct { // RotationLambdaARN AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSSecretsManagerRotationSchedule struct { // RotationRules AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-rotationrules - RotationRules *AWSSecretsManagerRotationSchedule_RotationRules `json:"RotationRules,omitempty"` + RotationRules *RotationSchedule_RotationRules `json:"RotationRules,omitempty"` // SecretId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSSecretsManagerRotationSchedule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSecretsManagerRotationSchedule) AWSCloudFormationType() string { +func (r *RotationSchedule) AWSCloudFormationType() string { return "AWS::SecretsManager::RotationSchedule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerRotationSchedule) DependsOn() []string { +func (r *RotationSchedule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerRotationSchedule) SetDependsOn(dependencies []string) { +func (r *RotationSchedule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerRotationSchedule) Metadata() map[string]interface{} { +func (r *RotationSchedule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerRotationSchedule) SetMetadata(metadata map[string]interface{}) { +func (r *RotationSchedule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerRotationSchedule) DeletionPolicy() policies.DeletionPolicy { +func (r *RotationSchedule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerRotationSchedule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RotationSchedule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSecretsManagerRotationSchedule) MarshalJSON() ([]byte, error) { - type Properties AWSSecretsManagerRotationSchedule +func (r RotationSchedule) MarshalJSON() ([]byte, error) { + type Properties RotationSchedule return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSSecretsManagerRotationSchedule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSecretsManagerRotationSchedule) UnmarshalJSON(b []byte) error { - type Properties AWSSecretsManagerRotationSchedule +func (r *RotationSchedule) UnmarshalJSON(b []byte) error { + type Properties RotationSchedule res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSSecretsManagerRotationSchedule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSecretsManagerRotationSchedule(*res.Properties) + *r = RotationSchedule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/secretsmanager/aws-secretsmanager-rotationschedule_rotationrules.go b/cloudformation/secretsmanager/aws-secretsmanager-rotationschedule_rotationrules.go new file mode 100644 index 0000000000..3feabe8fd9 --- /dev/null +++ b/cloudformation/secretsmanager/aws-secretsmanager-rotationschedule_rotationrules.go @@ -0,0 +1,65 @@ +package secretsmanager + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// RotationSchedule_RotationRules AWS CloudFormation Resource (AWS::SecretsManager::RotationSchedule.RotationRules) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html +type RotationSchedule_RotationRules struct { + + // AutomaticallyAfterDays AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html#cfn-secretsmanager-rotationschedule-rotationrules-automaticallyafterdays + AutomaticallyAfterDays int `json:"AutomaticallyAfterDays,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *RotationSchedule_RotationRules) AWSCloudFormationType() string { + return "AWS::SecretsManager::RotationSchedule.RotationRules" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RotationSchedule_RotationRules) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *RotationSchedule_RotationRules) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RotationSchedule_RotationRules) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *RotationSchedule_RotationRules) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RotationSchedule_RotationRules) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *RotationSchedule_RotationRules) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-secretsmanager-secret.go b/cloudformation/secretsmanager/aws-secretsmanager-secret.go similarity index 81% rename from cloudformation/resources/aws-secretsmanager-secret.go rename to cloudformation/secretsmanager/aws-secretsmanager-secret.go index 23f84d85ae..289f1784bd 100644 --- a/cloudformation/resources/aws-secretsmanager-secret.go +++ b/cloudformation/secretsmanager/aws-secretsmanager-secret.go @@ -1,15 +1,17 @@ -package resources +package secretsmanager import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSecretsManagerSecret AWS CloudFormation Resource (AWS::SecretsManager::Secret) +// Secret AWS CloudFormation Resource (AWS::SecretsManager::Secret) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html -type AWSSecretsManagerSecret struct { +type Secret struct { // Description AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSSecretsManagerSecret struct { // GenerateSecretString AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-generatesecretstring - GenerateSecretString *AWSSecretsManagerSecret_GenerateSecretString `json:"GenerateSecretString,omitempty"` + GenerateSecretString *Secret_GenerateSecretString `json:"GenerateSecretString,omitempty"` // KmsKeyId AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSSecretsManagerSecret struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +54,50 @@ type AWSSecretsManagerSecret struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSecretsManagerSecret) AWSCloudFormationType() string { +func (r *Secret) AWSCloudFormationType() string { return "AWS::SecretsManager::Secret" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerSecret) DependsOn() []string { +func (r *Secret) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerSecret) SetDependsOn(dependencies []string) { +func (r *Secret) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerSecret) Metadata() map[string]interface{} { +func (r *Secret) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerSecret) SetMetadata(metadata map[string]interface{}) { +func (r *Secret) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerSecret) DeletionPolicy() policies.DeletionPolicy { +func (r *Secret) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerSecret) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Secret) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSecretsManagerSecret) MarshalJSON() ([]byte, error) { - type Properties AWSSecretsManagerSecret +func (r Secret) MarshalJSON() ([]byte, error) { + type Properties Secret return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +115,8 @@ func (r AWSSecretsManagerSecret) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSecretsManagerSecret) UnmarshalJSON(b []byte) error { - type Properties AWSSecretsManagerSecret +func (r *Secret) UnmarshalJSON(b []byte) error { + type Properties Secret res := &struct { Type string Properties *Properties @@ -133,7 +135,7 @@ func (r *AWSSecretsManagerSecret) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSecretsManagerSecret(*res.Properties) + *r = Secret(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-secretsmanager-secret_generatesecretstring.go b/cloudformation/secretsmanager/aws-secretsmanager-secret_generatesecretstring.go similarity index 84% rename from cloudformation/resources/aws-secretsmanager-secret_generatesecretstring.go rename to cloudformation/secretsmanager/aws-secretsmanager-secret_generatesecretstring.go index f36159629c..0f02b339bc 100644 --- a/cloudformation/resources/aws-secretsmanager-secret_generatesecretstring.go +++ b/cloudformation/secretsmanager/aws-secretsmanager-secret_generatesecretstring.go @@ -1,10 +1,12 @@ -package resources +package secretsmanager -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSecretsManagerSecret_GenerateSecretString AWS CloudFormation Resource (AWS::SecretsManager::Secret.GenerateSecretString) +// Secret_GenerateSecretString AWS CloudFormation Resource (AWS::SecretsManager::Secret.GenerateSecretString) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html -type AWSSecretsManagerSecret_GenerateSecretString struct { +type Secret_GenerateSecretString struct { // ExcludeCharacters AWS CloudFormation Property // Required: false @@ -67,42 +69,42 @@ type AWSSecretsManagerSecret_GenerateSecretString struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSecretsManagerSecret_GenerateSecretString) AWSCloudFormationType() string { +func (r *Secret_GenerateSecretString) AWSCloudFormationType() string { return "AWS::SecretsManager::Secret.GenerateSecretString" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerSecret_GenerateSecretString) DependsOn() []string { +func (r *Secret_GenerateSecretString) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerSecret_GenerateSecretString) SetDependsOn(dependencies []string) { +func (r *Secret_GenerateSecretString) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerSecret_GenerateSecretString) Metadata() map[string]interface{} { +func (r *Secret_GenerateSecretString) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerSecret_GenerateSecretString) SetMetadata(metadata map[string]interface{}) { +func (r *Secret_GenerateSecretString) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerSecret_GenerateSecretString) DeletionPolicy() policies.DeletionPolicy { +func (r *Secret_GenerateSecretString) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerSecret_GenerateSecretString) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Secret_GenerateSecretString) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-secretsmanager-secrettargetattachment.go b/cloudformation/secretsmanager/aws-secretsmanager-secrettargetattachment.go similarity index 77% rename from cloudformation/resources/aws-secretsmanager-secrettargetattachment.go rename to cloudformation/secretsmanager/aws-secretsmanager-secrettargetattachment.go index fc0a836ea0..2cd1cd4274 100644 --- a/cloudformation/resources/aws-secretsmanager-secrettargetattachment.go +++ b/cloudformation/secretsmanager/aws-secretsmanager-secrettargetattachment.go @@ -1,15 +1,16 @@ -package resources +package secretsmanager import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSecretsManagerSecretTargetAttachment AWS CloudFormation Resource (AWS::SecretsManager::SecretTargetAttachment) +// SecretTargetAttachment AWS CloudFormation Resource (AWS::SecretsManager::SecretTargetAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html -type AWSSecretsManagerSecretTargetAttachment struct { +type SecretTargetAttachment struct { // SecretId AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSSecretsManagerSecretTargetAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSecretsManagerSecretTargetAttachment) AWSCloudFormationType() string { +func (r *SecretTargetAttachment) AWSCloudFormationType() string { return "AWS::SecretsManager::SecretTargetAttachment" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerSecretTargetAttachment) DependsOn() []string { +func (r *SecretTargetAttachment) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecretsManagerSecretTargetAttachment) SetDependsOn(dependencies []string) { +func (r *SecretTargetAttachment) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerSecretTargetAttachment) Metadata() map[string]interface{} { +func (r *SecretTargetAttachment) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecretsManagerSecretTargetAttachment) SetMetadata(metadata map[string]interface{}) { +func (r *SecretTargetAttachment) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerSecretTargetAttachment) DeletionPolicy() policies.DeletionPolicy { +func (r *SecretTargetAttachment) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecretsManagerSecretTargetAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecretTargetAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSecretsManagerSecretTargetAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSSecretsManagerSecretTargetAttachment +func (r SecretTargetAttachment) MarshalJSON() ([]byte, error) { + type Properties SecretTargetAttachment return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSSecretsManagerSecretTargetAttachment) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSecretsManagerSecretTargetAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSSecretsManagerSecretTargetAttachment +func (r *SecretTargetAttachment) UnmarshalJSON(b []byte) error { + type Properties SecretTargetAttachment res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSSecretsManagerSecretTargetAttachment) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSecretsManagerSecretTargetAttachment(*res.Properties) + *r = SecretTargetAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-securityhub-hub.go b/cloudformation/securityhub/aws-securityhub-hub.go similarity index 80% rename from cloudformation/resources/aws-securityhub-hub.go rename to cloudformation/securityhub/aws-securityhub-hub.go index f09f28e4dd..39d12aeb38 100644 --- a/cloudformation/resources/aws-securityhub-hub.go +++ b/cloudformation/securityhub/aws-securityhub-hub.go @@ -1,15 +1,16 @@ -package resources +package securityhub import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSecurityHubHub AWS CloudFormation Resource (AWS::SecurityHub::Hub) +// Hub AWS CloudFormation Resource (AWS::SecurityHub::Hub) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html -type AWSSecurityHubHub struct { +type Hub struct { // Tags AWS CloudFormation Property // Required: false @@ -27,50 +28,50 @@ type AWSSecurityHubHub struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSecurityHubHub) AWSCloudFormationType() string { +func (r *Hub) AWSCloudFormationType() string { return "AWS::SecurityHub::Hub" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecurityHubHub) DependsOn() []string { +func (r *Hub) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSecurityHubHub) SetDependsOn(dependencies []string) { +func (r *Hub) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecurityHubHub) Metadata() map[string]interface{} { +func (r *Hub) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSecurityHubHub) SetMetadata(metadata map[string]interface{}) { +func (r *Hub) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecurityHubHub) DeletionPolicy() policies.DeletionPolicy { +func (r *Hub) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSecurityHubHub) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Hub) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSecurityHubHub) MarshalJSON() ([]byte, error) { - type Properties AWSSecurityHubHub +func (r Hub) MarshalJSON() ([]byte, error) { + type Properties Hub return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSSecurityHubHub) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSecurityHubHub) UnmarshalJSON(b []byte) error { - type Properties AWSSecurityHubHub +func (r *Hub) UnmarshalJSON(b []byte) error { + type Properties Hub res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSSecurityHubHub) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSecurityHubHub(*res.Properties) + *r = Hub(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/serverless/api_definitionuri.go b/cloudformation/serverless/api_definitionuri.go new file mode 100644 index 0000000000..05280a0ca5 --- /dev/null +++ b/cloudformation/serverless/api_definitionuri.go @@ -0,0 +1,64 @@ +package serverless + +import ( + "encoding/json" + "sort" + + "github.com/awslabs/goformation/v3/cloudformation/utils" +) + +// Api_DefinitionUri is a helper struct that can hold either a String or S3Location value +type Api_DefinitionUri struct { + String *string + + S3Location *Api_S3Location +} + +func (r Api_DefinitionUri) value() interface{} { + ret := []interface{}{} + + if r.String != nil { + ret = append(ret, r.String) + } + + if r.S3Location != nil { + ret = append(ret, *r.S3Location) + } + + sort.Sort(utils.ByJSONLength(ret)) // Heuristic to select best attribute + if len(ret) > 0 { + return ret[0] + } + + return nil +} + +func (r Api_DefinitionUri) MarshalJSON() ([]byte, error) { + return json.Marshal(r.value()) +} + +// Hook into the marshaller +func (r *Api_DefinitionUri) UnmarshalJSON(b []byte) error { + + // Unmarshal into interface{} to check it's type + var typecheck interface{} + if err := json.Unmarshal(b, &typecheck); err != nil { + return err + } + + switch val := typecheck.(type) { + + case string: + r.String = &val + + case map[string]interface{}: + val = val // This ensures val is used to stop an error + + json.Unmarshal(b, &r.S3Location) + + case []interface{}: + + } + + return nil +} diff --git a/cloudformation/serverless/application_location.go b/cloudformation/serverless/application_location.go new file mode 100644 index 0000000000..dc8ef2820f --- /dev/null +++ b/cloudformation/serverless/application_location.go @@ -0,0 +1,64 @@ +package serverless + +import ( + "encoding/json" + "sort" + + "github.com/awslabs/goformation/v3/cloudformation/utils" +) + +// Application_Location is a helper struct that can hold either a String or ApplicationLocation value +type Application_Location struct { + String *string + + ApplicationLocation *Application_ApplicationLocation +} + +func (r Application_Location) value() interface{} { + ret := []interface{}{} + + if r.String != nil { + ret = append(ret, r.String) + } + + if r.ApplicationLocation != nil { + ret = append(ret, *r.ApplicationLocation) + } + + sort.Sort(utils.ByJSONLength(ret)) // Heuristic to select best attribute + if len(ret) > 0 { + return ret[0] + } + + return nil +} + +func (r Application_Location) MarshalJSON() ([]byte, error) { + return json.Marshal(r.value()) +} + +// Hook into the marshaller +func (r *Application_Location) UnmarshalJSON(b []byte) error { + + // Unmarshal into interface{} to check it's type + var typecheck interface{} + if err := json.Unmarshal(b, &typecheck); err != nil { + return err + } + + switch val := typecheck.(type) { + + case string: + r.String = &val + + case map[string]interface{}: + val = val // This ensures val is used to stop an error + + json.Unmarshal(b, &r.ApplicationLocation) + + case []interface{}: + + } + + return nil +} diff --git a/cloudformation/resources/aws-serverless-api.go b/cloudformation/serverless/aws-serverless-api.go similarity index 85% rename from cloudformation/resources/aws-serverless-api.go rename to cloudformation/serverless/aws-serverless-api.go index 00353f48e5..ae6bea1fbb 100644 --- a/cloudformation/resources/aws-serverless-api.go +++ b/cloudformation/serverless/aws-serverless-api.go @@ -1,25 +1,26 @@ -package resources +package serverless import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServerlessApi AWS CloudFormation Resource (AWS::Serverless::Api) +// Api AWS CloudFormation Resource (AWS::Serverless::Api) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi -type AWSServerlessApi struct { +type Api struct { // AccessLogSetting AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - AccessLogSetting *AWSServerlessApi_AccessLogSetting `json:"AccessLogSetting,omitempty"` + AccessLogSetting *Api_AccessLogSetting `json:"AccessLogSetting,omitempty"` // Auth AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - Auth *AWSServerlessApi_Auth `json:"Auth,omitempty"` + Auth *Api_Auth `json:"Auth,omitempty"` // BinaryMediaTypes AWS CloudFormation Property // Required: false @@ -49,7 +50,7 @@ type AWSServerlessApi struct { // DefinitionUri AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - DefinitionUri *AWSServerlessApi_DefinitionUri `json:"DefinitionUri,omitempty"` + DefinitionUri *Api_DefinitionUri `json:"DefinitionUri,omitempty"` // EndpointConfiguration AWS CloudFormation Property // Required: false @@ -92,50 +93,50 @@ type AWSServerlessApi struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessApi) AWSCloudFormationType() string { +func (r *Api) AWSCloudFormationType() string { return "AWS::Serverless::Api" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApi) DependsOn() []string { +func (r *Api) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApi) SetDependsOn(dependencies []string) { +func (r *Api) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApi) Metadata() map[string]interface{} { +func (r *Api) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApi) SetMetadata(metadata map[string]interface{}) { +func (r *Api) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApi) DeletionPolicy() policies.DeletionPolicy { +func (r *Api) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApi) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Api) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServerlessApi) MarshalJSON() ([]byte, error) { - type Properties AWSServerlessApi +func (r Api) MarshalJSON() ([]byte, error) { + type Properties Api return json.Marshal(&struct { Type string Properties Properties @@ -153,8 +154,8 @@ func (r AWSServerlessApi) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServerlessApi) UnmarshalJSON(b []byte) error { - type Properties AWSServerlessApi +func (r *Api) UnmarshalJSON(b []byte) error { + type Properties Api res := &struct { Type string Properties *Properties @@ -173,7 +174,7 @@ func (r *AWSServerlessApi) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServerlessApi(*res.Properties) + *r = Api(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/serverless/aws-serverless-api_accesslogsetting.go b/cloudformation/serverless/aws-serverless-api_accesslogsetting.go new file mode 100644 index 0000000000..960cf2933d --- /dev/null +++ b/cloudformation/serverless/aws-serverless-api_accesslogsetting.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Api_AccessLogSetting AWS CloudFormation Resource (AWS::Serverless::Api.AccessLogSetting) +// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html +type Api_AccessLogSetting struct { + + // DestinationArn AWS CloudFormation Property + // Required: false + // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-destinationarn + DestinationArn string `json:"DestinationArn,omitempty"` + + // Format AWS CloudFormation Property + // Required: false + // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-format + Format string `json:"Format,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Api_AccessLogSetting) AWSCloudFormationType() string { + return "AWS::Serverless::Api.AccessLogSetting" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Api_AccessLogSetting) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Api_AccessLogSetting) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Api_AccessLogSetting) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Api_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Api_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Api_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-api_auth.go b/cloudformation/serverless/aws-serverless-api_auth.go similarity index 76% rename from cloudformation/resources/aws-serverless-api_auth.go rename to cloudformation/serverless/aws-serverless-api_auth.go index f77dc394ec..af7a03b419 100644 --- a/cloudformation/resources/aws-serverless-api_auth.go +++ b/cloudformation/serverless/aws-serverless-api_auth.go @@ -1,10 +1,12 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessApi_Auth AWS CloudFormation Resource (AWS::Serverless::Api.Auth) +// Api_Auth AWS CloudFormation Resource (AWS::Serverless::Api.Auth) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api-auth-object -type AWSServerlessApi_Auth struct { +type Api_Auth struct { // Authorizers AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSServerlessApi_Auth struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessApi_Auth) AWSCloudFormationType() string { +func (r *Api_Auth) AWSCloudFormationType() string { return "AWS::Serverless::Api.Auth" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApi_Auth) DependsOn() []string { +func (r *Api_Auth) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApi_Auth) SetDependsOn(dependencies []string) { +func (r *Api_Auth) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApi_Auth) Metadata() map[string]interface{} { +func (r *Api_Auth) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApi_Auth) SetMetadata(metadata map[string]interface{}) { +func (r *Api_Auth) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApi_Auth) DeletionPolicy() policies.DeletionPolicy { +func (r *Api_Auth) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApi_Auth) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Api_Auth) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-api_s3location.go b/cloudformation/serverless/aws-serverless-api_s3location.go similarity index 76% rename from cloudformation/resources/aws-serverless-api_s3location.go rename to cloudformation/serverless/aws-serverless-api_s3location.go index e87d4753c5..8d717297d2 100644 --- a/cloudformation/resources/aws-serverless-api_s3location.go +++ b/cloudformation/serverless/aws-serverless-api_s3location.go @@ -1,10 +1,12 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessApi_S3Location AWS CloudFormation Resource (AWS::Serverless::Api.S3Location) +// Api_S3Location AWS CloudFormation Resource (AWS::Serverless::Api.S3Location) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3-location-object -type AWSServerlessApi_S3Location struct { +type Api_S3Location struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSServerlessApi_S3Location struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessApi_S3Location) AWSCloudFormationType() string { +func (r *Api_S3Location) AWSCloudFormationType() string { return "AWS::Serverless::Api.S3Location" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApi_S3Location) DependsOn() []string { +func (r *Api_S3Location) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApi_S3Location) SetDependsOn(dependencies []string) { +func (r *Api_S3Location) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApi_S3Location) Metadata() map[string]interface{} { +func (r *Api_S3Location) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApi_S3Location) SetMetadata(metadata map[string]interface{}) { +func (r *Api_S3Location) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApi_S3Location) DeletionPolicy() policies.DeletionPolicy { +func (r *Api_S3Location) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApi_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Api_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-application.go b/cloudformation/serverless/aws-serverless-application.go similarity index 80% rename from cloudformation/resources/aws-serverless-application.go rename to cloudformation/serverless/aws-serverless-application.go index f992920d24..0e848bbb28 100644 --- a/cloudformation/resources/aws-serverless-application.go +++ b/cloudformation/serverless/aws-serverless-application.go @@ -1,20 +1,21 @@ -package resources +package serverless import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServerlessApplication AWS CloudFormation Resource (AWS::Serverless::Application) +// Application AWS CloudFormation Resource (AWS::Serverless::Application) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication -type AWSServerlessApplication struct { +type Application struct { // Location AWS CloudFormation Property // Required: true // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - Location *AWSServerlessApplication_Location `json:"Location,omitempty"` + Location *Application_Location `json:"Location,omitempty"` // NotificationArns AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSServerlessApplication struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessApplication) AWSCloudFormationType() string { +func (r *Application) AWSCloudFormationType() string { return "AWS::Serverless::Application" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApplication) DependsOn() []string { +func (r *Application) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessApplication) SetDependsOn(dependencies []string) { +func (r *Application) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApplication) Metadata() map[string]interface{} { +func (r *Application) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessApplication) SetMetadata(metadata map[string]interface{}) { +func (r *Application) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApplication) DeletionPolicy() policies.DeletionPolicy { +func (r *Application) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessApplication) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServerlessApplication) MarshalJSON() ([]byte, error) { - type Properties AWSServerlessApplication +func (r Application) MarshalJSON() ([]byte, error) { + type Properties Application return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSServerlessApplication) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServerlessApplication) UnmarshalJSON(b []byte) error { - type Properties AWSServerlessApplication +func (r *Application) UnmarshalJSON(b []byte) error { + type Properties Application res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSServerlessApplication) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServerlessApplication(*res.Properties) + *r = Application(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/serverless/aws-serverless-application_applicationlocation.go b/cloudformation/serverless/aws-serverless-application_applicationlocation.go new file mode 100644 index 0000000000..860137fe6d --- /dev/null +++ b/cloudformation/serverless/aws-serverless-application_applicationlocation.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Application_ApplicationLocation AWS CloudFormation Resource (AWS::Serverless::Application.ApplicationLocation) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication +type Application_ApplicationLocation struct { + + // ApplicationId AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication + ApplicationId string `json:"ApplicationId,omitempty"` + + // SemanticVersion AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication + SemanticVersion string `json:"SemanticVersion,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Application_ApplicationLocation) AWSCloudFormationType() string { + return "AWS::Serverless::Application.ApplicationLocation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationLocation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Application_ApplicationLocation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationLocation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Application_ApplicationLocation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationLocation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Application_ApplicationLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-function.go b/cloudformation/serverless/aws-serverless-function.go similarity index 83% rename from cloudformation/resources/aws-serverless-function.go rename to cloudformation/serverless/aws-serverless-function.go index 6a6999dfd2..d5142b2118 100644 --- a/cloudformation/resources/aws-serverless-function.go +++ b/cloudformation/serverless/aws-serverless-function.go @@ -1,15 +1,16 @@ -package resources +package serverless import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServerlessFunction AWS CloudFormation Resource (AWS::Serverless::Function) +// Function AWS CloudFormation Resource (AWS::Serverless::Function) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction -type AWSServerlessFunction struct { +type Function struct { // AutoPublishAlias AWS CloudFormation Property // Required: false @@ -19,17 +20,17 @@ type AWSServerlessFunction struct { // CodeUri AWS CloudFormation Property // Required: true // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - CodeUri *AWSServerlessFunction_CodeUri `json:"CodeUri,omitempty"` + CodeUri *Function_CodeUri `json:"CodeUri,omitempty"` // DeadLetterQueue AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - DeadLetterQueue *AWSServerlessFunction_DeadLetterQueue `json:"DeadLetterQueue,omitempty"` + DeadLetterQueue *Function_DeadLetterQueue `json:"DeadLetterQueue,omitempty"` // DeploymentPreference AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - DeploymentPreference *AWSServerlessFunction_DeploymentPreference `json:"DeploymentPreference,omitempty"` + DeploymentPreference *Function_DeploymentPreference `json:"DeploymentPreference,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -39,12 +40,12 @@ type AWSServerlessFunction struct { // Environment AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - Environment *AWSServerlessFunction_FunctionEnvironment `json:"Environment,omitempty"` + Environment *Function_FunctionEnvironment `json:"Environment,omitempty"` // Events AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - Events map[string]AWSServerlessFunction_EventSource `json:"Events,omitempty"` + Events map[string]Function_EventSource `json:"Events,omitempty"` // FunctionName AWS CloudFormation Property // Required: false @@ -79,7 +80,7 @@ type AWSServerlessFunction struct { // Policies AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - Policies *AWSServerlessFunction_Policies `json:"Policies,omitempty"` + Policies *Function_Policies `json:"Policies,omitempty"` // ReservedConcurrentExecutions AWS CloudFormation Property // Required: false @@ -114,7 +115,7 @@ type AWSServerlessFunction struct { // VpcConfig AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - VpcConfig *AWSServerlessFunction_VpcConfig `json:"VpcConfig,omitempty"` + VpcConfig *Function_VpcConfig `json:"VpcConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -127,50 +128,50 @@ type AWSServerlessFunction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction) AWSCloudFormationType() string { +func (r *Function) AWSCloudFormationType() string { return "AWS::Serverless::Function" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction) DependsOn() []string { +func (r *Function) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction) SetDependsOn(dependencies []string) { +func (r *Function) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction) Metadata() map[string]interface{} { +func (r *Function) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction) SetMetadata(metadata map[string]interface{}) { +func (r *Function) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction) DeletionPolicy() policies.DeletionPolicy { +func (r *Function) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServerlessFunction) MarshalJSON() ([]byte, error) { - type Properties AWSServerlessFunction +func (r Function) MarshalJSON() ([]byte, error) { + type Properties Function return json.Marshal(&struct { Type string Properties Properties @@ -188,8 +189,8 @@ func (r AWSServerlessFunction) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServerlessFunction) UnmarshalJSON(b []byte) error { - type Properties AWSServerlessFunction +func (r *Function) UnmarshalJSON(b []byte) error { + type Properties Function res := &struct { Type string Properties *Properties @@ -208,7 +209,7 @@ func (r *AWSServerlessFunction) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServerlessFunction(*res.Properties) + *r = Function(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/serverless/aws-serverless-function_alexaskillevent.go b/cloudformation/serverless/aws-serverless-function_alexaskillevent.go new file mode 100644 index 0000000000..93307bc9e2 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_alexaskillevent.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_AlexaSkillEvent AWS CloudFormation Resource (AWS::Serverless::Function.AlexaSkillEvent) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#alexaskill +type Function_AlexaSkillEvent struct { + + // Variables AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#alexaskill + Variables map[string]string `json:"Variables,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_AlexaSkillEvent) AWSCloudFormationType() string { + return "AWS::Serverless::Function.AlexaSkillEvent" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_AlexaSkillEvent) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_AlexaSkillEvent) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_AlexaSkillEvent) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_AlexaSkillEvent) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_AlexaSkillEvent) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_AlexaSkillEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-function_apievent.go b/cloudformation/serverless/aws-serverless-function_apievent.go similarity index 75% rename from cloudformation/resources/aws-serverless-function_apievent.go rename to cloudformation/serverless/aws-serverless-function_apievent.go index b78d7eb140..1e2e287d05 100644 --- a/cloudformation/resources/aws-serverless-function_apievent.go +++ b/cloudformation/serverless/aws-serverless-function_apievent.go @@ -1,10 +1,12 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessFunction_ApiEvent AWS CloudFormation Resource (AWS::Serverless::Function.ApiEvent) +// Function_ApiEvent AWS CloudFormation Resource (AWS::Serverless::Function.ApiEvent) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api -type AWSServerlessFunction_ApiEvent struct { +type Function_ApiEvent struct { // Method AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSServerlessFunction_ApiEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_ApiEvent) AWSCloudFormationType() string { +func (r *Function_ApiEvent) AWSCloudFormationType() string { return "AWS::Serverless::Function.ApiEvent" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_ApiEvent) DependsOn() []string { +func (r *Function_ApiEvent) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_ApiEvent) SetDependsOn(dependencies []string) { +func (r *Function_ApiEvent) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_ApiEvent) Metadata() map[string]interface{} { +func (r *Function_ApiEvent) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_ApiEvent) SetMetadata(metadata map[string]interface{}) { +func (r *Function_ApiEvent) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_ApiEvent) DeletionPolicy() policies.DeletionPolicy { +func (r *Function_ApiEvent) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_ApiEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_ApiEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/serverless/aws-serverless-function_bucketsampt.go b/cloudformation/serverless/aws-serverless-function_bucketsampt.go new file mode 100644 index 0000000000..0597c59d34 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_bucketsampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_BucketSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.BucketSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_BucketSAMPT struct { + + // BucketName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + BucketName string `json:"BucketName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_BucketSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.BucketSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_BucketSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_BucketSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_BucketSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_BucketSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_BucketSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_BucketSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_cloudwatcheventevent.go b/cloudformation/serverless/aws-serverless-function_cloudwatcheventevent.go new file mode 100644 index 0000000000..f372357154 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_cloudwatcheventevent.go @@ -0,0 +1,75 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_CloudWatchEventEvent AWS CloudFormation Resource (AWS::Serverless::Function.CloudWatchEventEvent) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent +type Function_CloudWatchEventEvent struct { + + // Input AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent + Input string `json:"Input,omitempty"` + + // InputPath AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent + InputPath string `json:"InputPath,omitempty"` + + // Pattern AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AmazonCloudWatch/latest/events/CloudWatchEventsandEventPatterns.html + Pattern interface{} `json:"Pattern,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_CloudWatchEventEvent) AWSCloudFormationType() string { + return "AWS::Serverless::Function.CloudWatchEventEvent" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_CloudWatchEventEvent) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_CloudWatchEventEvent) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_CloudWatchEventEvent) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_CloudWatchEventEvent) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_CloudWatchEventEvent) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_CloudWatchEventEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_collectionsampt.go b/cloudformation/serverless/aws-serverless-function_collectionsampt.go new file mode 100644 index 0000000000..462e22489c --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_collectionsampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_CollectionSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.CollectionSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_CollectionSAMPT struct { + + // CollectionId AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + CollectionId string `json:"CollectionId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_CollectionSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.CollectionSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_CollectionSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_CollectionSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_CollectionSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_CollectionSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_CollectionSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_CollectionSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_deadletterqueue.go b/cloudformation/serverless/aws-serverless-function_deadletterqueue.go new file mode 100644 index 0000000000..b110e70101 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_deadletterqueue.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_DeadLetterQueue AWS CloudFormation Resource (AWS::Serverless::Function.DeadLetterQueue) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deadletterqueue-object +type Function_DeadLetterQueue struct { + + // TargetArn AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction + TargetArn string `json:"TargetArn,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_DeadLetterQueue) AWSCloudFormationType() string { + return "AWS::Serverless::Function.DeadLetterQueue" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_DeadLetterQueue) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_DeadLetterQueue) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_DeadLetterQueue) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_DeadLetterQueue) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_DeadLetterQueue) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_DeadLetterQueue) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-function_deploymentpreference.go b/cloudformation/serverless/aws-serverless-function_deploymentpreference.go similarity index 76% rename from cloudformation/resources/aws-serverless-function_deploymentpreference.go rename to cloudformation/serverless/aws-serverless-function_deploymentpreference.go index 20b319f656..a46f675c6c 100644 --- a/cloudformation/resources/aws-serverless-function_deploymentpreference.go +++ b/cloudformation/serverless/aws-serverless-function_deploymentpreference.go @@ -1,10 +1,12 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessFunction_DeploymentPreference AWS CloudFormation Resource (AWS::Serverless::Function.DeploymentPreference) +// Function_DeploymentPreference AWS CloudFormation Resource (AWS::Serverless::Function.DeploymentPreference) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deploymentpreference-object -type AWSServerlessFunction_DeploymentPreference struct { +type Function_DeploymentPreference struct { // Alarms AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSServerlessFunction_DeploymentPreference struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_DeploymentPreference) AWSCloudFormationType() string { +func (r *Function_DeploymentPreference) AWSCloudFormationType() string { return "AWS::Serverless::Function.DeploymentPreference" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_DeploymentPreference) DependsOn() []string { +func (r *Function_DeploymentPreference) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_DeploymentPreference) SetDependsOn(dependencies []string) { +func (r *Function_DeploymentPreference) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_DeploymentPreference) Metadata() map[string]interface{} { +func (r *Function_DeploymentPreference) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_DeploymentPreference) SetMetadata(metadata map[string]interface{}) { +func (r *Function_DeploymentPreference) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_DeploymentPreference) DeletionPolicy() policies.DeletionPolicy { +func (r *Function_DeploymentPreference) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_DeploymentPreference) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_DeploymentPreference) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/serverless/aws-serverless-function_domainsampt.go b/cloudformation/serverless/aws-serverless-function_domainsampt.go new file mode 100644 index 0000000000..c5db2072ae --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_domainsampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_DomainSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.DomainSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_DomainSAMPT struct { + + // DomainName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + DomainName string `json:"DomainName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_DomainSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.DomainSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_DomainSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_DomainSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_DomainSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_DomainSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_DomainSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_DomainSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-function_dynamodbevent.go b/cloudformation/serverless/aws-serverless-function_dynamodbevent.go similarity index 76% rename from cloudformation/resources/aws-serverless-function_dynamodbevent.go rename to cloudformation/serverless/aws-serverless-function_dynamodbevent.go index 482eda443a..57b9df30c4 100644 --- a/cloudformation/resources/aws-serverless-function_dynamodbevent.go +++ b/cloudformation/serverless/aws-serverless-function_dynamodbevent.go @@ -1,10 +1,12 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessFunction_DynamoDBEvent AWS CloudFormation Resource (AWS::Serverless::Function.DynamoDBEvent) +// Function_DynamoDBEvent AWS CloudFormation Resource (AWS::Serverless::Function.DynamoDBEvent) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#dynamodb -type AWSServerlessFunction_DynamoDBEvent struct { +type Function_DynamoDBEvent struct { // BatchSize AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSServerlessFunction_DynamoDBEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_DynamoDBEvent) AWSCloudFormationType() string { +func (r *Function_DynamoDBEvent) AWSCloudFormationType() string { return "AWS::Serverless::Function.DynamoDBEvent" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_DynamoDBEvent) DependsOn() []string { +func (r *Function_DynamoDBEvent) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_DynamoDBEvent) SetDependsOn(dependencies []string) { +func (r *Function_DynamoDBEvent) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_DynamoDBEvent) Metadata() map[string]interface{} { +func (r *Function_DynamoDBEvent) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_DynamoDBEvent) SetMetadata(metadata map[string]interface{}) { +func (r *Function_DynamoDBEvent) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_DynamoDBEvent) DeletionPolicy() policies.DeletionPolicy { +func (r *Function_DynamoDBEvent) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_DynamoDBEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_DynamoDBEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/serverless/aws-serverless-function_emptysampt.go b/cloudformation/serverless/aws-serverless-function_emptysampt.go new file mode 100644 index 0000000000..536e54bad9 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_emptysampt.go @@ -0,0 +1,60 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_EmptySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.EmptySAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_EmptySAMPT struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_EmptySAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.EmptySAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_EmptySAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_EmptySAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_EmptySAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_EmptySAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_EmptySAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_EmptySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_eventsource.go b/cloudformation/serverless/aws-serverless-function_eventsource.go new file mode 100644 index 0000000000..28b878aa1f --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_eventsource.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_EventSource AWS CloudFormation Resource (AWS::Serverless::Function.EventSource) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-object +type Function_EventSource struct { + + // Properties AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-types + Properties *Function_Properties `json:"Properties,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-object + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_EventSource) AWSCloudFormationType() string { + return "AWS::Serverless::Function.EventSource" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_EventSource) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_EventSource) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_EventSource) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_EventSource) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_EventSource) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_EventSource) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_functionenvironment.go b/cloudformation/serverless/aws-serverless-function_functionenvironment.go new file mode 100644 index 0000000000..e3e0a50c3b --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_functionenvironment.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_FunctionEnvironment AWS CloudFormation Resource (AWS::Serverless::Function.FunctionEnvironment) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#environment-object +type Function_FunctionEnvironment struct { + + // Variables AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#environment-object + Variables map[string]string `json:"Variables,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_FunctionEnvironment) AWSCloudFormationType() string { + return "AWS::Serverless::Function.FunctionEnvironment" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_FunctionEnvironment) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_FunctionEnvironment) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_FunctionEnvironment) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_FunctionEnvironment) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_FunctionEnvironment) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_FunctionEnvironment) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_functionsampt.go b/cloudformation/serverless/aws-serverless-function_functionsampt.go new file mode 100644 index 0000000000..2cc7e07f7d --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_functionsampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_FunctionSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.FunctionSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_FunctionSAMPT struct { + + // FunctionName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + FunctionName string `json:"FunctionName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_FunctionSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.FunctionSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_FunctionSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_FunctionSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_FunctionSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_FunctionSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_FunctionSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_FunctionSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_iampolicydocument.go b/cloudformation/serverless/aws-serverless-function_iampolicydocument.go new file mode 100644 index 0000000000..057ca417e0 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_iampolicydocument.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_IAMPolicyDocument AWS CloudFormation Resource (AWS::Serverless::Function.IAMPolicyDocument) +// See: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html +type Function_IAMPolicyDocument struct { + + // Statement AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html + Statement interface{} `json:"Statement,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_IAMPolicyDocument) AWSCloudFormationType() string { + return "AWS::Serverless::Function.IAMPolicyDocument" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_IAMPolicyDocument) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_IAMPolicyDocument) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_IAMPolicyDocument) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_IAMPolicyDocument) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_IAMPolicyDocument) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_IAMPolicyDocument) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_identitysampt.go b/cloudformation/serverless/aws-serverless-function_identitysampt.go new file mode 100644 index 0000000000..d401729848 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_identitysampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_IdentitySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.IdentitySAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_IdentitySAMPT struct { + + // IdentityName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + IdentityName string `json:"IdentityName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_IdentitySAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.IdentitySAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_IdentitySAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_IdentitySAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_IdentitySAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_IdentitySAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_IdentitySAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_IdentitySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_iotruleevent.go b/cloudformation/serverless/aws-serverless-function_iotruleevent.go new file mode 100644 index 0000000000..87f2038cd2 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_iotruleevent.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_IoTRuleEvent AWS CloudFormation Resource (AWS::Serverless::Function.IoTRuleEvent) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule +type Function_IoTRuleEvent struct { + + // AwsIotSqlVersion AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule + AwsIotSqlVersion string `json:"AwsIotSqlVersion,omitempty"` + + // Sql AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule + Sql string `json:"Sql,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_IoTRuleEvent) AWSCloudFormationType() string { + return "AWS::Serverless::Function.IoTRuleEvent" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_IoTRuleEvent) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_IoTRuleEvent) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_IoTRuleEvent) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_IoTRuleEvent) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_IoTRuleEvent) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_IoTRuleEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_keysampt.go b/cloudformation/serverless/aws-serverless-function_keysampt.go new file mode 100644 index 0000000000..cf6f3ecd4b --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_keysampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_KeySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.KeySAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_KeySAMPT struct { + + // KeyId AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + KeyId string `json:"KeyId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_KeySAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.KeySAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_KeySAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_KeySAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_KeySAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_KeySAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_KeySAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_KeySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-function_kinesisevent.go b/cloudformation/serverless/aws-serverless-function_kinesisevent.go similarity index 76% rename from cloudformation/resources/aws-serverless-function_kinesisevent.go rename to cloudformation/serverless/aws-serverless-function_kinesisevent.go index b85c5dbb2e..5a3cc8d29d 100644 --- a/cloudformation/resources/aws-serverless-function_kinesisevent.go +++ b/cloudformation/serverless/aws-serverless-function_kinesisevent.go @@ -1,10 +1,12 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessFunction_KinesisEvent AWS CloudFormation Resource (AWS::Serverless::Function.KinesisEvent) +// Function_KinesisEvent AWS CloudFormation Resource (AWS::Serverless::Function.KinesisEvent) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#kinesis -type AWSServerlessFunction_KinesisEvent struct { +type Function_KinesisEvent struct { // BatchSize AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSServerlessFunction_KinesisEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_KinesisEvent) AWSCloudFormationType() string { +func (r *Function_KinesisEvent) AWSCloudFormationType() string { return "AWS::Serverless::Function.KinesisEvent" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_KinesisEvent) DependsOn() []string { +func (r *Function_KinesisEvent) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_KinesisEvent) SetDependsOn(dependencies []string) { +func (r *Function_KinesisEvent) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_KinesisEvent) Metadata() map[string]interface{} { +func (r *Function_KinesisEvent) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_KinesisEvent) SetMetadata(metadata map[string]interface{}) { +func (r *Function_KinesisEvent) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_KinesisEvent) DeletionPolicy() policies.DeletionPolicy { +func (r *Function_KinesisEvent) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_KinesisEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_KinesisEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/serverless/aws-serverless-function_loggroupsampt.go b/cloudformation/serverless/aws-serverless-function_loggroupsampt.go new file mode 100644 index 0000000000..27054a25b8 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_loggroupsampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_LogGroupSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.LogGroupSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_LogGroupSAMPT struct { + + // LogGroupName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + LogGroupName string `json:"LogGroupName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_LogGroupSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.LogGroupSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_LogGroupSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_LogGroupSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_LogGroupSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_LogGroupSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_LogGroupSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_LogGroupSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_queuesampt.go b/cloudformation/serverless/aws-serverless-function_queuesampt.go new file mode 100644 index 0000000000..d21695c0d8 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_queuesampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_QueueSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.QueueSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_QueueSAMPT struct { + + // QueueName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + QueueName string `json:"QueueName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_QueueSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.QueueSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_QueueSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_QueueSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_QueueSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_QueueSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_QueueSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_QueueSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_s3event.go b/cloudformation/serverless/aws-serverless-function_s3event.go new file mode 100644 index 0000000000..9191d87903 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_s3event.go @@ -0,0 +1,75 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_S3Event AWS CloudFormation Resource (AWS::Serverless::Function.S3Event) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 +type Function_S3Event struct { + + // Bucket AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 + Bucket string `json:"Bucket,omitempty"` + + // Events AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 + Events *Function_Events `json:"Events,omitempty"` + + // Filter AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 + Filter *Function_S3NotificationFilter `json:"Filter,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_S3Event) AWSCloudFormationType() string { + return "AWS::Serverless::Function.S3Event" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_S3Event) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_S3Event) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_S3Event) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_S3Event) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_S3Event) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_S3Event) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-function_s3location.go b/cloudformation/serverless/aws-serverless-function_s3location.go similarity index 75% rename from cloudformation/resources/aws-serverless-function_s3location.go rename to cloudformation/serverless/aws-serverless-function_s3location.go index 678810c8a6..dbd3baaa92 100644 --- a/cloudformation/resources/aws-serverless-function_s3location.go +++ b/cloudformation/serverless/aws-serverless-function_s3location.go @@ -1,10 +1,12 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessFunction_S3Location AWS CloudFormation Resource (AWS::Serverless::Function.S3Location) +// Function_S3Location AWS CloudFormation Resource (AWS::Serverless::Function.S3Location) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3-location-object -type AWSServerlessFunction_S3Location struct { +type Function_S3Location struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSServerlessFunction_S3Location struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_S3Location) AWSCloudFormationType() string { +func (r *Function_S3Location) AWSCloudFormationType() string { return "AWS::Serverless::Function.S3Location" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_S3Location) DependsOn() []string { +func (r *Function_S3Location) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_S3Location) SetDependsOn(dependencies []string) { +func (r *Function_S3Location) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_S3Location) Metadata() map[string]interface{} { +func (r *Function_S3Location) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_S3Location) SetMetadata(metadata map[string]interface{}) { +func (r *Function_S3Location) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_S3Location) DeletionPolicy() policies.DeletionPolicy { +func (r *Function_S3Location) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_S3Location) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/serverless/aws-serverless-function_s3notificationfilter.go b/cloudformation/serverless/aws-serverless-function_s3notificationfilter.go new file mode 100644 index 0000000000..24924a3c32 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_s3notificationfilter.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_S3NotificationFilter AWS CloudFormation Resource (AWS::Serverless::Function.S3NotificationFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html +type Function_S3NotificationFilter struct { + + // S3Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html + S3Key string `json:"S3Key,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_S3NotificationFilter) AWSCloudFormationType() string { + return "AWS::Serverless::Function.S3NotificationFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_S3NotificationFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_S3NotificationFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_S3NotificationFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_S3NotificationFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_S3NotificationFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_S3NotificationFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_sampolicytemplate.go b/cloudformation/serverless/aws-serverless-function_sampolicytemplate.go new file mode 100644 index 0000000000..4c168360e3 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_sampolicytemplate.go @@ -0,0 +1,210 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_SAMPolicyTemplate AWS CloudFormation Resource (AWS::Serverless::Function.SAMPolicyTemplate) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_SAMPolicyTemplate struct { + + // AMIDescribePolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + AMIDescribePolicy *Function_EmptySAMPT `json:"AMIDescribePolicy,omitempty"` + + // CloudFormationDescribeStacksPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + CloudFormationDescribeStacksPolicy *Function_EmptySAMPT `json:"CloudFormationDescribeStacksPolicy,omitempty"` + + // CloudWatchPutMetricPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + CloudWatchPutMetricPolicy *Function_EmptySAMPT `json:"CloudWatchPutMetricPolicy,omitempty"` + + // DynamoDBCrudPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + DynamoDBCrudPolicy *Function_TableSAMPT `json:"DynamoDBCrudPolicy,omitempty"` + + // DynamoDBReadPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + DynamoDBReadPolicy *Function_TableSAMPT `json:"DynamoDBReadPolicy,omitempty"` + + // DynamoDBStreamReadPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + DynamoDBStreamReadPolicy *Function_TableStreamSAMPT `json:"DynamoDBStreamReadPolicy,omitempty"` + + // EC2DescribePolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + EC2DescribePolicy *Function_EmptySAMPT `json:"EC2DescribePolicy,omitempty"` + + // ElasticsearchHttpPostPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + ElasticsearchHttpPostPolicy *Function_DomainSAMPT `json:"ElasticsearchHttpPostPolicy,omitempty"` + + // FilterLogEventsPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + FilterLogEventsPolicy *Function_LogGroupSAMPT `json:"FilterLogEventsPolicy,omitempty"` + + // KMSDecryptPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + KMSDecryptPolicy *Function_KeySAMPT `json:"KMSDecryptPolicy,omitempty"` + + // KinesisCrudPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + KinesisCrudPolicy *Function_StreamSAMPT `json:"KinesisCrudPolicy,omitempty"` + + // KinesisStreamReadPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + KinesisStreamReadPolicy *Function_StreamSAMPT `json:"KinesisStreamReadPolicy,omitempty"` + + // LambdaInvokePolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + LambdaInvokePolicy *Function_FunctionSAMPT `json:"LambdaInvokePolicy,omitempty"` + + // RekognitionDetectOnlyPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + RekognitionDetectOnlyPolicy *Function_EmptySAMPT `json:"RekognitionDetectOnlyPolicy,omitempty"` + + // RekognitionLabelsPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + RekognitionLabelsPolicy *Function_EmptySAMPT `json:"RekognitionLabelsPolicy,omitempty"` + + // RekognitionNoDataAccessPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + RekognitionNoDataAccessPolicy *Function_CollectionSAMPT `json:"RekognitionNoDataAccessPolicy,omitempty"` + + // RekognitionReadPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + RekognitionReadPolicy *Function_CollectionSAMPT `json:"RekognitionReadPolicy,omitempty"` + + // RekognitionWriteOnlyAccessPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + RekognitionWriteOnlyAccessPolicy *Function_CollectionSAMPT `json:"RekognitionWriteOnlyAccessPolicy,omitempty"` + + // S3CrudPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + S3CrudPolicy *Function_BucketSAMPT `json:"S3CrudPolicy,omitempty"` + + // S3ReadPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + S3ReadPolicy *Function_BucketSAMPT `json:"S3ReadPolicy,omitempty"` + + // SESBulkTemplatedCrudPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + SESBulkTemplatedCrudPolicy *Function_IdentitySAMPT `json:"SESBulkTemplatedCrudPolicy,omitempty"` + + // SESCrudPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + SESCrudPolicy *Function_IdentitySAMPT `json:"SESCrudPolicy,omitempty"` + + // SESEmailTemplateCrudPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + SESEmailTemplateCrudPolicy *Function_EmptySAMPT `json:"SESEmailTemplateCrudPolicy,omitempty"` + + // SESSendBouncePolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + SESSendBouncePolicy *Function_IdentitySAMPT `json:"SESSendBouncePolicy,omitempty"` + + // SNSCrudPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + SNSCrudPolicy *Function_TopicSAMPT `json:"SNSCrudPolicy,omitempty"` + + // SNSPublishMessagePolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + SNSPublishMessagePolicy *Function_TopicSAMPT `json:"SNSPublishMessagePolicy,omitempty"` + + // SQSPollerPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + SQSPollerPolicy *Function_QueueSAMPT `json:"SQSPollerPolicy,omitempty"` + + // SQSSendMessagePolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + SQSSendMessagePolicy *Function_QueueSAMPT `json:"SQSSendMessagePolicy,omitempty"` + + // StepFunctionsExecutionPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + StepFunctionsExecutionPolicy *Function_StateMachineSAMPT `json:"StepFunctionsExecutionPolicy,omitempty"` + + // VPCAccessPolicy AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + VPCAccessPolicy *Function_EmptySAMPT `json:"VPCAccessPolicy,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_SAMPolicyTemplate) AWSCloudFormationType() string { + return "AWS::Serverless::Function.SAMPolicyTemplate" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_SAMPolicyTemplate) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_SAMPolicyTemplate) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_SAMPolicyTemplate) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_SAMPolicyTemplate) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_SAMPolicyTemplate) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_SAMPolicyTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_scheduleevent.go b/cloudformation/serverless/aws-serverless-function_scheduleevent.go new file mode 100644 index 0000000000..155847426f --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_scheduleevent.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_ScheduleEvent AWS CloudFormation Resource (AWS::Serverless::Function.ScheduleEvent) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule +type Function_ScheduleEvent struct { + + // Input AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule + Input string `json:"Input,omitempty"` + + // Schedule AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule + Schedule string `json:"Schedule,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_ScheduleEvent) AWSCloudFormationType() string { + return "AWS::Serverless::Function.ScheduleEvent" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_ScheduleEvent) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_ScheduleEvent) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_ScheduleEvent) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_ScheduleEvent) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_ScheduleEvent) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_ScheduleEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_snsevent.go b/cloudformation/serverless/aws-serverless-function_snsevent.go new file mode 100644 index 0000000000..a967de798e --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_snsevent.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_SNSEvent AWS CloudFormation Resource (AWS::Serverless::Function.SNSEvent) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sns +type Function_SNSEvent struct { + + // Topic AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sns + Topic string `json:"Topic,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_SNSEvent) AWSCloudFormationType() string { + return "AWS::Serverless::Function.SNSEvent" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_SNSEvent) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_SNSEvent) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_SNSEvent) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_SNSEvent) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_SNSEvent) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_SNSEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-function_sqsevent.go b/cloudformation/serverless/aws-serverless-function_sqsevent.go similarity index 75% rename from cloudformation/resources/aws-serverless-function_sqsevent.go rename to cloudformation/serverless/aws-serverless-function_sqsevent.go index 696265c49d..2b286b7ed5 100644 --- a/cloudformation/resources/aws-serverless-function_sqsevent.go +++ b/cloudformation/serverless/aws-serverless-function_sqsevent.go @@ -1,10 +1,12 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessFunction_SQSEvent AWS CloudFormation Resource (AWS::Serverless::Function.SQSEvent) +// Function_SQSEvent AWS CloudFormation Resource (AWS::Serverless::Function.SQSEvent) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sqs -type AWSServerlessFunction_SQSEvent struct { +type Function_SQSEvent struct { // BatchSize AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSServerlessFunction_SQSEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_SQSEvent) AWSCloudFormationType() string { +func (r *Function_SQSEvent) AWSCloudFormationType() string { return "AWS::Serverless::Function.SQSEvent" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_SQSEvent) DependsOn() []string { +func (r *Function_SQSEvent) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessFunction_SQSEvent) SetDependsOn(dependencies []string) { +func (r *Function_SQSEvent) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_SQSEvent) Metadata() map[string]interface{} { +func (r *Function_SQSEvent) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessFunction_SQSEvent) SetMetadata(metadata map[string]interface{}) { +func (r *Function_SQSEvent) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_SQSEvent) DeletionPolicy() policies.DeletionPolicy { +func (r *Function_SQSEvent) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessFunction_SQSEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_SQSEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/serverless/aws-serverless-function_statemachinesampt.go b/cloudformation/serverless/aws-serverless-function_statemachinesampt.go new file mode 100644 index 0000000000..f8e6e7b2d3 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_statemachinesampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_StateMachineSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.StateMachineSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_StateMachineSAMPT struct { + + // StateMachineName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + StateMachineName string `json:"StateMachineName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_StateMachineSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.StateMachineSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_StateMachineSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_StateMachineSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_StateMachineSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_StateMachineSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_StateMachineSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_StateMachineSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_streamsampt.go b/cloudformation/serverless/aws-serverless-function_streamsampt.go new file mode 100644 index 0000000000..81d674f972 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_streamsampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_StreamSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.StreamSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_StreamSAMPT struct { + + // StreamName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + StreamName string `json:"StreamName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_StreamSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.StreamSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_StreamSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_StreamSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_StreamSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_StreamSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_StreamSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_StreamSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_tablesampt.go b/cloudformation/serverless/aws-serverless-function_tablesampt.go new file mode 100644 index 0000000000..03cbb375af --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_tablesampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_TableSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TableSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_TableSAMPT struct { + + // TableName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + TableName string `json:"TableName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_TableSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.TableSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_TableSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_TableSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_TableSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_TableSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_TableSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_TableSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_tablestreamsampt.go b/cloudformation/serverless/aws-serverless-function_tablestreamsampt.go new file mode 100644 index 0000000000..e51fe6d73e --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_tablestreamsampt.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_TableStreamSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TableStreamSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_TableStreamSAMPT struct { + + // StreamName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + StreamName string `json:"StreamName,omitempty"` + + // TableName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + TableName string `json:"TableName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_TableStreamSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.TableStreamSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_TableStreamSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_TableStreamSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_TableStreamSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_TableStreamSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_TableStreamSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_TableStreamSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_topicsampt.go b/cloudformation/serverless/aws-serverless-function_topicsampt.go new file mode 100644 index 0000000000..db867f10b0 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_topicsampt.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_TopicSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TopicSAMPT) +// See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst +type Function_TopicSAMPT struct { + + // TopicName AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/docs/policy_templates.rst + TopicName string `json:"TopicName,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_TopicSAMPT) AWSCloudFormationType() string { + return "AWS::Serverless::Function.TopicSAMPT" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_TopicSAMPT) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_TopicSAMPT) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_TopicSAMPT) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_TopicSAMPT) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_TopicSAMPT) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_TopicSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-function_vpcconfig.go b/cloudformation/serverless/aws-serverless-function_vpcconfig.go new file mode 100644 index 0000000000..3b761bdca1 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-function_vpcconfig.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Function_VpcConfig AWS CloudFormation Resource (AWS::Serverless::Function.VpcConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html +type Function_VpcConfig struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html + SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` + + // SubnetIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html + SubnetIds []string `json:"SubnetIds,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Function_VpcConfig) AWSCloudFormationType() string { + return "AWS::Serverless::Function.VpcConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_VpcConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Function_VpcConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_VpcConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Function_VpcConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_VpcConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Function_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-serverless-layerversion.go b/cloudformation/serverless/aws-serverless-layerversion.go similarity index 82% rename from cloudformation/resources/aws-serverless-layerversion.go rename to cloudformation/serverless/aws-serverless-layerversion.go index 57549bc916..bf12400273 100644 --- a/cloudformation/resources/aws-serverless-layerversion.go +++ b/cloudformation/serverless/aws-serverless-layerversion.go @@ -1,15 +1,16 @@ -package resources +package serverless import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServerlessLayerVersion AWS CloudFormation Resource (AWS::Serverless::LayerVersion) +// LayerVersion AWS CloudFormation Resource (AWS::Serverless::LayerVersion) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion -type AWSServerlessLayerVersion struct { +type LayerVersion struct { // CompatibleRuntimes AWS CloudFormation Property // Required: false @@ -52,50 +53,50 @@ type AWSServerlessLayerVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessLayerVersion) AWSCloudFormationType() string { +func (r *LayerVersion) AWSCloudFormationType() string { return "AWS::Serverless::LayerVersion" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessLayerVersion) DependsOn() []string { +func (r *LayerVersion) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessLayerVersion) SetDependsOn(dependencies []string) { +func (r *LayerVersion) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessLayerVersion) Metadata() map[string]interface{} { +func (r *LayerVersion) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessLayerVersion) SetMetadata(metadata map[string]interface{}) { +func (r *LayerVersion) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessLayerVersion) DeletionPolicy() policies.DeletionPolicy { +func (r *LayerVersion) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessLayerVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LayerVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServerlessLayerVersion) MarshalJSON() ([]byte, error) { - type Properties AWSServerlessLayerVersion +func (r LayerVersion) MarshalJSON() ([]byte, error) { + type Properties LayerVersion return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSServerlessLayerVersion) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServerlessLayerVersion) UnmarshalJSON(b []byte) error { - type Properties AWSServerlessLayerVersion +func (r *LayerVersion) UnmarshalJSON(b []byte) error { + type Properties LayerVersion res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSServerlessLayerVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServerlessLayerVersion(*res.Properties) + *r = LayerVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-serverless-simpletable.go b/cloudformation/serverless/aws-serverless-simpletable.go similarity index 77% rename from cloudformation/resources/aws-serverless-simpletable.go rename to cloudformation/serverless/aws-serverless-simpletable.go index 1a893c9ed1..4cdcce2acc 100644 --- a/cloudformation/resources/aws-serverless-simpletable.go +++ b/cloudformation/serverless/aws-serverless-simpletable.go @@ -1,30 +1,31 @@ -package resources +package serverless import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServerlessSimpleTable AWS CloudFormation Resource (AWS::Serverless::SimpleTable) +// SimpleTable AWS CloudFormation Resource (AWS::Serverless::SimpleTable) // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesssimpletable -type AWSServerlessSimpleTable struct { +type SimpleTable struct { // PrimaryKey AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object - PrimaryKey *AWSServerlessSimpleTable_PrimaryKey `json:"PrimaryKey,omitempty"` + PrimaryKey *SimpleTable_PrimaryKey `json:"PrimaryKey,omitempty"` // ProvisionedThroughput AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html - ProvisionedThroughput *AWSServerlessSimpleTable_ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"` + ProvisionedThroughput *SimpleTable_ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"` // SSESpecification AWS CloudFormation Property // Required: false // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesssimpletable - SSESpecification *AWSServerlessSimpleTable_SSESpecification `json:"SSESpecification,omitempty"` + SSESpecification *SimpleTable_SSESpecification `json:"SSESpecification,omitempty"` // TableName AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSServerlessSimpleTable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessSimpleTable) AWSCloudFormationType() string { +func (r *SimpleTable) AWSCloudFormationType() string { return "AWS::Serverless::SimpleTable" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessSimpleTable) DependsOn() []string { +func (r *SimpleTable) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServerlessSimpleTable) SetDependsOn(dependencies []string) { +func (r *SimpleTable) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessSimpleTable) Metadata() map[string]interface{} { +func (r *SimpleTable) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServerlessSimpleTable) SetMetadata(metadata map[string]interface{}) { +func (r *SimpleTable) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessSimpleTable) DeletionPolicy() policies.DeletionPolicy { +func (r *SimpleTable) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServerlessSimpleTable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimpleTable) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServerlessSimpleTable) MarshalJSON() ([]byte, error) { - type Properties AWSServerlessSimpleTable +func (r SimpleTable) MarshalJSON() ([]byte, error) { + type Properties SimpleTable return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSServerlessSimpleTable) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServerlessSimpleTable) UnmarshalJSON(b []byte) error { - type Properties AWSServerlessSimpleTable +func (r *SimpleTable) UnmarshalJSON(b []byte) error { + type Properties SimpleTable res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSServerlessSimpleTable) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServerlessSimpleTable(*res.Properties) + *r = SimpleTable(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/serverless/aws-serverless-simpletable_primarykey.go b/cloudformation/serverless/aws-serverless-simpletable_primarykey.go new file mode 100644 index 0000000000..634649c73d --- /dev/null +++ b/cloudformation/serverless/aws-serverless-simpletable_primarykey.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SimpleTable_PrimaryKey AWS CloudFormation Resource (AWS::Serverless::SimpleTable.PrimaryKey) +// See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object +type SimpleTable_PrimaryKey struct { + + // Name AWS CloudFormation Property + // Required: false + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object + Name string `json:"Name,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SimpleTable_PrimaryKey) AWSCloudFormationType() string { + return "AWS::Serverless::SimpleTable.PrimaryKey" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimpleTable_PrimaryKey) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimpleTable_PrimaryKey) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimpleTable_PrimaryKey) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimpleTable_PrimaryKey) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimpleTable_PrimaryKey) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimpleTable_PrimaryKey) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-simpletable_provisionedthroughput.go b/cloudformation/serverless/aws-serverless-simpletable_provisionedthroughput.go new file mode 100644 index 0000000000..60c56abb96 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-simpletable_provisionedthroughput.go @@ -0,0 +1,70 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SimpleTable_ProvisionedThroughput AWS CloudFormation Resource (AWS::Serverless::SimpleTable.ProvisionedThroughput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html +type SimpleTable_ProvisionedThroughput struct { + + // ReadCapacityUnits AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html + ReadCapacityUnits int `json:"ReadCapacityUnits,omitempty"` + + // WriteCapacityUnits AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html + WriteCapacityUnits int `json:"WriteCapacityUnits"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SimpleTable_ProvisionedThroughput) AWSCloudFormationType() string { + return "AWS::Serverless::SimpleTable.ProvisionedThroughput" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimpleTable_ProvisionedThroughput) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimpleTable_ProvisionedThroughput) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimpleTable_ProvisionedThroughput) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimpleTable_ProvisionedThroughput) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimpleTable_ProvisionedThroughput) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimpleTable_ProvisionedThroughput) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/aws-serverless-simpletable_ssespecification.go b/cloudformation/serverless/aws-serverless-simpletable_ssespecification.go new file mode 100644 index 0000000000..77667f84e8 --- /dev/null +++ b/cloudformation/serverless/aws-serverless-simpletable_ssespecification.go @@ -0,0 +1,65 @@ +package serverless + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SimpleTable_SSESpecification AWS CloudFormation Resource (AWS::Serverless::SimpleTable.SSESpecification) +// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html +type SimpleTable_SSESpecification struct { + + // SSEEnabled AWS CloudFormation Property + // Required: false + // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html + SSEEnabled bool `json:"SSEEnabled,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SimpleTable_SSESpecification) AWSCloudFormationType() string { + return "AWS::Serverless::SimpleTable.SSESpecification" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimpleTable_SSESpecification) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SimpleTable_SSESpecification) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimpleTable_SSESpecification) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SimpleTable_SSESpecification) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimpleTable_SSESpecification) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SimpleTable_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/serverless/function_codeuri.go b/cloudformation/serverless/function_codeuri.go new file mode 100644 index 0000000000..033b21be62 --- /dev/null +++ b/cloudformation/serverless/function_codeuri.go @@ -0,0 +1,64 @@ +package serverless + +import ( + "encoding/json" + "sort" + + "github.com/awslabs/goformation/v3/cloudformation/utils" +) + +// Function_CodeUri is a helper struct that can hold either a String or S3Location value +type Function_CodeUri struct { + String *string + + S3Location *Function_S3Location +} + +func (r Function_CodeUri) value() interface{} { + ret := []interface{}{} + + if r.String != nil { + ret = append(ret, r.String) + } + + if r.S3Location != nil { + ret = append(ret, *r.S3Location) + } + + sort.Sort(utils.ByJSONLength(ret)) // Heuristic to select best attribute + if len(ret) > 0 { + return ret[0] + } + + return nil +} + +func (r Function_CodeUri) MarshalJSON() ([]byte, error) { + return json.Marshal(r.value()) +} + +// Hook into the marshaller +func (r *Function_CodeUri) UnmarshalJSON(b []byte) error { + + // Unmarshal into interface{} to check it's type + var typecheck interface{} + if err := json.Unmarshal(b, &typecheck); err != nil { + return err + } + + switch val := typecheck.(type) { + + case string: + r.String = &val + + case map[string]interface{}: + val = val // This ensures val is used to stop an error + + json.Unmarshal(b, &r.S3Location) + + case []interface{}: + + } + + return nil +} diff --git a/cloudformation/serverless/function_events.go b/cloudformation/serverless/function_events.go new file mode 100644 index 0000000000..3f96be2c4a --- /dev/null +++ b/cloudformation/serverless/function_events.go @@ -0,0 +1,67 @@ +package serverless + +import ( + "encoding/json" + "sort" + + "github.com/awslabs/goformation/v3/cloudformation/utils" +) + +// Function_Events is a helper struct that can hold either a String or String value +type Function_Events struct { + String *string + + StringArray *[]string +} + +func (r Function_Events) value() interface{} { + ret := []interface{}{} + + if r.String != nil { + ret = append(ret, r.String) + } + + if r.StringArray != nil { + ret = append(ret, r.StringArray) + } + + sort.Sort(utils.ByJSONLength(ret)) // Heuristic to select best attribute + if len(ret) > 0 { + return ret[0] + } + + return nil +} + +func (r Function_Events) MarshalJSON() ([]byte, error) { + return json.Marshal(r.value()) +} + +// Hook into the marshaller +func (r *Function_Events) UnmarshalJSON(b []byte) error { + + // Unmarshal into interface{} to check it's type + var typecheck interface{} + if err := json.Unmarshal(b, &typecheck); err != nil { + return err + } + + switch val := typecheck.(type) { + + case string: + r.String = &val + + case []string: + r.StringArray = &val + + case map[string]interface{}: + val = val // This ensures val is used to stop an error + + case []interface{}: + + json.Unmarshal(b, &r.StringArray) + + } + + return nil +} diff --git a/cloudformation/serverless/function_policies.go b/cloudformation/serverless/function_policies.go new file mode 100644 index 0000000000..e103598c51 --- /dev/null +++ b/cloudformation/serverless/function_policies.go @@ -0,0 +1,90 @@ +package serverless + +import ( + "encoding/json" + "sort" + + "github.com/awslabs/goformation/v3/cloudformation/utils" +) + +// Function_Policies is a helper struct that can hold either a String, String, IAMPolicyDocument, SAMPolicyTemplate, or IAMPolicyDocument value +type Function_Policies struct { + String *string + + StringArray *[]string + + IAMPolicyDocument *Function_IAMPolicyDocument + + IAMPolicyDocumentArray *[]Function_IAMPolicyDocument + SAMPolicyTemplateArray *[]Function_SAMPolicyTemplate +} + +func (r Function_Policies) value() interface{} { + ret := []interface{}{} + + if r.String != nil { + ret = append(ret, r.String) + } + + if r.StringArray != nil { + ret = append(ret, r.StringArray) + } + + if r.IAMPolicyDocument != nil { + ret = append(ret, *r.IAMPolicyDocument) + } + + if r.IAMPolicyDocumentArray != nil { + ret = append(ret, r.IAMPolicyDocumentArray) + } + + if r.SAMPolicyTemplateArray != nil { + ret = append(ret, r.SAMPolicyTemplateArray) + } + + sort.Sort(utils.ByJSONLength(ret)) // Heuristic to select best attribute + if len(ret) > 0 { + return ret[0] + } + + return nil +} + +func (r Function_Policies) MarshalJSON() ([]byte, error) { + return json.Marshal(r.value()) +} + +// Hook into the marshaller +func (r *Function_Policies) UnmarshalJSON(b []byte) error { + + // Unmarshal into interface{} to check it's type + var typecheck interface{} + if err := json.Unmarshal(b, &typecheck); err != nil { + return err + } + + switch val := typecheck.(type) { + + case string: + r.String = &val + + case []string: + r.StringArray = &val + + case map[string]interface{}: + val = val // This ensures val is used to stop an error + + json.Unmarshal(b, &r.IAMPolicyDocument) + + case []interface{}: + + json.Unmarshal(b, &r.StringArray) + + json.Unmarshal(b, &r.IAMPolicyDocumentArray) + + json.Unmarshal(b, &r.SAMPolicyTemplateArray) + + } + + return nil +} diff --git a/cloudformation/serverless/function_properties.go b/cloudformation/serverless/function_properties.go new file mode 100644 index 0000000000..200b4d9a58 --- /dev/null +++ b/cloudformation/serverless/function_properties.go @@ -0,0 +1,118 @@ +package serverless + +import ( + "encoding/json" + "sort" + + "github.com/awslabs/goformation/v3/cloudformation/utils" +) + +// Function_Properties is a helper struct that can hold either a S3Event, SNSEvent, SQSEvent, KinesisEvent, DynamoDBEvent, ApiEvent, ScheduleEvent, CloudWatchEventEvent, IoTRuleEvent, or AlexaSkillEvent value +type Function_Properties struct { + S3Event *Function_S3Event + SNSEvent *Function_SNSEvent + SQSEvent *Function_SQSEvent + KinesisEvent *Function_KinesisEvent + DynamoDBEvent *Function_DynamoDBEvent + ApiEvent *Function_ApiEvent + ScheduleEvent *Function_ScheduleEvent + CloudWatchEventEvent *Function_CloudWatchEventEvent + IoTRuleEvent *Function_IoTRuleEvent + AlexaSkillEvent *Function_AlexaSkillEvent +} + +func (r Function_Properties) value() interface{} { + ret := []interface{}{} + + if r.S3Event != nil { + ret = append(ret, *r.S3Event) + } + + if r.SNSEvent != nil { + ret = append(ret, *r.SNSEvent) + } + + if r.SQSEvent != nil { + ret = append(ret, *r.SQSEvent) + } + + if r.KinesisEvent != nil { + ret = append(ret, *r.KinesisEvent) + } + + if r.DynamoDBEvent != nil { + ret = append(ret, *r.DynamoDBEvent) + } + + if r.ApiEvent != nil { + ret = append(ret, *r.ApiEvent) + } + + if r.ScheduleEvent != nil { + ret = append(ret, *r.ScheduleEvent) + } + + if r.CloudWatchEventEvent != nil { + ret = append(ret, *r.CloudWatchEventEvent) + } + + if r.IoTRuleEvent != nil { + ret = append(ret, *r.IoTRuleEvent) + } + + if r.AlexaSkillEvent != nil { + ret = append(ret, *r.AlexaSkillEvent) + } + + sort.Sort(utils.ByJSONLength(ret)) // Heuristic to select best attribute + if len(ret) > 0 { + return ret[0] + } + + return nil +} + +func (r Function_Properties) MarshalJSON() ([]byte, error) { + return json.Marshal(r.value()) +} + +// Hook into the marshaller +func (r *Function_Properties) UnmarshalJSON(b []byte) error { + + // Unmarshal into interface{} to check it's type + var typecheck interface{} + if err := json.Unmarshal(b, &typecheck); err != nil { + return err + } + + switch val := typecheck.(type) { + + case map[string]interface{}: + val = val // This ensures val is used to stop an error + + json.Unmarshal(b, &r.S3Event) + + json.Unmarshal(b, &r.SNSEvent) + + json.Unmarshal(b, &r.SQSEvent) + + json.Unmarshal(b, &r.KinesisEvent) + + json.Unmarshal(b, &r.DynamoDBEvent) + + json.Unmarshal(b, &r.ApiEvent) + + json.Unmarshal(b, &r.ScheduleEvent) + + json.Unmarshal(b, &r.CloudWatchEventEvent) + + json.Unmarshal(b, &r.IoTRuleEvent) + + json.Unmarshal(b, &r.AlexaSkillEvent) + + case []interface{}: + + } + + return nil +} diff --git a/cloudformation/resources/aws-servicecatalog-acceptedportfolioshare.go b/cloudformation/servicecatalog/aws-servicecatalog-acceptedportfolioshare.go similarity index 76% rename from cloudformation/resources/aws-servicecatalog-acceptedportfolioshare.go rename to cloudformation/servicecatalog/aws-servicecatalog-acceptedportfolioshare.go index 89416510a0..5f33a9518f 100644 --- a/cloudformation/resources/aws-servicecatalog-acceptedportfolioshare.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-acceptedportfolioshare.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogAcceptedPortfolioShare AWS CloudFormation Resource (AWS::ServiceCatalog::AcceptedPortfolioShare) +// AcceptedPortfolioShare AWS CloudFormation Resource (AWS::ServiceCatalog::AcceptedPortfolioShare) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html -type AWSServiceCatalogAcceptedPortfolioShare struct { +type AcceptedPortfolioShare struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSServiceCatalogAcceptedPortfolioShare struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogAcceptedPortfolioShare) AWSCloudFormationType() string { +func (r *AcceptedPortfolioShare) AWSCloudFormationType() string { return "AWS::ServiceCatalog::AcceptedPortfolioShare" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogAcceptedPortfolioShare) DependsOn() []string { +func (r *AcceptedPortfolioShare) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogAcceptedPortfolioShare) SetDependsOn(dependencies []string) { +func (r *AcceptedPortfolioShare) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogAcceptedPortfolioShare) Metadata() map[string]interface{} { +func (r *AcceptedPortfolioShare) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogAcceptedPortfolioShare) SetMetadata(metadata map[string]interface{}) { +func (r *AcceptedPortfolioShare) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogAcceptedPortfolioShare) DeletionPolicy() policies.DeletionPolicy { +func (r *AcceptedPortfolioShare) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogAcceptedPortfolioShare) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AcceptedPortfolioShare) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogAcceptedPortfolioShare) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogAcceptedPortfolioShare +func (r AcceptedPortfolioShare) MarshalJSON() ([]byte, error) { + type Properties AcceptedPortfolioShare return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSServiceCatalogAcceptedPortfolioShare) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogAcceptedPortfolioShare) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogAcceptedPortfolioShare +func (r *AcceptedPortfolioShare) UnmarshalJSON(b []byte) error { + type Properties AcceptedPortfolioShare res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSServiceCatalogAcceptedPortfolioShare) UnmarshalJSON(b []byte) error // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogAcceptedPortfolioShare(*res.Properties) + *r = AcceptedPortfolioShare(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-cloudformationproduct.go b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct.go similarity index 81% rename from cloudformation/resources/aws-servicecatalog-cloudformationproduct.go rename to cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct.go index ef4f8a9a43..55ce5dee0d 100644 --- a/cloudformation/resources/aws-servicecatalog-cloudformationproduct.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct.go @@ -1,15 +1,17 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSServiceCatalogCloudFormationProduct AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProduct) +// CloudFormationProduct AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProduct) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html -type AWSServiceCatalogCloudFormationProduct struct { +type CloudFormationProduct struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSServiceCatalogCloudFormationProduct struct { // ProvisioningArtifactParameters AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactparameters - ProvisioningArtifactParameters []AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties `json:"ProvisioningArtifactParameters,omitempty"` + ProvisioningArtifactParameters []CloudFormationProduct_ProvisioningArtifactProperties `json:"ProvisioningArtifactParameters,omitempty"` // SupportDescription AWS CloudFormation Property // Required: false @@ -59,7 +61,7 @@ type AWSServiceCatalogCloudFormationProduct struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -72,50 +74,50 @@ type AWSServiceCatalogCloudFormationProduct struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogCloudFormationProduct) AWSCloudFormationType() string { +func (r *CloudFormationProduct) AWSCloudFormationType() string { return "AWS::ServiceCatalog::CloudFormationProduct" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProduct) DependsOn() []string { +func (r *CloudFormationProduct) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProduct) SetDependsOn(dependencies []string) { +func (r *CloudFormationProduct) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProduct) Metadata() map[string]interface{} { +func (r *CloudFormationProduct) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProduct) SetMetadata(metadata map[string]interface{}) { +func (r *CloudFormationProduct) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProduct) DeletionPolicy() policies.DeletionPolicy { +func (r *CloudFormationProduct) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProduct) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CloudFormationProduct) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogCloudFormationProduct) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogCloudFormationProduct +func (r CloudFormationProduct) MarshalJSON() ([]byte, error) { + type Properties CloudFormationProduct return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +135,8 @@ func (r AWSServiceCatalogCloudFormationProduct) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogCloudFormationProduct) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogCloudFormationProduct +func (r *CloudFormationProduct) UnmarshalJSON(b []byte) error { + type Properties CloudFormationProduct res := &struct { Type string Properties *Properties @@ -153,7 +155,7 @@ func (r *AWSServiceCatalogCloudFormationProduct) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogCloudFormationProduct(*res.Properties) + *r = CloudFormationProduct(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go new file mode 100644 index 0000000000..bf9c6ca740 --- /dev/null +++ b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go @@ -0,0 +1,80 @@ +package servicecatalog + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// CloudFormationProduct_ProvisioningArtifactProperties AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProduct.ProvisioningArtifactProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html +type CloudFormationProduct_ProvisioningArtifactProperties struct { + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-description + Description string `json:"Description,omitempty"` + + // DisableTemplateValidation AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-disabletemplatevalidation + DisableTemplateValidation bool `json:"DisableTemplateValidation,omitempty"` + + // Info AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-info + Info interface{} `json:"Info,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *CloudFormationProduct_ProvisioningArtifactProperties) AWSCloudFormationType() string { + return "AWS::ServiceCatalog::CloudFormationProduct.ProvisioningArtifactProperties" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CloudFormationProduct_ProvisioningArtifactProperties) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CloudFormationProduct_ProvisioningArtifactProperties) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CloudFormationProduct_ProvisioningArtifactProperties) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CloudFormationProduct_ProvisioningArtifactProperties) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CloudFormationProduct_ProvisioningArtifactProperties) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CloudFormationProduct_ProvisioningArtifactProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct.go b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct.go similarity index 80% rename from cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct.go rename to cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct.go index 4abb34e9aa..e7168b4e29 100644 --- a/cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct.go @@ -1,15 +1,17 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSServiceCatalogCloudFormationProvisionedProduct AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProvisionedProduct) +// CloudFormationProvisionedProduct AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProvisionedProduct) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html -type AWSServiceCatalogCloudFormationProvisionedProduct struct { +type CloudFormationProvisionedProduct struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -54,17 +56,17 @@ type AWSServiceCatalogCloudFormationProvisionedProduct struct { // ProvisioningParameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameters - ProvisioningParameters []AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter `json:"ProvisioningParameters,omitempty"` + ProvisioningParameters []CloudFormationProvisionedProduct_ProvisioningParameter `json:"ProvisioningParameters,omitempty"` // ProvisioningPreferences AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences - ProvisioningPreferences *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences `json:"ProvisioningPreferences,omitempty"` + ProvisioningPreferences *CloudFormationProvisionedProduct_ProvisioningPreferences `json:"ProvisioningPreferences,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -77,50 +79,50 @@ type AWSServiceCatalogCloudFormationProvisionedProduct struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogCloudFormationProvisionedProduct) AWSCloudFormationType() string { +func (r *CloudFormationProvisionedProduct) AWSCloudFormationType() string { return "AWS::ServiceCatalog::CloudFormationProvisionedProduct" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct) DependsOn() []string { +func (r *CloudFormationProvisionedProduct) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct) SetDependsOn(dependencies []string) { +func (r *CloudFormationProvisionedProduct) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct) Metadata() map[string]interface{} { +func (r *CloudFormationProvisionedProduct) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct) SetMetadata(metadata map[string]interface{}) { +func (r *CloudFormationProvisionedProduct) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct) DeletionPolicy() policies.DeletionPolicy { +func (r *CloudFormationProvisionedProduct) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CloudFormationProvisionedProduct) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogCloudFormationProvisionedProduct) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogCloudFormationProvisionedProduct +func (r CloudFormationProvisionedProduct) MarshalJSON() ([]byte, error) { + type Properties CloudFormationProvisionedProduct return json.Marshal(&struct { Type string Properties Properties @@ -138,8 +140,8 @@ func (r AWSServiceCatalogCloudFormationProvisionedProduct) MarshalJSON() ([]byte // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogCloudFormationProvisionedProduct) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogCloudFormationProvisionedProduct +func (r *CloudFormationProvisionedProduct) UnmarshalJSON(b []byte) error { + type Properties CloudFormationProvisionedProduct res := &struct { Type string Properties *Properties @@ -158,7 +160,7 @@ func (r *AWSServiceCatalogCloudFormationProvisionedProduct) UnmarshalJSON(b []by // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogCloudFormationProvisionedProduct(*res.Properties) + *r = CloudFormationProvisionedProduct(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go new file mode 100644 index 0000000000..cb3c9729aa --- /dev/null +++ b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go @@ -0,0 +1,70 @@ +package servicecatalog + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// CloudFormationProvisionedProduct_ProvisioningParameter AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html +type CloudFormationProvisionedProduct_ProvisioningParameter struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *CloudFormationProvisionedProduct_ProvisioningParameter) AWSCloudFormationType() string { + return "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CloudFormationProvisionedProduct_ProvisioningParameter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *CloudFormationProvisionedProduct_ProvisioningParameter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CloudFormationProvisionedProduct_ProvisioningParameter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *CloudFormationProvisionedProduct_ProvisioningParameter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CloudFormationProvisionedProduct_ProvisioningParameter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *CloudFormationProvisionedProduct_ProvisioningParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningpreferences.go b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningpreferences.go similarity index 79% rename from cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningpreferences.go rename to cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningpreferences.go index 4e0cb92f05..b330a9923d 100644 --- a/cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningpreferences.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningpreferences.go @@ -1,10 +1,12 @@ -package resources +package servicecatalog -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences) +// CloudFormationProvisionedProduct_ProvisioningPreferences AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html -type AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences struct { +type CloudFormationProvisionedProduct_ProvisioningPreferences struct { // StackSetAccounts AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences s } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences) AWSCloudFormationType() string { +func (r *CloudFormationProvisionedProduct_ProvisioningPreferences) AWSCloudFormationType() string { return "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences) DependsOn() []string { +func (r *CloudFormationProvisionedProduct_ProvisioningPreferences) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences) SetDependsOn(dependencies []string) { +func (r *CloudFormationProvisionedProduct_ProvisioningPreferences) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences) Metadata() map[string]interface{} { +func (r *CloudFormationProvisionedProduct_ProvisioningPreferences) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences) SetMetadata(metadata map[string]interface{}) { +func (r *CloudFormationProvisionedProduct_ProvisioningPreferences) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences) DeletionPolicy() policies.DeletionPolicy { +func (r *CloudFormationProvisionedProduct_ProvisioningPreferences) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningPreferences) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *CloudFormationProvisionedProduct_ProvisioningPreferences) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-servicecatalog-launchnotificationconstraint.go b/cloudformation/servicecatalog/aws-servicecatalog-launchnotificationconstraint.go similarity index 79% rename from cloudformation/resources/aws-servicecatalog-launchnotificationconstraint.go rename to cloudformation/servicecatalog/aws-servicecatalog-launchnotificationconstraint.go index e7b0bf6005..55852c83a1 100644 --- a/cloudformation/resources/aws-servicecatalog-launchnotificationconstraint.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-launchnotificationconstraint.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogLaunchNotificationConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::LaunchNotificationConstraint) +// LaunchNotificationConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::LaunchNotificationConstraint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html -type AWSServiceCatalogLaunchNotificationConstraint struct { +type LaunchNotificationConstraint struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSServiceCatalogLaunchNotificationConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogLaunchNotificationConstraint) AWSCloudFormationType() string { +func (r *LaunchNotificationConstraint) AWSCloudFormationType() string { return "AWS::ServiceCatalog::LaunchNotificationConstraint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogLaunchNotificationConstraint) DependsOn() []string { +func (r *LaunchNotificationConstraint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogLaunchNotificationConstraint) SetDependsOn(dependencies []string) { +func (r *LaunchNotificationConstraint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogLaunchNotificationConstraint) Metadata() map[string]interface{} { +func (r *LaunchNotificationConstraint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogLaunchNotificationConstraint) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchNotificationConstraint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogLaunchNotificationConstraint) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchNotificationConstraint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogLaunchNotificationConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchNotificationConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogLaunchNotificationConstraint) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogLaunchNotificationConstraint +func (r LaunchNotificationConstraint) MarshalJSON() ([]byte, error) { + type Properties LaunchNotificationConstraint return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSServiceCatalogLaunchNotificationConstraint) MarshalJSON() ([]byte, er // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogLaunchNotificationConstraint) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogLaunchNotificationConstraint +func (r *LaunchNotificationConstraint) UnmarshalJSON(b []byte) error { + type Properties LaunchNotificationConstraint res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSServiceCatalogLaunchNotificationConstraint) UnmarshalJSON(b []byte) // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogLaunchNotificationConstraint(*res.Properties) + *r = LaunchNotificationConstraint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-launchroleconstraint.go b/cloudformation/servicecatalog/aws-servicecatalog-launchroleconstraint.go similarity index 80% rename from cloudformation/resources/aws-servicecatalog-launchroleconstraint.go rename to cloudformation/servicecatalog/aws-servicecatalog-launchroleconstraint.go index 704bc91646..f2dd417dc8 100644 --- a/cloudformation/resources/aws-servicecatalog-launchroleconstraint.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-launchroleconstraint.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogLaunchRoleConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::LaunchRoleConstraint) +// LaunchRoleConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::LaunchRoleConstraint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html -type AWSServiceCatalogLaunchRoleConstraint struct { +type LaunchRoleConstraint struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSServiceCatalogLaunchRoleConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogLaunchRoleConstraint) AWSCloudFormationType() string { +func (r *LaunchRoleConstraint) AWSCloudFormationType() string { return "AWS::ServiceCatalog::LaunchRoleConstraint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogLaunchRoleConstraint) DependsOn() []string { +func (r *LaunchRoleConstraint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogLaunchRoleConstraint) SetDependsOn(dependencies []string) { +func (r *LaunchRoleConstraint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogLaunchRoleConstraint) Metadata() map[string]interface{} { +func (r *LaunchRoleConstraint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogLaunchRoleConstraint) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchRoleConstraint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogLaunchRoleConstraint) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchRoleConstraint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogLaunchRoleConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchRoleConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogLaunchRoleConstraint) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogLaunchRoleConstraint +func (r LaunchRoleConstraint) MarshalJSON() ([]byte, error) { + type Properties LaunchRoleConstraint return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSServiceCatalogLaunchRoleConstraint) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogLaunchRoleConstraint) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogLaunchRoleConstraint +func (r *LaunchRoleConstraint) UnmarshalJSON(b []byte) error { + type Properties LaunchRoleConstraint res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSServiceCatalogLaunchRoleConstraint) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogLaunchRoleConstraint(*res.Properties) + *r = LaunchRoleConstraint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-launchtemplateconstraint.go b/cloudformation/servicecatalog/aws-servicecatalog-launchtemplateconstraint.go similarity index 79% rename from cloudformation/resources/aws-servicecatalog-launchtemplateconstraint.go rename to cloudformation/servicecatalog/aws-servicecatalog-launchtemplateconstraint.go index dea22d7c04..de926f7d84 100644 --- a/cloudformation/resources/aws-servicecatalog-launchtemplateconstraint.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-launchtemplateconstraint.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogLaunchTemplateConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::LaunchTemplateConstraint) +// LaunchTemplateConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::LaunchTemplateConstraint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html -type AWSServiceCatalogLaunchTemplateConstraint struct { +type LaunchTemplateConstraint struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSServiceCatalogLaunchTemplateConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogLaunchTemplateConstraint) AWSCloudFormationType() string { +func (r *LaunchTemplateConstraint) AWSCloudFormationType() string { return "AWS::ServiceCatalog::LaunchTemplateConstraint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogLaunchTemplateConstraint) DependsOn() []string { +func (r *LaunchTemplateConstraint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogLaunchTemplateConstraint) SetDependsOn(dependencies []string) { +func (r *LaunchTemplateConstraint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogLaunchTemplateConstraint) Metadata() map[string]interface{} { +func (r *LaunchTemplateConstraint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogLaunchTemplateConstraint) SetMetadata(metadata map[string]interface{}) { +func (r *LaunchTemplateConstraint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogLaunchTemplateConstraint) DeletionPolicy() policies.DeletionPolicy { +func (r *LaunchTemplateConstraint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogLaunchTemplateConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplateConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogLaunchTemplateConstraint) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogLaunchTemplateConstraint +func (r LaunchTemplateConstraint) MarshalJSON() ([]byte, error) { + type Properties LaunchTemplateConstraint return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSServiceCatalogLaunchTemplateConstraint) MarshalJSON() ([]byte, error) // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogLaunchTemplateConstraint) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogLaunchTemplateConstraint +func (r *LaunchTemplateConstraint) UnmarshalJSON(b []byte) error { + type Properties LaunchTemplateConstraint res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSServiceCatalogLaunchTemplateConstraint) UnmarshalJSON(b []byte) erro // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogLaunchTemplateConstraint(*res.Properties) + *r = LaunchTemplateConstraint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-portfolio.go b/cloudformation/servicecatalog/aws-servicecatalog-portfolio.go similarity index 81% rename from cloudformation/resources/aws-servicecatalog-portfolio.go rename to cloudformation/servicecatalog/aws-servicecatalog-portfolio.go index 82acc1819d..9d43aa8fbd 100644 --- a/cloudformation/resources/aws-servicecatalog-portfolio.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-portfolio.go @@ -1,15 +1,17 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSServiceCatalogPortfolio AWS CloudFormation Resource (AWS::ServiceCatalog::Portfolio) +// Portfolio AWS CloudFormation Resource (AWS::ServiceCatalog::Portfolio) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html -type AWSServiceCatalogPortfolio struct { +type Portfolio struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -34,7 +36,7 @@ type AWSServiceCatalogPortfolio struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,50 +49,50 @@ type AWSServiceCatalogPortfolio struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogPortfolio) AWSCloudFormationType() string { +func (r *Portfolio) AWSCloudFormationType() string { return "AWS::ServiceCatalog::Portfolio" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogPortfolio) DependsOn() []string { +func (r *Portfolio) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogPortfolio) SetDependsOn(dependencies []string) { +func (r *Portfolio) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogPortfolio) Metadata() map[string]interface{} { +func (r *Portfolio) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogPortfolio) SetMetadata(metadata map[string]interface{}) { +func (r *Portfolio) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogPortfolio) DeletionPolicy() policies.DeletionPolicy { +func (r *Portfolio) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogPortfolio) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Portfolio) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogPortfolio) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogPortfolio +func (r Portfolio) MarshalJSON() ([]byte, error) { + type Properties Portfolio return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +110,8 @@ func (r AWSServiceCatalogPortfolio) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogPortfolio) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogPortfolio +func (r *Portfolio) UnmarshalJSON(b []byte) error { + type Properties Portfolio res := &struct { Type string Properties *Properties @@ -128,7 +130,7 @@ func (r *AWSServiceCatalogPortfolio) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogPortfolio(*res.Properties) + *r = Portfolio(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-portfolioprincipalassociation.go b/cloudformation/servicecatalog/aws-servicecatalog-portfolioprincipalassociation.go similarity index 77% rename from cloudformation/resources/aws-servicecatalog-portfolioprincipalassociation.go rename to cloudformation/servicecatalog/aws-servicecatalog-portfolioprincipalassociation.go index f1cf6e13c9..048e81c7b6 100644 --- a/cloudformation/resources/aws-servicecatalog-portfolioprincipalassociation.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-portfolioprincipalassociation.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogPortfolioPrincipalAssociation AWS CloudFormation Resource (AWS::ServiceCatalog::PortfolioPrincipalAssociation) +// PortfolioPrincipalAssociation AWS CloudFormation Resource (AWS::ServiceCatalog::PortfolioPrincipalAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html -type AWSServiceCatalogPortfolioPrincipalAssociation struct { +type PortfolioPrincipalAssociation struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSServiceCatalogPortfolioPrincipalAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogPortfolioPrincipalAssociation) AWSCloudFormationType() string { +func (r *PortfolioPrincipalAssociation) AWSCloudFormationType() string { return "AWS::ServiceCatalog::PortfolioPrincipalAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogPortfolioPrincipalAssociation) DependsOn() []string { +func (r *PortfolioPrincipalAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogPortfolioPrincipalAssociation) SetDependsOn(dependencies []string) { +func (r *PortfolioPrincipalAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogPortfolioPrincipalAssociation) Metadata() map[string]interface{} { +func (r *PortfolioPrincipalAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogPortfolioPrincipalAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *PortfolioPrincipalAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogPortfolioPrincipalAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *PortfolioPrincipalAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogPortfolioPrincipalAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PortfolioPrincipalAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogPortfolioPrincipalAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogPortfolioPrincipalAssociation +func (r PortfolioPrincipalAssociation) MarshalJSON() ([]byte, error) { + type Properties PortfolioPrincipalAssociation return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSServiceCatalogPortfolioPrincipalAssociation) MarshalJSON() ([]byte, e // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogPortfolioPrincipalAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogPortfolioPrincipalAssociation +func (r *PortfolioPrincipalAssociation) UnmarshalJSON(b []byte) error { + type Properties PortfolioPrincipalAssociation res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSServiceCatalogPortfolioPrincipalAssociation) UnmarshalJSON(b []byte) // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogPortfolioPrincipalAssociation(*res.Properties) + *r = PortfolioPrincipalAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-portfolioproductassociation.go b/cloudformation/servicecatalog/aws-servicecatalog-portfolioproductassociation.go similarity index 78% rename from cloudformation/resources/aws-servicecatalog-portfolioproductassociation.go rename to cloudformation/servicecatalog/aws-servicecatalog-portfolioproductassociation.go index 70dc9e3c90..c15db2ddba 100644 --- a/cloudformation/resources/aws-servicecatalog-portfolioproductassociation.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-portfolioproductassociation.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogPortfolioProductAssociation AWS CloudFormation Resource (AWS::ServiceCatalog::PortfolioProductAssociation) +// PortfolioProductAssociation AWS CloudFormation Resource (AWS::ServiceCatalog::PortfolioProductAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html -type AWSServiceCatalogPortfolioProductAssociation struct { +type PortfolioProductAssociation struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSServiceCatalogPortfolioProductAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogPortfolioProductAssociation) AWSCloudFormationType() string { +func (r *PortfolioProductAssociation) AWSCloudFormationType() string { return "AWS::ServiceCatalog::PortfolioProductAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogPortfolioProductAssociation) DependsOn() []string { +func (r *PortfolioProductAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogPortfolioProductAssociation) SetDependsOn(dependencies []string) { +func (r *PortfolioProductAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogPortfolioProductAssociation) Metadata() map[string]interface{} { +func (r *PortfolioProductAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogPortfolioProductAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *PortfolioProductAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogPortfolioProductAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *PortfolioProductAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogPortfolioProductAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PortfolioProductAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogPortfolioProductAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogPortfolioProductAssociation +func (r PortfolioProductAssociation) MarshalJSON() ([]byte, error) { + type Properties PortfolioProductAssociation return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSServiceCatalogPortfolioProductAssociation) MarshalJSON() ([]byte, err // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogPortfolioProductAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogPortfolioProductAssociation +func (r *PortfolioProductAssociation) UnmarshalJSON(b []byte) error { + type Properties PortfolioProductAssociation res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSServiceCatalogPortfolioProductAssociation) UnmarshalJSON(b []byte) e // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogPortfolioProductAssociation(*res.Properties) + *r = PortfolioProductAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-portfolioshare.go b/cloudformation/servicecatalog/aws-servicecatalog-portfolioshare.go similarity index 79% rename from cloudformation/resources/aws-servicecatalog-portfolioshare.go rename to cloudformation/servicecatalog/aws-servicecatalog-portfolioshare.go index 8aef76f1b7..937050e564 100644 --- a/cloudformation/resources/aws-servicecatalog-portfolioshare.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-portfolioshare.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogPortfolioShare AWS CloudFormation Resource (AWS::ServiceCatalog::PortfolioShare) +// PortfolioShare AWS CloudFormation Resource (AWS::ServiceCatalog::PortfolioShare) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html -type AWSServiceCatalogPortfolioShare struct { +type PortfolioShare struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSServiceCatalogPortfolioShare struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogPortfolioShare) AWSCloudFormationType() string { +func (r *PortfolioShare) AWSCloudFormationType() string { return "AWS::ServiceCatalog::PortfolioShare" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogPortfolioShare) DependsOn() []string { +func (r *PortfolioShare) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogPortfolioShare) SetDependsOn(dependencies []string) { +func (r *PortfolioShare) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogPortfolioShare) Metadata() map[string]interface{} { +func (r *PortfolioShare) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogPortfolioShare) SetMetadata(metadata map[string]interface{}) { +func (r *PortfolioShare) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogPortfolioShare) DeletionPolicy() policies.DeletionPolicy { +func (r *PortfolioShare) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogPortfolioShare) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PortfolioShare) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogPortfolioShare) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogPortfolioShare +func (r PortfolioShare) MarshalJSON() ([]byte, error) { + type Properties PortfolioShare return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSServiceCatalogPortfolioShare) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogPortfolioShare) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogPortfolioShare +func (r *PortfolioShare) UnmarshalJSON(b []byte) error { + type Properties PortfolioShare res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSServiceCatalogPortfolioShare) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogPortfolioShare(*res.Properties) + *r = PortfolioShare(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-resourceupdateconstraint.go b/cloudformation/servicecatalog/aws-servicecatalog-resourceupdateconstraint.go similarity index 79% rename from cloudformation/resources/aws-servicecatalog-resourceupdateconstraint.go rename to cloudformation/servicecatalog/aws-servicecatalog-resourceupdateconstraint.go index 054509f530..737ac90db6 100644 --- a/cloudformation/resources/aws-servicecatalog-resourceupdateconstraint.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-resourceupdateconstraint.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogResourceUpdateConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::ResourceUpdateConstraint) +// ResourceUpdateConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::ResourceUpdateConstraint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html -type AWSServiceCatalogResourceUpdateConstraint struct { +type ResourceUpdateConstraint struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -47,50 +48,50 @@ type AWSServiceCatalogResourceUpdateConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogResourceUpdateConstraint) AWSCloudFormationType() string { +func (r *ResourceUpdateConstraint) AWSCloudFormationType() string { return "AWS::ServiceCatalog::ResourceUpdateConstraint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogResourceUpdateConstraint) DependsOn() []string { +func (r *ResourceUpdateConstraint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogResourceUpdateConstraint) SetDependsOn(dependencies []string) { +func (r *ResourceUpdateConstraint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogResourceUpdateConstraint) Metadata() map[string]interface{} { +func (r *ResourceUpdateConstraint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogResourceUpdateConstraint) SetMetadata(metadata map[string]interface{}) { +func (r *ResourceUpdateConstraint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogResourceUpdateConstraint) DeletionPolicy() policies.DeletionPolicy { +func (r *ResourceUpdateConstraint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogResourceUpdateConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceUpdateConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogResourceUpdateConstraint) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogResourceUpdateConstraint +func (r ResourceUpdateConstraint) MarshalJSON() ([]byte, error) { + type Properties ResourceUpdateConstraint return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSServiceCatalogResourceUpdateConstraint) MarshalJSON() ([]byte, error) // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogResourceUpdateConstraint) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogResourceUpdateConstraint +func (r *ResourceUpdateConstraint) UnmarshalJSON(b []byte) error { + type Properties ResourceUpdateConstraint res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSServiceCatalogResourceUpdateConstraint) UnmarshalJSON(b []byte) erro // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogResourceUpdateConstraint(*res.Properties) + *r = ResourceUpdateConstraint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-stacksetconstraint.go b/cloudformation/servicecatalog/aws-servicecatalog-stacksetconstraint.go similarity index 83% rename from cloudformation/resources/aws-servicecatalog-stacksetconstraint.go rename to cloudformation/servicecatalog/aws-servicecatalog-stacksetconstraint.go index d25f73bec0..a6ded635d5 100644 --- a/cloudformation/resources/aws-servicecatalog-stacksetconstraint.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-stacksetconstraint.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogStackSetConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::StackSetConstraint) +// StackSetConstraint AWS CloudFormation Resource (AWS::ServiceCatalog::StackSetConstraint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html -type AWSServiceCatalogStackSetConstraint struct { +type StackSetConstraint struct { // AcceptLanguage AWS CloudFormation Property // Required: false @@ -67,50 +68,50 @@ type AWSServiceCatalogStackSetConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogStackSetConstraint) AWSCloudFormationType() string { +func (r *StackSetConstraint) AWSCloudFormationType() string { return "AWS::ServiceCatalog::StackSetConstraint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogStackSetConstraint) DependsOn() []string { +func (r *StackSetConstraint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogStackSetConstraint) SetDependsOn(dependencies []string) { +func (r *StackSetConstraint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogStackSetConstraint) Metadata() map[string]interface{} { +func (r *StackSetConstraint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogStackSetConstraint) SetMetadata(metadata map[string]interface{}) { +func (r *StackSetConstraint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogStackSetConstraint) DeletionPolicy() policies.DeletionPolicy { +func (r *StackSetConstraint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogStackSetConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StackSetConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogStackSetConstraint) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogStackSetConstraint +func (r StackSetConstraint) MarshalJSON() ([]byte, error) { + type Properties StackSetConstraint return json.Marshal(&struct { Type string Properties Properties @@ -128,8 +129,8 @@ func (r AWSServiceCatalogStackSetConstraint) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogStackSetConstraint) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogStackSetConstraint +func (r *StackSetConstraint) UnmarshalJSON(b []byte) error { + type Properties StackSetConstraint res := &struct { Type string Properties *Properties @@ -148,7 +149,7 @@ func (r *AWSServiceCatalogStackSetConstraint) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogStackSetConstraint(*res.Properties) + *r = StackSetConstraint(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-tagoption.go b/cloudformation/servicecatalog/aws-servicecatalog-tagoption.go similarity index 79% rename from cloudformation/resources/aws-servicecatalog-tagoption.go rename to cloudformation/servicecatalog/aws-servicecatalog-tagoption.go index a3a434037f..adbba6a328 100644 --- a/cloudformation/resources/aws-servicecatalog-tagoption.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-tagoption.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogTagOption AWS CloudFormation Resource (AWS::ServiceCatalog::TagOption) +// TagOption AWS CloudFormation Resource (AWS::ServiceCatalog::TagOption) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html -type AWSServiceCatalogTagOption struct { +type TagOption struct { // Active AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSServiceCatalogTagOption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogTagOption) AWSCloudFormationType() string { +func (r *TagOption) AWSCloudFormationType() string { return "AWS::ServiceCatalog::TagOption" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogTagOption) DependsOn() []string { +func (r *TagOption) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogTagOption) SetDependsOn(dependencies []string) { +func (r *TagOption) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogTagOption) Metadata() map[string]interface{} { +func (r *TagOption) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogTagOption) SetMetadata(metadata map[string]interface{}) { +func (r *TagOption) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogTagOption) DeletionPolicy() policies.DeletionPolicy { +func (r *TagOption) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogTagOption) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TagOption) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogTagOption) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogTagOption +func (r TagOption) MarshalJSON() ([]byte, error) { + type Properties TagOption return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSServiceCatalogTagOption) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogTagOption) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogTagOption +func (r *TagOption) UnmarshalJSON(b []byte) error { + type Properties TagOption res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSServiceCatalogTagOption) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogTagOption(*res.Properties) + *r = TagOption(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicecatalog-tagoptionassociation.go b/cloudformation/servicecatalog/aws-servicecatalog-tagoptionassociation.go similarity index 76% rename from cloudformation/resources/aws-servicecatalog-tagoptionassociation.go rename to cloudformation/servicecatalog/aws-servicecatalog-tagoptionassociation.go index edcc199d5b..ba53056d03 100644 --- a/cloudformation/resources/aws-servicecatalog-tagoptionassociation.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-tagoptionassociation.go @@ -1,15 +1,16 @@ -package resources +package servicecatalog import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceCatalogTagOptionAssociation AWS CloudFormation Resource (AWS::ServiceCatalog::TagOptionAssociation) +// TagOptionAssociation AWS CloudFormation Resource (AWS::ServiceCatalog::TagOptionAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html -type AWSServiceCatalogTagOptionAssociation struct { +type TagOptionAssociation struct { // ResourceId AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSServiceCatalogTagOptionAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogTagOptionAssociation) AWSCloudFormationType() string { +func (r *TagOptionAssociation) AWSCloudFormationType() string { return "AWS::ServiceCatalog::TagOptionAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogTagOptionAssociation) DependsOn() []string { +func (r *TagOptionAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceCatalogTagOptionAssociation) SetDependsOn(dependencies []string) { +func (r *TagOptionAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogTagOptionAssociation) Metadata() map[string]interface{} { +func (r *TagOptionAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceCatalogTagOptionAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *TagOptionAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogTagOptionAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *TagOptionAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceCatalogTagOptionAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TagOptionAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceCatalogTagOptionAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSServiceCatalogTagOptionAssociation +func (r TagOptionAssociation) MarshalJSON() ([]byte, error) { + type Properties TagOptionAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSServiceCatalogTagOptionAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceCatalogTagOptionAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSServiceCatalogTagOptionAssociation +func (r *TagOptionAssociation) UnmarshalJSON(b []byte) error { + type Properties TagOptionAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSServiceCatalogTagOptionAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceCatalogTagOptionAssociation(*res.Properties) + *r = TagOptionAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicediscovery-httpnamespace.go b/cloudformation/servicediscovery/aws-servicediscovery-httpnamespace.go similarity index 77% rename from cloudformation/resources/aws-servicediscovery-httpnamespace.go rename to cloudformation/servicediscovery/aws-servicediscovery-httpnamespace.go index 650ddb99df..98e5445b5f 100644 --- a/cloudformation/resources/aws-servicediscovery-httpnamespace.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-httpnamespace.go @@ -1,15 +1,16 @@ -package resources +package servicediscovery import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceDiscoveryHttpNamespace AWS CloudFormation Resource (AWS::ServiceDiscovery::HttpNamespace) +// HttpNamespace AWS CloudFormation Resource (AWS::ServiceDiscovery::HttpNamespace) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html -type AWSServiceDiscoveryHttpNamespace struct { +type HttpNamespace struct { // Description AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSServiceDiscoveryHttpNamespace struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryHttpNamespace) AWSCloudFormationType() string { +func (r *HttpNamespace) AWSCloudFormationType() string { return "AWS::ServiceDiscovery::HttpNamespace" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryHttpNamespace) DependsOn() []string { +func (r *HttpNamespace) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryHttpNamespace) SetDependsOn(dependencies []string) { +func (r *HttpNamespace) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryHttpNamespace) Metadata() map[string]interface{} { +func (r *HttpNamespace) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryHttpNamespace) SetMetadata(metadata map[string]interface{}) { +func (r *HttpNamespace) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryHttpNamespace) DeletionPolicy() policies.DeletionPolicy { +func (r *HttpNamespace) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryHttpNamespace) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *HttpNamespace) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceDiscoveryHttpNamespace) MarshalJSON() ([]byte, error) { - type Properties AWSServiceDiscoveryHttpNamespace +func (r HttpNamespace) MarshalJSON() ([]byte, error) { + type Properties HttpNamespace return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSServiceDiscoveryHttpNamespace) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceDiscoveryHttpNamespace) UnmarshalJSON(b []byte) error { - type Properties AWSServiceDiscoveryHttpNamespace +func (r *HttpNamespace) UnmarshalJSON(b []byte) error { + type Properties HttpNamespace res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSServiceDiscoveryHttpNamespace) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceDiscoveryHttpNamespace(*res.Properties) + *r = HttpNamespace(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicediscovery-instance.go b/cloudformation/servicediscovery/aws-servicediscovery-instance.go similarity index 80% rename from cloudformation/resources/aws-servicediscovery-instance.go rename to cloudformation/servicediscovery/aws-servicediscovery-instance.go index e81a28d6d6..49a49d9d73 100644 --- a/cloudformation/resources/aws-servicediscovery-instance.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-instance.go @@ -1,15 +1,16 @@ -package resources +package servicediscovery import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceDiscoveryInstance AWS CloudFormation Resource (AWS::ServiceDiscovery::Instance) +// Instance AWS CloudFormation Resource (AWS::ServiceDiscovery::Instance) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html -type AWSServiceDiscoveryInstance struct { +type Instance struct { // InstanceAttributes AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSServiceDiscoveryInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryInstance) AWSCloudFormationType() string { +func (r *Instance) AWSCloudFormationType() string { return "AWS::ServiceDiscovery::Instance" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryInstance) DependsOn() []string { +func (r *Instance) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryInstance) SetDependsOn(dependencies []string) { +func (r *Instance) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryInstance) Metadata() map[string]interface{} { +func (r *Instance) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryInstance) SetMetadata(metadata map[string]interface{}) { +func (r *Instance) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryInstance) DeletionPolicy() policies.DeletionPolicy { +func (r *Instance) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceDiscoveryInstance) MarshalJSON() ([]byte, error) { - type Properties AWSServiceDiscoveryInstance +func (r Instance) MarshalJSON() ([]byte, error) { + type Properties Instance return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSServiceDiscoveryInstance) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceDiscoveryInstance) UnmarshalJSON(b []byte) error { - type Properties AWSServiceDiscoveryInstance +func (r *Instance) UnmarshalJSON(b []byte) error { + type Properties Instance res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSServiceDiscoveryInstance) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceDiscoveryInstance(*res.Properties) + *r = Instance(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicediscovery-privatednsnamespace.go b/cloudformation/servicediscovery/aws-servicediscovery-privatednsnamespace.go similarity index 77% rename from cloudformation/resources/aws-servicediscovery-privatednsnamespace.go rename to cloudformation/servicediscovery/aws-servicediscovery-privatednsnamespace.go index 6a81112b9f..8021c25f29 100644 --- a/cloudformation/resources/aws-servicediscovery-privatednsnamespace.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-privatednsnamespace.go @@ -1,15 +1,16 @@ -package resources +package servicediscovery import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceDiscoveryPrivateDnsNamespace AWS CloudFormation Resource (AWS::ServiceDiscovery::PrivateDnsNamespace) +// PrivateDnsNamespace AWS CloudFormation Resource (AWS::ServiceDiscovery::PrivateDnsNamespace) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html -type AWSServiceDiscoveryPrivateDnsNamespace struct { +type PrivateDnsNamespace struct { // Description AWS CloudFormation Property // Required: false @@ -37,50 +38,50 @@ type AWSServiceDiscoveryPrivateDnsNamespace struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryPrivateDnsNamespace) AWSCloudFormationType() string { +func (r *PrivateDnsNamespace) AWSCloudFormationType() string { return "AWS::ServiceDiscovery::PrivateDnsNamespace" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryPrivateDnsNamespace) DependsOn() []string { +func (r *PrivateDnsNamespace) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryPrivateDnsNamespace) SetDependsOn(dependencies []string) { +func (r *PrivateDnsNamespace) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryPrivateDnsNamespace) Metadata() map[string]interface{} { +func (r *PrivateDnsNamespace) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryPrivateDnsNamespace) SetMetadata(metadata map[string]interface{}) { +func (r *PrivateDnsNamespace) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryPrivateDnsNamespace) DeletionPolicy() policies.DeletionPolicy { +func (r *PrivateDnsNamespace) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryPrivateDnsNamespace) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PrivateDnsNamespace) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceDiscoveryPrivateDnsNamespace) MarshalJSON() ([]byte, error) { - type Properties AWSServiceDiscoveryPrivateDnsNamespace +func (r PrivateDnsNamespace) MarshalJSON() ([]byte, error) { + type Properties PrivateDnsNamespace return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSServiceDiscoveryPrivateDnsNamespace) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceDiscoveryPrivateDnsNamespace) UnmarshalJSON(b []byte) error { - type Properties AWSServiceDiscoveryPrivateDnsNamespace +func (r *PrivateDnsNamespace) UnmarshalJSON(b []byte) error { + type Properties PrivateDnsNamespace res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSServiceDiscoveryPrivateDnsNamespace) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceDiscoveryPrivateDnsNamespace(*res.Properties) + *r = PrivateDnsNamespace(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicediscovery-publicdnsnamespace.go b/cloudformation/servicediscovery/aws-servicediscovery-publicdnsnamespace.go similarity index 76% rename from cloudformation/resources/aws-servicediscovery-publicdnsnamespace.go rename to cloudformation/servicediscovery/aws-servicediscovery-publicdnsnamespace.go index 6ca69c1dfe..be141a860e 100644 --- a/cloudformation/resources/aws-servicediscovery-publicdnsnamespace.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-publicdnsnamespace.go @@ -1,15 +1,16 @@ -package resources +package servicediscovery import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceDiscoveryPublicDnsNamespace AWS CloudFormation Resource (AWS::ServiceDiscovery::PublicDnsNamespace) +// PublicDnsNamespace AWS CloudFormation Resource (AWS::ServiceDiscovery::PublicDnsNamespace) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html -type AWSServiceDiscoveryPublicDnsNamespace struct { +type PublicDnsNamespace struct { // Description AWS CloudFormation Property // Required: false @@ -32,50 +33,50 @@ type AWSServiceDiscoveryPublicDnsNamespace struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryPublicDnsNamespace) AWSCloudFormationType() string { +func (r *PublicDnsNamespace) AWSCloudFormationType() string { return "AWS::ServiceDiscovery::PublicDnsNamespace" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryPublicDnsNamespace) DependsOn() []string { +func (r *PublicDnsNamespace) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryPublicDnsNamespace) SetDependsOn(dependencies []string) { +func (r *PublicDnsNamespace) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryPublicDnsNamespace) Metadata() map[string]interface{} { +func (r *PublicDnsNamespace) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryPublicDnsNamespace) SetMetadata(metadata map[string]interface{}) { +func (r *PublicDnsNamespace) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryPublicDnsNamespace) DeletionPolicy() policies.DeletionPolicy { +func (r *PublicDnsNamespace) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryPublicDnsNamespace) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PublicDnsNamespace) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceDiscoveryPublicDnsNamespace) MarshalJSON() ([]byte, error) { - type Properties AWSServiceDiscoveryPublicDnsNamespace +func (r PublicDnsNamespace) MarshalJSON() ([]byte, error) { + type Properties PublicDnsNamespace return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSServiceDiscoveryPublicDnsNamespace) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceDiscoveryPublicDnsNamespace) UnmarshalJSON(b []byte) error { - type Properties AWSServiceDiscoveryPublicDnsNamespace +func (r *PublicDnsNamespace) UnmarshalJSON(b []byte) error { + type Properties PublicDnsNamespace res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSServiceDiscoveryPublicDnsNamespace) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceDiscoveryPublicDnsNamespace(*res.Properties) + *r = PublicDnsNamespace(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-servicediscovery-service.go b/cloudformation/servicediscovery/aws-servicediscovery-service.go similarity index 78% rename from cloudformation/resources/aws-servicediscovery-service.go rename to cloudformation/servicediscovery/aws-servicediscovery-service.go index 407c9bebe5..255eadac98 100644 --- a/cloudformation/resources/aws-servicediscovery-service.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-service.go @@ -1,15 +1,16 @@ -package resources +package servicediscovery import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSServiceDiscoveryService AWS CloudFormation Resource (AWS::ServiceDiscovery::Service) +// Service AWS CloudFormation Resource (AWS::ServiceDiscovery::Service) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html -type AWSServiceDiscoveryService struct { +type Service struct { // Description AWS CloudFormation Property // Required: false @@ -19,17 +20,17 @@ type AWSServiceDiscoveryService struct { // DnsConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-dnsconfig - DnsConfig *AWSServiceDiscoveryService_DnsConfig `json:"DnsConfig,omitempty"` + DnsConfig *Service_DnsConfig `json:"DnsConfig,omitempty"` // HealthCheckConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-healthcheckconfig - HealthCheckConfig *AWSServiceDiscoveryService_HealthCheckConfig `json:"HealthCheckConfig,omitempty"` + HealthCheckConfig *Service_HealthCheckConfig `json:"HealthCheckConfig,omitempty"` // HealthCheckCustomConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-healthcheckcustomconfig - HealthCheckCustomConfig *AWSServiceDiscoveryService_HealthCheckCustomConfig `json:"HealthCheckCustomConfig,omitempty"` + HealthCheckCustomConfig *Service_HealthCheckCustomConfig `json:"HealthCheckCustomConfig,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -52,50 +53,50 @@ type AWSServiceDiscoveryService struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService) AWSCloudFormationType() string { +func (r *Service) AWSCloudFormationType() string { return "AWS::ServiceDiscovery::Service" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService) DependsOn() []string { +func (r *Service) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSServiceDiscoveryService) SetDependsOn(dependencies []string) { +func (r *Service) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService) Metadata() map[string]interface{} { +func (r *Service) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSServiceDiscoveryService) SetMetadata(metadata map[string]interface{}) { +func (r *Service) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService) DeletionPolicy() policies.DeletionPolicy { +func (r *Service) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSServiceDiscoveryService) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSServiceDiscoveryService) MarshalJSON() ([]byte, error) { - type Properties AWSServiceDiscoveryService +func (r Service) MarshalJSON() ([]byte, error) { + type Properties Service return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSServiceDiscoveryService) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSServiceDiscoveryService) UnmarshalJSON(b []byte) error { - type Properties AWSServiceDiscoveryService +func (r *Service) UnmarshalJSON(b []byte) error { + type Properties Service res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSServiceDiscoveryService) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSServiceDiscoveryService(*res.Properties) + *r = Service(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/servicediscovery/aws-servicediscovery-service_dnsconfig.go b/cloudformation/servicediscovery/aws-servicediscovery-service_dnsconfig.go new file mode 100644 index 0000000000..c6197ee7b8 --- /dev/null +++ b/cloudformation/servicediscovery/aws-servicediscovery-service_dnsconfig.go @@ -0,0 +1,75 @@ +package servicediscovery + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Service_DnsConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.DnsConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html +type Service_DnsConfig struct { + + // DnsRecords AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-dnsrecords + DnsRecords []Service_DnsRecord `json:"DnsRecords,omitempty"` + + // NamespaceId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-namespaceid + NamespaceId string `json:"NamespaceId,omitempty"` + + // RoutingPolicy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-routingpolicy + RoutingPolicy string `json:"RoutingPolicy,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Service_DnsConfig) AWSCloudFormationType() string { + return "AWS::ServiceDiscovery::Service.DnsConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_DnsConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_DnsConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_DnsConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_DnsConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_DnsConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_DnsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/servicediscovery/aws-servicediscovery-service_dnsrecord.go b/cloudformation/servicediscovery/aws-servicediscovery-service_dnsrecord.go new file mode 100644 index 0000000000..85f2ea4c03 --- /dev/null +++ b/cloudformation/servicediscovery/aws-servicediscovery-service_dnsrecord.go @@ -0,0 +1,70 @@ +package servicediscovery + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Service_DnsRecord AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.DnsRecord) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html +type Service_DnsRecord struct { + + // TTL AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html#cfn-servicediscovery-service-dnsrecord-ttl + TTL float64 `json:"TTL"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html#cfn-servicediscovery-service-dnsrecord-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Service_DnsRecord) AWSCloudFormationType() string { + return "AWS::ServiceDiscovery::Service.DnsRecord" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_DnsRecord) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_DnsRecord) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_DnsRecord) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_DnsRecord) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_DnsRecord) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_DnsRecord) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckconfig.go b/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckconfig.go new file mode 100644 index 0000000000..5f0a3db634 --- /dev/null +++ b/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckconfig.go @@ -0,0 +1,75 @@ +package servicediscovery + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Service_HealthCheckConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.HealthCheckConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html +type Service_HealthCheckConfig struct { + + // FailureThreshold AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-failurethreshold + FailureThreshold float64 `json:"FailureThreshold,omitempty"` + + // ResourcePath AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-resourcepath + ResourcePath string `json:"ResourcePath,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Service_HealthCheckConfig) AWSCloudFormationType() string { + return "AWS::ServiceDiscovery::Service.HealthCheckConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_HealthCheckConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_HealthCheckConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_HealthCheckConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_HealthCheckConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_HealthCheckConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_HealthCheckConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckcustomconfig.go b/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckcustomconfig.go new file mode 100644 index 0000000000..e5ccf842ec --- /dev/null +++ b/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckcustomconfig.go @@ -0,0 +1,65 @@ +package servicediscovery + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Service_HealthCheckCustomConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.HealthCheckCustomConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckcustomconfig.html +type Service_HealthCheckCustomConfig struct { + + // FailureThreshold AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckcustomconfig.html#cfn-servicediscovery-service-healthcheckcustomconfig-failurethreshold + FailureThreshold float64 `json:"FailureThreshold,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Service_HealthCheckCustomConfig) AWSCloudFormationType() string { + return "AWS::ServiceDiscovery::Service.HealthCheckCustomConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_HealthCheckCustomConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Service_HealthCheckCustomConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_HealthCheckCustomConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Service_HealthCheckCustomConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_HealthCheckCustomConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Service_HealthCheckCustomConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ses-configurationset.go b/cloudformation/ses/aws-ses-configurationset.go similarity index 78% rename from cloudformation/resources/aws-ses-configurationset.go rename to cloudformation/ses/aws-ses-configurationset.go index 12e4d7ea0b..9d3cef563e 100644 --- a/cloudformation/resources/aws-ses-configurationset.go +++ b/cloudformation/ses/aws-ses-configurationset.go @@ -1,15 +1,16 @@ -package resources +package ses import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSESConfigurationSet AWS CloudFormation Resource (AWS::SES::ConfigurationSet) +// ConfigurationSet AWS CloudFormation Resource (AWS::SES::ConfigurationSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html -type AWSSESConfigurationSet struct { +type ConfigurationSet struct { // Name AWS CloudFormation Property // Required: false @@ -27,50 +28,50 @@ type AWSSESConfigurationSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSet) AWSCloudFormationType() string { +func (r *ConfigurationSet) AWSCloudFormationType() string { return "AWS::SES::ConfigurationSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSet) DependsOn() []string { +func (r *ConfigurationSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESConfigurationSet) SetDependsOn(dependencies []string) { +func (r *ConfigurationSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSet) Metadata() map[string]interface{} { +func (r *ConfigurationSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESConfigurationSet) SetMetadata(metadata map[string]interface{}) { +func (r *ConfigurationSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSet) DeletionPolicy() policies.DeletionPolicy { +func (r *ConfigurationSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESConfigurationSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSESConfigurationSet) MarshalJSON() ([]byte, error) { - type Properties AWSSESConfigurationSet +func (r ConfigurationSet) MarshalJSON() ([]byte, error) { + type Properties ConfigurationSet return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSSESConfigurationSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSESConfigurationSet) UnmarshalJSON(b []byte) error { - type Properties AWSSESConfigurationSet +func (r *ConfigurationSet) UnmarshalJSON(b []byte) error { + type Properties ConfigurationSet res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSSESConfigurationSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSESConfigurationSet(*res.Properties) + *r = ConfigurationSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ses/aws-ses-configurationseteventdestination.go b/cloudformation/ses/aws-ses-configurationseteventdestination.go new file mode 100644 index 0000000000..b691a9d771 --- /dev/null +++ b/cloudformation/ses/aws-ses-configurationseteventdestination.go @@ -0,0 +1,129 @@ +package ses + +import ( + "bytes" + "encoding/json" + "fmt" + + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html +type ConfigurationSetEventDestination struct { + + // ConfigurationSetName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-configurationsetname + ConfigurationSetName string `json:"ConfigurationSetName,omitempty"` + + // EventDestination AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-eventdestination + EventDestination *ConfigurationSetEventDestination_EventDestination `json:"EventDestination,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination) AWSCloudFormationType() string { + return "AWS::SES::ConfigurationSetEventDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { + type Properties ConfigurationSetEventDestination + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r._dependsOn, + Metadata: r._metadata, + DeletionPolicy: r._deletionPolicy, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *ConfigurationSetEventDestination) UnmarshalJSON(b []byte) error { + type Properties ConfigurationSetEventDestination + res := &struct { + Type string + Properties *Properties + DependsOn []string + Metadata map[string]interface{} + DeletionPolicy string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + fmt.Printf("ERROR: %s\n", err) + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = ConfigurationSetEventDestination(*res.Properties) + } + if res.DependsOn != nil { + r._dependsOn = res.DependsOn + } + if res.Metadata != nil { + r._metadata = res.Metadata + } + if res.DeletionPolicy != "" { + r._deletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + return nil +} diff --git a/cloudformation/ses/aws-ses-configurationseteventdestination_cloudwatchdestination.go b/cloudformation/ses/aws-ses-configurationseteventdestination_cloudwatchdestination.go new file mode 100644 index 0000000000..ac828110b4 --- /dev/null +++ b/cloudformation/ses/aws-ses-configurationseteventdestination_cloudwatchdestination.go @@ -0,0 +1,65 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_CloudWatchDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.CloudWatchDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-cloudwatchdestination.html +type ConfigurationSetEventDestination_CloudWatchDestination struct { + + // DimensionConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-cloudwatchdestination.html#cfn-ses-configurationseteventdestination-cloudwatchdestination-dimensionconfigurations + DimensionConfigurations []ConfigurationSetEventDestination_DimensionConfiguration `json:"DimensionConfigurations,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_CloudWatchDestination) AWSCloudFormationType() string { + return "AWS::SES::ConfigurationSetEventDestination.CloudWatchDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_CloudWatchDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ses/aws-ses-configurationseteventdestination_dimensionconfiguration.go b/cloudformation/ses/aws-ses-configurationseteventdestination_dimensionconfiguration.go new file mode 100644 index 0000000000..829f0c5212 --- /dev/null +++ b/cloudformation/ses/aws-ses-configurationseteventdestination_dimensionconfiguration.go @@ -0,0 +1,75 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_DimensionConfiguration AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.DimensionConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html +type ConfigurationSetEventDestination_DimensionConfiguration struct { + + // DefaultDimensionValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-defaultdimensionvalue + DefaultDimensionValue string `json:"DefaultDimensionValue,omitempty"` + + // DimensionName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-dimensionname + DimensionName string `json:"DimensionName,omitempty"` + + // DimensionValueSource AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-dimensionvaluesource + DimensionValueSource string `json:"DimensionValueSource,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_DimensionConfiguration) AWSCloudFormationType() string { + return "AWS::SES::ConfigurationSetEventDestination.DimensionConfiguration" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_DimensionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ses/aws-ses-configurationseteventdestination_eventdestination.go b/cloudformation/ses/aws-ses-configurationseteventdestination_eventdestination.go new file mode 100644 index 0000000000..2cf0a97604 --- /dev/null +++ b/cloudformation/ses/aws-ses-configurationseteventdestination_eventdestination.go @@ -0,0 +1,85 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_EventDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.EventDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html +type ConfigurationSetEventDestination_EventDestination struct { + + // CloudWatchDestination AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-cloudwatchdestination + CloudWatchDestination *ConfigurationSetEventDestination_CloudWatchDestination `json:"CloudWatchDestination,omitempty"` + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-enabled + Enabled bool `json:"Enabled,omitempty"` + + // KinesisFirehoseDestination AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-kinesisfirehosedestination + KinesisFirehoseDestination *ConfigurationSetEventDestination_KinesisFirehoseDestination `json:"KinesisFirehoseDestination,omitempty"` + + // MatchingEventTypes AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-matchingeventtypes + MatchingEventTypes []string `json:"MatchingEventTypes,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_EventDestination) AWSCloudFormationType() string { + return "AWS::SES::ConfigurationSetEventDestination.EventDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_EventDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_EventDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_EventDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_EventDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_EventDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_EventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ses/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go b/cloudformation/ses/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go new file mode 100644 index 0000000000..ecf88116a9 --- /dev/null +++ b/cloudformation/ses/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go @@ -0,0 +1,70 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ConfigurationSetEventDestination_KinesisFirehoseDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.KinesisFirehoseDestination) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html +type ConfigurationSetEventDestination_KinesisFirehoseDestination struct { + + // DeliveryStreamARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html#cfn-ses-configurationseteventdestination-kinesisfirehosedestination-deliverystreamarn + DeliveryStreamARN string `json:"DeliveryStreamARN,omitempty"` + + // IAMRoleARN AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html#cfn-ses-configurationseteventdestination-kinesisfirehosedestination-iamrolearn + IAMRoleARN string `json:"IAMRoleARN,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) AWSCloudFormationType() string { + return "AWS::SES::ConfigurationSetEventDestination.KinesisFirehoseDestination" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ses-receiptfilter.go b/cloudformation/ses/aws-ses-receiptfilter.go similarity index 78% rename from cloudformation/resources/aws-ses-receiptfilter.go rename to cloudformation/ses/aws-ses-receiptfilter.go index da5fb3f54b..d3eda7b86d 100644 --- a/cloudformation/resources/aws-ses-receiptfilter.go +++ b/cloudformation/ses/aws-ses-receiptfilter.go @@ -1,20 +1,21 @@ -package resources +package ses import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSESReceiptFilter AWS CloudFormation Resource (AWS::SES::ReceiptFilter) +// ReceiptFilter AWS CloudFormation Resource (AWS::SES::ReceiptFilter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptfilter.html -type AWSSESReceiptFilter struct { +type ReceiptFilter struct { // Filter AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptfilter.html#cfn-ses-receiptfilter-filter - Filter *AWSSESReceiptFilter_Filter `json:"Filter,omitempty"` + Filter *ReceiptFilter_Filter `json:"Filter,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,50 +28,50 @@ type AWSSESReceiptFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptFilter) AWSCloudFormationType() string { +func (r *ReceiptFilter) AWSCloudFormationType() string { return "AWS::SES::ReceiptFilter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptFilter) DependsOn() []string { +func (r *ReceiptFilter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptFilter) SetDependsOn(dependencies []string) { +func (r *ReceiptFilter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptFilter) Metadata() map[string]interface{} { +func (r *ReceiptFilter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptFilter) SetMetadata(metadata map[string]interface{}) { +func (r *ReceiptFilter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptFilter) DeletionPolicy() policies.DeletionPolicy { +func (r *ReceiptFilter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSESReceiptFilter) MarshalJSON() ([]byte, error) { - type Properties AWSSESReceiptFilter +func (r ReceiptFilter) MarshalJSON() ([]byte, error) { + type Properties ReceiptFilter return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSSESReceiptFilter) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSESReceiptFilter) UnmarshalJSON(b []byte) error { - type Properties AWSSESReceiptFilter +func (r *ReceiptFilter) UnmarshalJSON(b []byte) error { + type Properties ReceiptFilter res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSSESReceiptFilter) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSESReceiptFilter(*res.Properties) + *r = ReceiptFilter(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ses/aws-ses-receiptfilter_filter.go b/cloudformation/ses/aws-ses-receiptfilter_filter.go new file mode 100644 index 0000000000..a67a4404eb --- /dev/null +++ b/cloudformation/ses/aws-ses-receiptfilter_filter.go @@ -0,0 +1,70 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ReceiptFilter_Filter AWS CloudFormation Resource (AWS::SES::ReceiptFilter.Filter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html +type ReceiptFilter_Filter struct { + + // IpFilter AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html#cfn-ses-receiptfilter-filter-ipfilter + IpFilter *ReceiptFilter_IpFilter `json:"IpFilter,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html#cfn-ses-receiptfilter-filter-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ReceiptFilter_Filter) AWSCloudFormationType() string { + return "AWS::SES::ReceiptFilter.Filter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptFilter_Filter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptFilter_Filter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptFilter_Filter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptFilter_Filter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptFilter_Filter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptFilter_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ses/aws-ses-receiptfilter_ipfilter.go b/cloudformation/ses/aws-ses-receiptfilter_ipfilter.go new file mode 100644 index 0000000000..907117287b --- /dev/null +++ b/cloudformation/ses/aws-ses-receiptfilter_ipfilter.go @@ -0,0 +1,70 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ReceiptFilter_IpFilter AWS CloudFormation Resource (AWS::SES::ReceiptFilter.IpFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html +type ReceiptFilter_IpFilter struct { + + // Cidr AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html#cfn-ses-receiptfilter-ipfilter-cidr + Cidr string `json:"Cidr,omitempty"` + + // Policy AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html#cfn-ses-receiptfilter-ipfilter-policy + Policy string `json:"Policy,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ReceiptFilter_IpFilter) AWSCloudFormationType() string { + return "AWS::SES::ReceiptFilter.IpFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptFilter_IpFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptFilter_IpFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptFilter_IpFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptFilter_IpFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptFilter_IpFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptFilter_IpFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ses-receiptrule.go b/cloudformation/ses/aws-ses-receiptrule.go similarity index 80% rename from cloudformation/resources/aws-ses-receiptrule.go rename to cloudformation/ses/aws-ses-receiptrule.go index 05a67c77b6..b6c97a2254 100644 --- a/cloudformation/resources/aws-ses-receiptrule.go +++ b/cloudformation/ses/aws-ses-receiptrule.go @@ -1,15 +1,16 @@ -package resources +package ses import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSESReceiptRule AWS CloudFormation Resource (AWS::SES::ReceiptRule) +// ReceiptRule AWS CloudFormation Resource (AWS::SES::ReceiptRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html -type AWSSESReceiptRule struct { +type ReceiptRule struct { // After AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSSESReceiptRule struct { // Rule AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html#cfn-ses-receiptrule-rule - Rule *AWSSESReceiptRule_Rule `json:"Rule,omitempty"` + Rule *ReceiptRule_Rule `json:"Rule,omitempty"` // RuleSetName AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSSESReceiptRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule) AWSCloudFormationType() string { +func (r *ReceiptRule) AWSCloudFormationType() string { return "AWS::SES::ReceiptRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule) DependsOn() []string { +func (r *ReceiptRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule) SetDependsOn(dependencies []string) { +func (r *ReceiptRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule) Metadata() map[string]interface{} { +func (r *ReceiptRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule) SetMetadata(metadata map[string]interface{}) { +func (r *ReceiptRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule) DeletionPolicy() policies.DeletionPolicy { +func (r *ReceiptRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSESReceiptRule) MarshalJSON() ([]byte, error) { - type Properties AWSSESReceiptRule +func (r ReceiptRule) MarshalJSON() ([]byte, error) { + type Properties ReceiptRule return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSSESReceiptRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSESReceiptRule) UnmarshalJSON(b []byte) error { - type Properties AWSSESReceiptRule +func (r *ReceiptRule) UnmarshalJSON(b []byte) error { + type Properties ReceiptRule res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSSESReceiptRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSESReceiptRule(*res.Properties) + *r = ReceiptRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ses/aws-ses-receiptrule_action.go b/cloudformation/ses/aws-ses-receiptrule_action.go new file mode 100644 index 0000000000..5cfa32141e --- /dev/null +++ b/cloudformation/ses/aws-ses-receiptrule_action.go @@ -0,0 +1,95 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ReceiptRule_Action AWS CloudFormation Resource (AWS::SES::ReceiptRule.Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html +type ReceiptRule_Action struct { + + // AddHeaderAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-addheaderaction + AddHeaderAction *ReceiptRule_AddHeaderAction `json:"AddHeaderAction,omitempty"` + + // BounceAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-bounceaction + BounceAction *ReceiptRule_BounceAction `json:"BounceAction,omitempty"` + + // LambdaAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-lambdaaction + LambdaAction *ReceiptRule_LambdaAction `json:"LambdaAction,omitempty"` + + // S3Action AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-s3action + S3Action *ReceiptRule_S3Action `json:"S3Action,omitempty"` + + // SNSAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-snsaction + SNSAction *ReceiptRule_SNSAction `json:"SNSAction,omitempty"` + + // StopAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-stopaction + StopAction *ReceiptRule_StopAction `json:"StopAction,omitempty"` + + // WorkmailAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-workmailaction + WorkmailAction *ReceiptRule_WorkmailAction `json:"WorkmailAction,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ReceiptRule_Action) AWSCloudFormationType() string { + return "AWS::SES::ReceiptRule.Action" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptRule_Action) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptRule_Action) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptRule_Action) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptRule_Action) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptRule_Action) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ses/aws-ses-receiptrule_addheaderaction.go b/cloudformation/ses/aws-ses-receiptrule_addheaderaction.go new file mode 100644 index 0000000000..dffa74e4e2 --- /dev/null +++ b/cloudformation/ses/aws-ses-receiptrule_addheaderaction.go @@ -0,0 +1,70 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ReceiptRule_AddHeaderAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.AddHeaderAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html +type ReceiptRule_AddHeaderAction struct { + + // HeaderName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html#cfn-ses-receiptrule-addheaderaction-headername + HeaderName string `json:"HeaderName,omitempty"` + + // HeaderValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html#cfn-ses-receiptrule-addheaderaction-headervalue + HeaderValue string `json:"HeaderValue,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ReceiptRule_AddHeaderAction) AWSCloudFormationType() string { + return "AWS::SES::ReceiptRule.AddHeaderAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptRule_AddHeaderAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptRule_AddHeaderAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptRule_AddHeaderAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptRule_AddHeaderAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptRule_AddHeaderAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptRule_AddHeaderAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ses-receiptrule_bounceaction.go b/cloudformation/ses/aws-ses-receiptrule_bounceaction.go similarity index 79% rename from cloudformation/resources/aws-ses-receiptrule_bounceaction.go rename to cloudformation/ses/aws-ses-receiptrule_bounceaction.go index cb8a79917c..9c5aab9bc9 100644 --- a/cloudformation/resources/aws-ses-receiptrule_bounceaction.go +++ b/cloudformation/ses/aws-ses-receiptrule_bounceaction.go @@ -1,10 +1,12 @@ -package resources +package ses -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSESReceiptRule_BounceAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.BounceAction) +// ReceiptRule_BounceAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.BounceAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-bounceaction.html -type AWSSESReceiptRule_BounceAction struct { +type ReceiptRule_BounceAction struct { // Message AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSSESReceiptRule_BounceAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_BounceAction) AWSCloudFormationType() string { +func (r *ReceiptRule_BounceAction) AWSCloudFormationType() string { return "AWS::SES::ReceiptRule.BounceAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_BounceAction) DependsOn() []string { +func (r *ReceiptRule_BounceAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_BounceAction) SetDependsOn(dependencies []string) { +func (r *ReceiptRule_BounceAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_BounceAction) Metadata() map[string]interface{} { +func (r *ReceiptRule_BounceAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_BounceAction) SetMetadata(metadata map[string]interface{}) { +func (r *ReceiptRule_BounceAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_BounceAction) DeletionPolicy() policies.DeletionPolicy { +func (r *ReceiptRule_BounceAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_BounceAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRule_BounceAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-receiptrule_lambdaaction.go b/cloudformation/ses/aws-ses-receiptrule_lambdaaction.go similarity index 76% rename from cloudformation/resources/aws-ses-receiptrule_lambdaaction.go rename to cloudformation/ses/aws-ses-receiptrule_lambdaaction.go index 18ac681be7..c3c0317144 100644 --- a/cloudformation/resources/aws-ses-receiptrule_lambdaaction.go +++ b/cloudformation/ses/aws-ses-receiptrule_lambdaaction.go @@ -1,10 +1,12 @@ -package resources +package ses -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSESReceiptRule_LambdaAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.LambdaAction) +// ReceiptRule_LambdaAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.LambdaAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-lambdaaction.html -type AWSSESReceiptRule_LambdaAction struct { +type ReceiptRule_LambdaAction struct { // FunctionArn AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSSESReceiptRule_LambdaAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_LambdaAction) AWSCloudFormationType() string { +func (r *ReceiptRule_LambdaAction) AWSCloudFormationType() string { return "AWS::SES::ReceiptRule.LambdaAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_LambdaAction) DependsOn() []string { +func (r *ReceiptRule_LambdaAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_LambdaAction) SetDependsOn(dependencies []string) { +func (r *ReceiptRule_LambdaAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_LambdaAction) Metadata() map[string]interface{} { +func (r *ReceiptRule_LambdaAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_LambdaAction) SetMetadata(metadata map[string]interface{}) { +func (r *ReceiptRule_LambdaAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_LambdaAction) DeletionPolicy() policies.DeletionPolicy { +func (r *ReceiptRule_LambdaAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_LambdaAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRule_LambdaAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-receiptrule_rule.go b/cloudformation/ses/aws-ses-receiptrule_rule.go similarity index 80% rename from cloudformation/resources/aws-ses-receiptrule_rule.go rename to cloudformation/ses/aws-ses-receiptrule_rule.go index 5d068c0560..22ad4075cc 100644 --- a/cloudformation/resources/aws-ses-receiptrule_rule.go +++ b/cloudformation/ses/aws-ses-receiptrule_rule.go @@ -1,15 +1,17 @@ -package resources +package ses -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSESReceiptRule_Rule AWS CloudFormation Resource (AWS::SES::ReceiptRule.Rule) +// ReceiptRule_Rule AWS CloudFormation Resource (AWS::SES::ReceiptRule.Rule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html -type AWSSESReceiptRule_Rule struct { +type ReceiptRule_Rule struct { // Actions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html#cfn-ses-receiptrule-rule-actions - Actions []AWSSESReceiptRule_Action `json:"Actions,omitempty"` + Actions []ReceiptRule_Action `json:"Actions,omitempty"` // Enabled AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSSESReceiptRule_Rule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_Rule) AWSCloudFormationType() string { +func (r *ReceiptRule_Rule) AWSCloudFormationType() string { return "AWS::SES::ReceiptRule.Rule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_Rule) DependsOn() []string { +func (r *ReceiptRule_Rule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_Rule) SetDependsOn(dependencies []string) { +func (r *ReceiptRule_Rule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_Rule) Metadata() map[string]interface{} { +func (r *ReceiptRule_Rule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_Rule) SetMetadata(metadata map[string]interface{}) { +func (r *ReceiptRule_Rule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_Rule) DeletionPolicy() policies.DeletionPolicy { +func (r *ReceiptRule_Rule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRule_Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-receiptrule_s3action.go b/cloudformation/ses/aws-ses-receiptrule_s3action.go similarity index 79% rename from cloudformation/resources/aws-ses-receiptrule_s3action.go rename to cloudformation/ses/aws-ses-receiptrule_s3action.go index b0eb1f7471..5f0874a3be 100644 --- a/cloudformation/resources/aws-ses-receiptrule_s3action.go +++ b/cloudformation/ses/aws-ses-receiptrule_s3action.go @@ -1,10 +1,12 @@ -package resources +package ses -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSESReceiptRule_S3Action AWS CloudFormation Resource (AWS::SES::ReceiptRule.S3Action) +// ReceiptRule_S3Action AWS CloudFormation Resource (AWS::SES::ReceiptRule.S3Action) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-s3action.html -type AWSSESReceiptRule_S3Action struct { +type ReceiptRule_S3Action struct { // BucketName AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSSESReceiptRule_S3Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_S3Action) AWSCloudFormationType() string { +func (r *ReceiptRule_S3Action) AWSCloudFormationType() string { return "AWS::SES::ReceiptRule.S3Action" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_S3Action) DependsOn() []string { +func (r *ReceiptRule_S3Action) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_S3Action) SetDependsOn(dependencies []string) { +func (r *ReceiptRule_S3Action) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_S3Action) Metadata() map[string]interface{} { +func (r *ReceiptRule_S3Action) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_S3Action) SetMetadata(metadata map[string]interface{}) { +func (r *ReceiptRule_S3Action) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_S3Action) DeletionPolicy() policies.DeletionPolicy { +func (r *ReceiptRule_S3Action) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_S3Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRule_S3Action) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-receiptrule_snsaction.go b/cloudformation/ses/aws-ses-receiptrule_snsaction.go similarity index 75% rename from cloudformation/resources/aws-ses-receiptrule_snsaction.go rename to cloudformation/ses/aws-ses-receiptrule_snsaction.go index 0640fd0034..71f3bcba48 100644 --- a/cloudformation/resources/aws-ses-receiptrule_snsaction.go +++ b/cloudformation/ses/aws-ses-receiptrule_snsaction.go @@ -1,10 +1,12 @@ -package resources +package ses -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSESReceiptRule_SNSAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.SNSAction) +// ReceiptRule_SNSAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.SNSAction) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-snsaction.html -type AWSSESReceiptRule_SNSAction struct { +type ReceiptRule_SNSAction struct { // Encoding AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSSESReceiptRule_SNSAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_SNSAction) AWSCloudFormationType() string { +func (r *ReceiptRule_SNSAction) AWSCloudFormationType() string { return "AWS::SES::ReceiptRule.SNSAction" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_SNSAction) DependsOn() []string { +func (r *ReceiptRule_SNSAction) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRule_SNSAction) SetDependsOn(dependencies []string) { +func (r *ReceiptRule_SNSAction) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_SNSAction) Metadata() map[string]interface{} { +func (r *ReceiptRule_SNSAction) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRule_SNSAction) SetMetadata(metadata map[string]interface{}) { +func (r *ReceiptRule_SNSAction) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_SNSAction) DeletionPolicy() policies.DeletionPolicy { +func (r *ReceiptRule_SNSAction) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRule_SNSAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRule_SNSAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ses/aws-ses-receiptrule_stopaction.go b/cloudformation/ses/aws-ses-receiptrule_stopaction.go new file mode 100644 index 0000000000..b8331a07be --- /dev/null +++ b/cloudformation/ses/aws-ses-receiptrule_stopaction.go @@ -0,0 +1,70 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ReceiptRule_StopAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.StopAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html +type ReceiptRule_StopAction struct { + + // Scope AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html#cfn-ses-receiptrule-stopaction-scope + Scope string `json:"Scope,omitempty"` + + // TopicArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html#cfn-ses-receiptrule-stopaction-topicarn + TopicArn string `json:"TopicArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ReceiptRule_StopAction) AWSCloudFormationType() string { + return "AWS::SES::ReceiptRule.StopAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptRule_StopAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptRule_StopAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptRule_StopAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptRule_StopAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptRule_StopAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptRule_StopAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ses/aws-ses-receiptrule_workmailaction.go b/cloudformation/ses/aws-ses-receiptrule_workmailaction.go new file mode 100644 index 0000000000..d991a0ded3 --- /dev/null +++ b/cloudformation/ses/aws-ses-receiptrule_workmailaction.go @@ -0,0 +1,70 @@ +package ses + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ReceiptRule_WorkmailAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.WorkmailAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html +type ReceiptRule_WorkmailAction struct { + + // OrganizationArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html#cfn-ses-receiptrule-workmailaction-organizationarn + OrganizationArn string `json:"OrganizationArn,omitempty"` + + // TopicArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html#cfn-ses-receiptrule-workmailaction-topicarn + TopicArn string `json:"TopicArn,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ReceiptRule_WorkmailAction) AWSCloudFormationType() string { + return "AWS::SES::ReceiptRule.WorkmailAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptRule_WorkmailAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ReceiptRule_WorkmailAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptRule_WorkmailAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ReceiptRule_WorkmailAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptRule_WorkmailAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ReceiptRule_WorkmailAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ses-receiptruleset.go b/cloudformation/ses/aws-ses-receiptruleset.go similarity index 79% rename from cloudformation/resources/aws-ses-receiptruleset.go rename to cloudformation/ses/aws-ses-receiptruleset.go index f9d7e1a5f0..446aaf1605 100644 --- a/cloudformation/resources/aws-ses-receiptruleset.go +++ b/cloudformation/ses/aws-ses-receiptruleset.go @@ -1,15 +1,16 @@ -package resources +package ses import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSESReceiptRuleSet AWS CloudFormation Resource (AWS::SES::ReceiptRuleSet) +// ReceiptRuleSet AWS CloudFormation Resource (AWS::SES::ReceiptRuleSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptruleset.html -type AWSSESReceiptRuleSet struct { +type ReceiptRuleSet struct { // RuleSetName AWS CloudFormation Property // Required: false @@ -27,50 +28,50 @@ type AWSSESReceiptRuleSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRuleSet) AWSCloudFormationType() string { +func (r *ReceiptRuleSet) AWSCloudFormationType() string { return "AWS::SES::ReceiptRuleSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRuleSet) DependsOn() []string { +func (r *ReceiptRuleSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESReceiptRuleSet) SetDependsOn(dependencies []string) { +func (r *ReceiptRuleSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRuleSet) Metadata() map[string]interface{} { +func (r *ReceiptRuleSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESReceiptRuleSet) SetMetadata(metadata map[string]interface{}) { +func (r *ReceiptRuleSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRuleSet) DeletionPolicy() policies.DeletionPolicy { +func (r *ReceiptRuleSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESReceiptRuleSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRuleSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSESReceiptRuleSet) MarshalJSON() ([]byte, error) { - type Properties AWSSESReceiptRuleSet +func (r ReceiptRuleSet) MarshalJSON() ([]byte, error) { + type Properties ReceiptRuleSet return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSSESReceiptRuleSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSESReceiptRuleSet) UnmarshalJSON(b []byte) error { - type Properties AWSSESReceiptRuleSet +func (r *ReceiptRuleSet) UnmarshalJSON(b []byte) error { + type Properties ReceiptRuleSet res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSSESReceiptRuleSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSESReceiptRuleSet(*res.Properties) + *r = ReceiptRuleSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ses-template.go b/cloudformation/ses/aws-ses-template.go similarity index 79% rename from cloudformation/resources/aws-ses-template.go rename to cloudformation/ses/aws-ses-template.go index 35cbb084d4..025193cc65 100644 --- a/cloudformation/resources/aws-ses-template.go +++ b/cloudformation/ses/aws-ses-template.go @@ -1,20 +1,21 @@ -package resources +package ses import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSESTemplate AWS CloudFormation Resource (AWS::SES::Template) +// Template AWS CloudFormation Resource (AWS::SES::Template) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-template.html -type AWSSESTemplate struct { +type Template struct { // Template AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-template.html#cfn-ses-template-template - Template *AWSSESTemplate_Template `json:"Template,omitempty"` + Template *Template_Template `json:"Template,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,50 +28,50 @@ type AWSSESTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESTemplate) AWSCloudFormationType() string { +func (r *Template) AWSCloudFormationType() string { return "AWS::SES::Template" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESTemplate) DependsOn() []string { +func (r *Template) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESTemplate) SetDependsOn(dependencies []string) { +func (r *Template) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESTemplate) Metadata() map[string]interface{} { +func (r *Template) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESTemplate) SetMetadata(metadata map[string]interface{}) { +func (r *Template) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESTemplate) DeletionPolicy() policies.DeletionPolicy { +func (r *Template) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Template) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSESTemplate) MarshalJSON() ([]byte, error) { - type Properties AWSSESTemplate +func (r Template) MarshalJSON() ([]byte, error) { + type Properties Template return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSSESTemplate) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSESTemplate) UnmarshalJSON(b []byte) error { - type Properties AWSSESTemplate +func (r *Template) UnmarshalJSON(b []byte) error { + type Properties Template res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSSESTemplate) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSESTemplate(*res.Properties) + *r = Template(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ses-template_template.go b/cloudformation/ses/aws-ses-template_template.go similarity index 79% rename from cloudformation/resources/aws-ses-template_template.go rename to cloudformation/ses/aws-ses-template_template.go index 5505077de0..a6402e45dd 100644 --- a/cloudformation/resources/aws-ses-template_template.go +++ b/cloudformation/ses/aws-ses-template_template.go @@ -1,10 +1,12 @@ -package resources +package ses -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSESTemplate_Template AWS CloudFormation Resource (AWS::SES::Template.Template) +// Template_Template AWS CloudFormation Resource (AWS::SES::Template.Template) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-template-template.html -type AWSSESTemplate_Template struct { +type Template_Template struct { // HtmlPart AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSSESTemplate_Template struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESTemplate_Template) AWSCloudFormationType() string { +func (r *Template_Template) AWSCloudFormationType() string { return "AWS::SES::Template.Template" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESTemplate_Template) DependsOn() []string { +func (r *Template_Template) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSESTemplate_Template) SetDependsOn(dependencies []string) { +func (r *Template_Template) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESTemplate_Template) Metadata() map[string]interface{} { +func (r *Template_Template) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSESTemplate_Template) SetMetadata(metadata map[string]interface{}) { +func (r *Template_Template) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESTemplate_Template) DeletionPolicy() policies.DeletionPolicy { +func (r *Template_Template) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSESTemplate_Template) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Template_Template) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-sns-subscription.go b/cloudformation/sns/aws-sns-subscription.go similarity index 84% rename from cloudformation/resources/aws-sns-subscription.go rename to cloudformation/sns/aws-sns-subscription.go index fc9fea6134..6366c48c2d 100644 --- a/cloudformation/resources/aws-sns-subscription.go +++ b/cloudformation/sns/aws-sns-subscription.go @@ -1,15 +1,16 @@ -package resources +package sns import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSNSSubscription AWS CloudFormation Resource (AWS::SNS::Subscription) +// Subscription AWS CloudFormation Resource (AWS::SNS::Subscription) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html -type AWSSNSSubscription struct { +type Subscription struct { // DeliveryPolicy AWS CloudFormation Property // Required: false @@ -57,50 +58,50 @@ type AWSSNSSubscription struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSNSSubscription) AWSCloudFormationType() string { +func (r *Subscription) AWSCloudFormationType() string { return "AWS::SNS::Subscription" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSNSSubscription) DependsOn() []string { +func (r *Subscription) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSNSSubscription) SetDependsOn(dependencies []string) { +func (r *Subscription) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSNSSubscription) Metadata() map[string]interface{} { +func (r *Subscription) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSNSSubscription) SetMetadata(metadata map[string]interface{}) { +func (r *Subscription) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSNSSubscription) DeletionPolicy() policies.DeletionPolicy { +func (r *Subscription) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSNSSubscription) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Subscription) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSNSSubscription) MarshalJSON() ([]byte, error) { - type Properties AWSSNSSubscription +func (r Subscription) MarshalJSON() ([]byte, error) { + type Properties Subscription return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +119,8 @@ func (r AWSSNSSubscription) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSNSSubscription) UnmarshalJSON(b []byte) error { - type Properties AWSSNSSubscription +func (r *Subscription) UnmarshalJSON(b []byte) error { + type Properties Subscription res := &struct { Type string Properties *Properties @@ -138,7 +139,7 @@ func (r *AWSSNSSubscription) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSNSSubscription(*res.Properties) + *r = Subscription(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sns-topic.go b/cloudformation/sns/aws-sns-topic.go similarity index 82% rename from cloudformation/resources/aws-sns-topic.go rename to cloudformation/sns/aws-sns-topic.go index add0372e1e..ddc67097dd 100644 --- a/cloudformation/resources/aws-sns-topic.go +++ b/cloudformation/sns/aws-sns-topic.go @@ -1,15 +1,16 @@ -package resources +package sns import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSNSTopic AWS CloudFormation Resource (AWS::SNS::Topic) +// Topic AWS CloudFormation Resource (AWS::SNS::Topic) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html -type AWSSNSTopic struct { +type Topic struct { // DisplayName AWS CloudFormation Property // Required: false @@ -24,7 +25,7 @@ type AWSSNSTopic struct { // Subscription AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-subscription - Subscription []AWSSNSTopic_Subscription `json:"Subscription,omitempty"` + Subscription []Topic_Subscription `json:"Subscription,omitempty"` // TopicName AWS CloudFormation Property // Required: false @@ -42,50 +43,50 @@ type AWSSNSTopic struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSNSTopic) AWSCloudFormationType() string { +func (r *Topic) AWSCloudFormationType() string { return "AWS::SNS::Topic" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSNSTopic) DependsOn() []string { +func (r *Topic) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSNSTopic) SetDependsOn(dependencies []string) { +func (r *Topic) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSNSTopic) Metadata() map[string]interface{} { +func (r *Topic) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSNSTopic) SetMetadata(metadata map[string]interface{}) { +func (r *Topic) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSNSTopic) DeletionPolicy() policies.DeletionPolicy { +func (r *Topic) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSNSTopic) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Topic) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSNSTopic) MarshalJSON() ([]byte, error) { - type Properties AWSSNSTopic +func (r Topic) MarshalJSON() ([]byte, error) { + type Properties Topic return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSSNSTopic) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSNSTopic) UnmarshalJSON(b []byte) error { - type Properties AWSSNSTopic +func (r *Topic) UnmarshalJSON(b []byte) error { + type Properties Topic res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSSNSTopic) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSNSTopic(*res.Properties) + *r = Topic(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sns-topic_subscription.go b/cloudformation/sns/aws-sns-topic_subscription.go similarity index 75% rename from cloudformation/resources/aws-sns-topic_subscription.go rename to cloudformation/sns/aws-sns-topic_subscription.go index 0a3b8d46d7..28f3d640d5 100644 --- a/cloudformation/resources/aws-sns-topic_subscription.go +++ b/cloudformation/sns/aws-sns-topic_subscription.go @@ -1,10 +1,12 @@ -package resources +package sns -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSNSTopic_Subscription AWS CloudFormation Resource (AWS::SNS::Topic.Subscription) +// Topic_Subscription AWS CloudFormation Resource (AWS::SNS::Topic.Subscription) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html -type AWSSNSTopic_Subscription struct { +type Topic_Subscription struct { // Endpoint AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSNSTopic_Subscription struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSNSTopic_Subscription) AWSCloudFormationType() string { +func (r *Topic_Subscription) AWSCloudFormationType() string { return "AWS::SNS::Topic.Subscription" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSNSTopic_Subscription) DependsOn() []string { +func (r *Topic_Subscription) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSNSTopic_Subscription) SetDependsOn(dependencies []string) { +func (r *Topic_Subscription) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSNSTopic_Subscription) Metadata() map[string]interface{} { +func (r *Topic_Subscription) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSNSTopic_Subscription) SetMetadata(metadata map[string]interface{}) { +func (r *Topic_Subscription) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSNSTopic_Subscription) DeletionPolicy() policies.DeletionPolicy { +func (r *Topic_Subscription) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSNSTopic_Subscription) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Topic_Subscription) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-sns-topicpolicy.go b/cloudformation/sns/aws-sns-topicpolicy.go similarity index 81% rename from cloudformation/resources/aws-sns-topicpolicy.go rename to cloudformation/sns/aws-sns-topicpolicy.go index bc0aa7fdf1..8ade5d937b 100644 --- a/cloudformation/resources/aws-sns-topicpolicy.go +++ b/cloudformation/sns/aws-sns-topicpolicy.go @@ -1,15 +1,16 @@ -package resources +package sns import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSNSTopicPolicy AWS CloudFormation Resource (AWS::SNS::TopicPolicy) +// TopicPolicy AWS CloudFormation Resource (AWS::SNS::TopicPolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html -type AWSSNSTopicPolicy struct { +type TopicPolicy struct { // PolicyDocument AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSSNSTopicPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSNSTopicPolicy) AWSCloudFormationType() string { +func (r *TopicPolicy) AWSCloudFormationType() string { return "AWS::SNS::TopicPolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSNSTopicPolicy) DependsOn() []string { +func (r *TopicPolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSNSTopicPolicy) SetDependsOn(dependencies []string) { +func (r *TopicPolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSNSTopicPolicy) Metadata() map[string]interface{} { +func (r *TopicPolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSNSTopicPolicy) SetMetadata(metadata map[string]interface{}) { +func (r *TopicPolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSNSTopicPolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *TopicPolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSNSTopicPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSNSTopicPolicy) MarshalJSON() ([]byte, error) { - type Properties AWSSNSTopicPolicy +func (r TopicPolicy) MarshalJSON() ([]byte, error) { + type Properties TopicPolicy return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSSNSTopicPolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSNSTopicPolicy) UnmarshalJSON(b []byte) error { - type Properties AWSSNSTopicPolicy +func (r *TopicPolicy) UnmarshalJSON(b []byte) error { + type Properties TopicPolicy res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSSNSTopicPolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSNSTopicPolicy(*res.Properties) + *r = TopicPolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sqs-queue.go b/cloudformation/sqs/aws-sqs-queue.go similarity index 88% rename from cloudformation/resources/aws-sqs-queue.go rename to cloudformation/sqs/aws-sqs-queue.go index cc98e7db77..d0b6a532ec 100644 --- a/cloudformation/resources/aws-sqs-queue.go +++ b/cloudformation/sqs/aws-sqs-queue.go @@ -1,15 +1,17 @@ -package resources +package sqs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSQSQueue AWS CloudFormation Resource (AWS::SQS::Queue) +// Queue AWS CloudFormation Resource (AWS::SQS::Queue) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html -type AWSSQSQueue struct { +type Queue struct { // ContentBasedDeduplication AWS CloudFormation Property // Required: false @@ -64,7 +66,7 @@ type AWSSQSQueue struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#cfn-sqs-queue-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // VisibilityTimeout AWS CloudFormation Property // Required: false @@ -82,50 +84,50 @@ type AWSSQSQueue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSQSQueue) AWSCloudFormationType() string { +func (r *Queue) AWSCloudFormationType() string { return "AWS::SQS::Queue" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSQSQueue) DependsOn() []string { +func (r *Queue) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSQSQueue) SetDependsOn(dependencies []string) { +func (r *Queue) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSQSQueue) Metadata() map[string]interface{} { +func (r *Queue) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSQSQueue) SetMetadata(metadata map[string]interface{}) { +func (r *Queue) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSQSQueue) DeletionPolicy() policies.DeletionPolicy { +func (r *Queue) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSQSQueue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Queue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSQSQueue) MarshalJSON() ([]byte, error) { - type Properties AWSSQSQueue +func (r Queue) MarshalJSON() ([]byte, error) { + type Properties Queue return json.Marshal(&struct { Type string Properties Properties @@ -143,8 +145,8 @@ func (r AWSSQSQueue) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSQSQueue) UnmarshalJSON(b []byte) error { - type Properties AWSSQSQueue +func (r *Queue) UnmarshalJSON(b []byte) error { + type Properties Queue res := &struct { Type string Properties *Properties @@ -163,7 +165,7 @@ func (r *AWSSQSQueue) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSQSQueue(*res.Properties) + *r = Queue(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sqs-queuepolicy.go b/cloudformation/sqs/aws-sqs-queuepolicy.go similarity index 81% rename from cloudformation/resources/aws-sqs-queuepolicy.go rename to cloudformation/sqs/aws-sqs-queuepolicy.go index ee0ff3ccc7..ca02dd6a1d 100644 --- a/cloudformation/resources/aws-sqs-queuepolicy.go +++ b/cloudformation/sqs/aws-sqs-queuepolicy.go @@ -1,15 +1,16 @@ -package resources +package sqs import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSQSQueuePolicy AWS CloudFormation Resource (AWS::SQS::QueuePolicy) +// QueuePolicy AWS CloudFormation Resource (AWS::SQS::QueuePolicy) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html -type AWSSQSQueuePolicy struct { +type QueuePolicy struct { // PolicyDocument AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSSQSQueuePolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSQSQueuePolicy) AWSCloudFormationType() string { +func (r *QueuePolicy) AWSCloudFormationType() string { return "AWS::SQS::QueuePolicy" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSQSQueuePolicy) DependsOn() []string { +func (r *QueuePolicy) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSQSQueuePolicy) SetDependsOn(dependencies []string) { +func (r *QueuePolicy) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSQSQueuePolicy) Metadata() map[string]interface{} { +func (r *QueuePolicy) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSQSQueuePolicy) SetMetadata(metadata map[string]interface{}) { +func (r *QueuePolicy) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSQSQueuePolicy) DeletionPolicy() policies.DeletionPolicy { +func (r *QueuePolicy) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSQSQueuePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *QueuePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSQSQueuePolicy) MarshalJSON() ([]byte, error) { - type Properties AWSSQSQueuePolicy +func (r QueuePolicy) MarshalJSON() ([]byte, error) { + type Properties QueuePolicy return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSSQSQueuePolicy) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSQSQueuePolicy) UnmarshalJSON(b []byte) error { - type Properties AWSSQSQueuePolicy +func (r *QueuePolicy) UnmarshalJSON(b []byte) error { + type Properties QueuePolicy res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSSQSQueuePolicy) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSQSQueuePolicy(*res.Properties) + *r = QueuePolicy(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ssm-association.go b/cloudformation/ssm/aws-ssm-association.go similarity index 82% rename from cloudformation/resources/aws-ssm-association.go rename to cloudformation/ssm/aws-ssm-association.go index 9288e4a275..b9c463efdd 100644 --- a/cloudformation/resources/aws-ssm-association.go +++ b/cloudformation/ssm/aws-ssm-association.go @@ -1,15 +1,16 @@ -package resources +package ssm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSSMAssociation AWS CloudFormation Resource (AWS::SSM::Association) +// Association AWS CloudFormation Resource (AWS::SSM::Association) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html -type AWSSSMAssociation struct { +type Association struct { // AssociationName AWS CloudFormation Property // Required: false @@ -34,12 +35,12 @@ type AWSSSMAssociation struct { // OutputLocation AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-outputlocation - OutputLocation *AWSSSMAssociation_InstanceAssociationOutputLocation `json:"OutputLocation,omitempty"` + OutputLocation *Association_InstanceAssociationOutputLocation `json:"OutputLocation,omitempty"` // Parameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-parameters - Parameters map[string]AWSSSMAssociation_ParameterValues `json:"Parameters,omitempty"` + Parameters map[string]Association_ParameterValues `json:"Parameters,omitempty"` // ScheduleExpression AWS CloudFormation Property // Required: false @@ -49,7 +50,7 @@ type AWSSSMAssociation struct { // Targets AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-targets - Targets []AWSSSMAssociation_Target `json:"Targets,omitempty"` + Targets []Association_Target `json:"Targets,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -62,50 +63,50 @@ type AWSSSMAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMAssociation) AWSCloudFormationType() string { +func (r *Association) AWSCloudFormationType() string { return "AWS::SSM::Association" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation) DependsOn() []string { +func (r *Association) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation) SetDependsOn(dependencies []string) { +func (r *Association) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation) Metadata() map[string]interface{} { +func (r *Association) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *Association) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *Association) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Association) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSSMAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSSSMAssociation +func (r Association) MarshalJSON() ([]byte, error) { + type Properties Association return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSSSMAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSSMAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSSSMAssociation +func (r *Association) UnmarshalJSON(b []byte) error { + type Properties Association res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSSSMAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSSMAssociation(*res.Properties) + *r = Association(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ssm/aws-ssm-association_instanceassociationoutputlocation.go b/cloudformation/ssm/aws-ssm-association_instanceassociationoutputlocation.go new file mode 100644 index 0000000000..6b681545ab --- /dev/null +++ b/cloudformation/ssm/aws-ssm-association_instanceassociationoutputlocation.go @@ -0,0 +1,65 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Association_InstanceAssociationOutputLocation AWS CloudFormation Resource (AWS::SSM::Association.InstanceAssociationOutputLocation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-instanceassociationoutputlocation.html +type Association_InstanceAssociationOutputLocation struct { + + // S3Location AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-instanceassociationoutputlocation.html#cfn-ssm-association-instanceassociationoutputlocation-s3location + S3Location *Association_S3OutputLocation `json:"S3Location,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Association_InstanceAssociationOutputLocation) AWSCloudFormationType() string { + return "AWS::SSM::Association.InstanceAssociationOutputLocation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Association_InstanceAssociationOutputLocation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Association_InstanceAssociationOutputLocation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Association_InstanceAssociationOutputLocation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Association_InstanceAssociationOutputLocation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Association_InstanceAssociationOutputLocation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Association_InstanceAssociationOutputLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ssm/aws-ssm-association_parametervalues.go b/cloudformation/ssm/aws-ssm-association_parametervalues.go new file mode 100644 index 0000000000..faa69129d4 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-association_parametervalues.go @@ -0,0 +1,65 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Association_ParameterValues AWS CloudFormation Resource (AWS::SSM::Association.ParameterValues) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html +type Association_ParameterValues struct { + + // ParameterValues AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html#cfn-ssm-association-parametervalues-parametervalues + ParameterValues []string `json:"ParameterValues,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Association_ParameterValues) AWSCloudFormationType() string { + return "AWS::SSM::Association.ParameterValues" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Association_ParameterValues) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Association_ParameterValues) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Association_ParameterValues) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Association_ParameterValues) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Association_ParameterValues) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Association_ParameterValues) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ssm/aws-ssm-association_s3outputlocation.go b/cloudformation/ssm/aws-ssm-association_s3outputlocation.go new file mode 100644 index 0000000000..87b32f99c8 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-association_s3outputlocation.go @@ -0,0 +1,70 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Association_S3OutputLocation AWS CloudFormation Resource (AWS::SSM::Association.S3OutputLocation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html +type Association_S3OutputLocation struct { + + // OutputS3BucketName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3bucketname + OutputS3BucketName string `json:"OutputS3BucketName,omitempty"` + + // OutputS3KeyPrefix AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3keyprefix + OutputS3KeyPrefix string `json:"OutputS3KeyPrefix,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Association_S3OutputLocation) AWSCloudFormationType() string { + return "AWS::SSM::Association.S3OutputLocation" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Association_S3OutputLocation) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Association_S3OutputLocation) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Association_S3OutputLocation) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Association_S3OutputLocation) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Association_S3OutputLocation) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Association_S3OutputLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ssm-association_target.go b/cloudformation/ssm/aws-ssm-association_target.go similarity index 75% rename from cloudformation/resources/aws-ssm-association_target.go rename to cloudformation/ssm/aws-ssm-association_target.go index 19cbf0d000..c561f2e165 100644 --- a/cloudformation/resources/aws-ssm-association_target.go +++ b/cloudformation/ssm/aws-ssm-association_target.go @@ -1,10 +1,12 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMAssociation_Target AWS CloudFormation Resource (AWS::SSM::Association.Target) +// Association_Target AWS CloudFormation Resource (AWS::SSM::Association.Target) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html -type AWSSSMAssociation_Target struct { +type Association_Target struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSSMAssociation_Target struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMAssociation_Target) AWSCloudFormationType() string { +func (r *Association_Target) AWSCloudFormationType() string { return "AWS::SSM::Association.Target" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation_Target) DependsOn() []string { +func (r *Association_Target) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMAssociation_Target) SetDependsOn(dependencies []string) { +func (r *Association_Target) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation_Target) Metadata() map[string]interface{} { +func (r *Association_Target) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMAssociation_Target) SetMetadata(metadata map[string]interface{}) { +func (r *Association_Target) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation_Target) DeletionPolicy() policies.DeletionPolicy { +func (r *Association_Target) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMAssociation_Target) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Association_Target) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-document.go b/cloudformation/ssm/aws-ssm-document.go similarity index 81% rename from cloudformation/resources/aws-ssm-document.go rename to cloudformation/ssm/aws-ssm-document.go index f04bc2af54..affb075b91 100644 --- a/cloudformation/resources/aws-ssm-document.go +++ b/cloudformation/ssm/aws-ssm-document.go @@ -1,15 +1,17 @@ -package resources +package ssm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSSMDocument AWS CloudFormation Resource (AWS::SSM::Document) +// Document AWS CloudFormation Resource (AWS::SSM::Document) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html -type AWSSSMDocument struct { +type Document struct { // Content AWS CloudFormation Property // Required: true @@ -24,7 +26,7 @@ type AWSSSMDocument struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +39,50 @@ type AWSSSMDocument struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMDocument) AWSCloudFormationType() string { +func (r *Document) AWSCloudFormationType() string { return "AWS::SSM::Document" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMDocument) DependsOn() []string { +func (r *Document) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMDocument) SetDependsOn(dependencies []string) { +func (r *Document) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMDocument) Metadata() map[string]interface{} { +func (r *Document) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMDocument) SetMetadata(metadata map[string]interface{}) { +func (r *Document) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMDocument) DeletionPolicy() policies.DeletionPolicy { +func (r *Document) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMDocument) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Document) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSSMDocument) MarshalJSON() ([]byte, error) { - type Properties AWSSSMDocument +func (r Document) MarshalJSON() ([]byte, error) { + type Properties Document return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +100,8 @@ func (r AWSSSMDocument) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSSMDocument) UnmarshalJSON(b []byte) error { - type Properties AWSSSMDocument +func (r *Document) UnmarshalJSON(b []byte) error { + type Properties Document res := &struct { Type string Properties *Properties @@ -118,7 +120,7 @@ func (r *AWSSSMDocument) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSSMDocument(*res.Properties) + *r = Document(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ssm-maintenancewindow.go b/cloudformation/ssm/aws-ssm-maintenancewindow.go similarity index 85% rename from cloudformation/resources/aws-ssm-maintenancewindow.go rename to cloudformation/ssm/aws-ssm-maintenancewindow.go index d797badfef..b783879d5f 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindow.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindow.go @@ -1,15 +1,17 @@ -package resources +package ssm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSSMMaintenanceWindow AWS CloudFormation Resource (AWS::SSM::MaintenanceWindow) +// MaintenanceWindow AWS CloudFormation Resource (AWS::SSM::MaintenanceWindow) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html -type AWSSSMMaintenanceWindow struct { +type MaintenanceWindow struct { // AllowUnassociatedTargets AWS CloudFormation Property // Required: true @@ -59,7 +61,7 @@ type AWSSSMMaintenanceWindow struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -72,50 +74,50 @@ type AWSSSMMaintenanceWindow struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindow) AWSCloudFormationType() string { +func (r *MaintenanceWindow) AWSCloudFormationType() string { return "AWS::SSM::MaintenanceWindow" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindow) DependsOn() []string { +func (r *MaintenanceWindow) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindow) SetDependsOn(dependencies []string) { +func (r *MaintenanceWindow) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindow) Metadata() map[string]interface{} { +func (r *MaintenanceWindow) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindow) SetMetadata(metadata map[string]interface{}) { +func (r *MaintenanceWindow) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindow) DeletionPolicy() policies.DeletionPolicy { +func (r *MaintenanceWindow) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindow) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindow) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSSMMaintenanceWindow) MarshalJSON() ([]byte, error) { - type Properties AWSSSMMaintenanceWindow +func (r MaintenanceWindow) MarshalJSON() ([]byte, error) { + type Properties MaintenanceWindow return json.Marshal(&struct { Type string Properties Properties @@ -133,8 +135,8 @@ func (r AWSSSMMaintenanceWindow) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSSMMaintenanceWindow) UnmarshalJSON(b []byte) error { - type Properties AWSSSMMaintenanceWindow +func (r *MaintenanceWindow) UnmarshalJSON(b []byte) error { + type Properties MaintenanceWindow res := &struct { Type string Properties *Properties @@ -153,7 +155,7 @@ func (r *AWSSSMMaintenanceWindow) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSSMMaintenanceWindow(*res.Properties) + *r = MaintenanceWindow(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtarget.go b/cloudformation/ssm/aws-ssm-maintenancewindowtarget.go similarity index 81% rename from cloudformation/resources/aws-ssm-maintenancewindowtarget.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtarget.go index 6efcf7d793..fc261f465e 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtarget.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtarget.go @@ -1,15 +1,16 @@ -package resources +package ssm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSSMMaintenanceWindowTarget AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTarget) +// MaintenanceWindowTarget AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTarget) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html -type AWSSSMMaintenanceWindowTarget struct { +type MaintenanceWindowTarget struct { // Description AWS CloudFormation Property // Required: false @@ -34,7 +35,7 @@ type AWSSSMMaintenanceWindowTarget struct { // Targets AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-targets - Targets []AWSSSMMaintenanceWindowTarget_Targets `json:"Targets,omitempty"` + Targets []MaintenanceWindowTarget_Targets `json:"Targets,omitempty"` // WindowId AWS CloudFormation Property // Required: true @@ -52,50 +53,50 @@ type AWSSSMMaintenanceWindowTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTarget) AWSCloudFormationType() string { +func (r *MaintenanceWindowTarget) AWSCloudFormationType() string { return "AWS::SSM::MaintenanceWindowTarget" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTarget) DependsOn() []string { +func (r *MaintenanceWindowTarget) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTarget) SetDependsOn(dependencies []string) { +func (r *MaintenanceWindowTarget) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTarget) Metadata() map[string]interface{} { +func (r *MaintenanceWindowTarget) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTarget) SetMetadata(metadata map[string]interface{}) { +func (r *MaintenanceWindowTarget) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTarget) DeletionPolicy() policies.DeletionPolicy { +func (r *MaintenanceWindowTarget) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindowTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSSMMaintenanceWindowTarget) MarshalJSON() ([]byte, error) { - type Properties AWSSSMMaintenanceWindowTarget +func (r MaintenanceWindowTarget) MarshalJSON() ([]byte, error) { + type Properties MaintenanceWindowTarget return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSSSMMaintenanceWindowTarget) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSSMMaintenanceWindowTarget) UnmarshalJSON(b []byte) error { - type Properties AWSSSMMaintenanceWindowTarget +func (r *MaintenanceWindowTarget) UnmarshalJSON(b []byte) error { + type Properties MaintenanceWindowTarget res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSSSMMaintenanceWindowTarget) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSSMMaintenanceWindowTarget(*res.Properties) + *r = MaintenanceWindowTarget(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ssm/aws-ssm-maintenancewindowtarget_targets.go b/cloudformation/ssm/aws-ssm-maintenancewindowtarget_targets.go new file mode 100644 index 0000000000..1abec0751a --- /dev/null +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtarget_targets.go @@ -0,0 +1,70 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MaintenanceWindowTarget_Targets AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTarget.Targets) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html +type MaintenanceWindowTarget_Targets struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html#cfn-ssm-maintenancewindowtarget-targets-key + Key string `json:"Key,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html#cfn-ssm-maintenancewindowtarget-targets-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MaintenanceWindowTarget_Targets) AWSCloudFormationType() string { + return "AWS::SSM::MaintenanceWindowTarget.Targets" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTarget_Targets) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTarget_Targets) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTarget_Targets) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTarget_Targets) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTarget_Targets) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTarget_Targets) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask.go similarity index 83% rename from cloudformation/resources/aws-ssm-maintenancewindowtask.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask.go index e0ffe2505a..d52c721273 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask.go @@ -1,15 +1,16 @@ -package resources +package ssm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSSMMaintenanceWindowTask AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask) +// MaintenanceWindowTask AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html -type AWSSSMMaintenanceWindowTask struct { +type MaintenanceWindowTask struct { // Description AWS CloudFormation Property // Required: false @@ -19,7 +20,7 @@ type AWSSSMMaintenanceWindowTask struct { // LoggingInfo AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-logginginfo - LoggingInfo *AWSSSMMaintenanceWindowTask_LoggingInfo `json:"LoggingInfo,omitempty"` + LoggingInfo *MaintenanceWindowTask_LoggingInfo `json:"LoggingInfo,omitempty"` // MaxConcurrency AWS CloudFormation Property // Required: true @@ -49,7 +50,7 @@ type AWSSSMMaintenanceWindowTask struct { // Targets AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-targets - Targets []AWSSSMMaintenanceWindowTask_Target `json:"Targets,omitempty"` + Targets []MaintenanceWindowTask_Target `json:"Targets,omitempty"` // TaskArn AWS CloudFormation Property // Required: true @@ -59,7 +60,7 @@ type AWSSSMMaintenanceWindowTask struct { // TaskInvocationParameters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters - TaskInvocationParameters *AWSSSMMaintenanceWindowTask_TaskInvocationParameters `json:"TaskInvocationParameters,omitempty"` + TaskInvocationParameters *MaintenanceWindowTask_TaskInvocationParameters `json:"TaskInvocationParameters,omitempty"` // TaskParameters AWS CloudFormation Property // Required: false @@ -87,50 +88,50 @@ type AWSSSMMaintenanceWindowTask struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask) AWSCloudFormationType() string { +func (r *MaintenanceWindowTask) AWSCloudFormationType() string { return "AWS::SSM::MaintenanceWindowTask" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask) DependsOn() []string { +func (r *MaintenanceWindowTask) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask) SetDependsOn(dependencies []string) { +func (r *MaintenanceWindowTask) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask) Metadata() map[string]interface{} { +func (r *MaintenanceWindowTask) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask) SetMetadata(metadata map[string]interface{}) { +func (r *MaintenanceWindowTask) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask) DeletionPolicy() policies.DeletionPolicy { +func (r *MaintenanceWindowTask) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindowTask) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSSMMaintenanceWindowTask) MarshalJSON() ([]byte, error) { - type Properties AWSSSMMaintenanceWindowTask +func (r MaintenanceWindowTask) MarshalJSON() ([]byte, error) { + type Properties MaintenanceWindowTask return json.Marshal(&struct { Type string Properties Properties @@ -148,8 +149,8 @@ func (r AWSSSMMaintenanceWindowTask) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSSMMaintenanceWindowTask) UnmarshalJSON(b []byte) error { - type Properties AWSSSMMaintenanceWindowTask +func (r *MaintenanceWindowTask) UnmarshalJSON(b []byte) error { + type Properties MaintenanceWindowTask res := &struct { Type string Properties *Properties @@ -168,7 +169,7 @@ func (r *AWSSSMMaintenanceWindowTask) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSSMMaintenanceWindowTask(*res.Properties) + *r = MaintenanceWindowTask(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_logginginfo.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_logginginfo.go similarity index 75% rename from cloudformation/resources/aws-ssm-maintenancewindowtask_logginginfo.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask_logginginfo.go index 98c41f40c7..27b38c62e8 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_logginginfo.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_logginginfo.go @@ -1,10 +1,12 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMMaintenanceWindowTask_LoggingInfo AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.LoggingInfo) +// MaintenanceWindowTask_LoggingInfo AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.LoggingInfo) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html -type AWSSSMMaintenanceWindowTask_LoggingInfo struct { +type MaintenanceWindowTask_LoggingInfo struct { // Region AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSSSMMaintenanceWindowTask_LoggingInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_LoggingInfo) AWSCloudFormationType() string { +func (r *MaintenanceWindowTask_LoggingInfo) AWSCloudFormationType() string { return "AWS::SSM::MaintenanceWindowTask.LoggingInfo" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_LoggingInfo) DependsOn() []string { +func (r *MaintenanceWindowTask_LoggingInfo) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_LoggingInfo) SetDependsOn(dependencies []string) { +func (r *MaintenanceWindowTask_LoggingInfo) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_LoggingInfo) Metadata() map[string]interface{} { +func (r *MaintenanceWindowTask_LoggingInfo) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_LoggingInfo) SetMetadata(metadata map[string]interface{}) { +func (r *MaintenanceWindowTask_LoggingInfo) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_LoggingInfo) DeletionPolicy() policies.DeletionPolicy { +func (r *MaintenanceWindowTask_LoggingInfo) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_LoggingInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindowTask_LoggingInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go new file mode 100644 index 0000000000..eeb12c1593 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go @@ -0,0 +1,70 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MaintenanceWindowTask_MaintenanceWindowAutomationParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowAutomationParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html +type MaintenanceWindowTask_MaintenanceWindowAutomationParameters struct { + + // DocumentVersion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowautomationparameters-documentversion + DocumentVersion string `json:"DocumentVersion,omitempty"` + + // Parameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowautomationparameters-parameters + Parameters interface{} `json:"Parameters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MaintenanceWindowTask_MaintenanceWindowAutomationParameters) AWSCloudFormationType() string { + return "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowAutomationParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_MaintenanceWindowAutomationParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_MaintenanceWindowAutomationParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_MaintenanceWindowAutomationParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go new file mode 100644 index 0000000000..84dade22b3 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go @@ -0,0 +1,75 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MaintenanceWindowTask_MaintenanceWindowLambdaParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowLambdaParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html +type MaintenanceWindowTask_MaintenanceWindowLambdaParameters struct { + + // ClientContext AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-clientcontext + ClientContext string `json:"ClientContext,omitempty"` + + // Payload AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-payload + Payload string `json:"Payload,omitempty"` + + // Qualifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-qualifier + Qualifier string `json:"Qualifier,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MaintenanceWindowTask_MaintenanceWindowLambdaParameters) AWSCloudFormationType() string { + return "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowLambdaParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_MaintenanceWindowLambdaParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_MaintenanceWindowLambdaParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_MaintenanceWindowLambdaParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowruncommandparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowruncommandparameters.go similarity index 80% rename from cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowruncommandparameters.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowruncommandparameters.go index 1bbf1bffd3..5a5624da5e 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowruncommandparameters.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowruncommandparameters.go @@ -1,10 +1,12 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowRunCommandParameters) +// MaintenanceWindowTask_MaintenanceWindowRunCommandParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowRunCommandParameters) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html -type AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters struct { +type MaintenanceWindowTask_MaintenanceWindowRunCommandParameters struct { // Comment AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters struct { // NotificationConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-notificationconfig - NotificationConfig *AWSSSMMaintenanceWindowTask_NotificationConfig `json:"NotificationConfig,omitempty"` + NotificationConfig *MaintenanceWindowTask_NotificationConfig `json:"NotificationConfig,omitempty"` // OutputS3BucketName AWS CloudFormation Property // Required: false @@ -62,42 +64,42 @@ type AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters) AWSCloudFormationType() string { +func (r *MaintenanceWindowTask_MaintenanceWindowRunCommandParameters) AWSCloudFormationType() string { return "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowRunCommandParameters" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters) DependsOn() []string { +func (r *MaintenanceWindowTask_MaintenanceWindowRunCommandParameters) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters) SetDependsOn(dependencies []string) { +func (r *MaintenanceWindowTask_MaintenanceWindowRunCommandParameters) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters) Metadata() map[string]interface{} { +func (r *MaintenanceWindowTask_MaintenanceWindowRunCommandParameters) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters) SetMetadata(metadata map[string]interface{}) { +func (r *MaintenanceWindowTask_MaintenanceWindowRunCommandParameters) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters) DeletionPolicy() policies.DeletionPolicy { +func (r *MaintenanceWindowTask_MaintenanceWindowRunCommandParameters) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindowTask_MaintenanceWindowRunCommandParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go new file mode 100644 index 0000000000..e66ae0bf77 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go @@ -0,0 +1,70 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowStepFunctionsParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html +type MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters struct { + + // Input AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters-input + Input string `json:"Input,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters-name + Name string `json:"Name,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) AWSCloudFormationType() string { + return "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowStepFunctionsParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ssm/aws-ssm-maintenancewindowtask_notificationconfig.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_notificationconfig.go new file mode 100644 index 0000000000..992e52430c --- /dev/null +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_notificationconfig.go @@ -0,0 +1,75 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MaintenanceWindowTask_NotificationConfig AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.NotificationConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html +type MaintenanceWindowTask_NotificationConfig struct { + + // NotificationArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationarn + NotificationArn string `json:"NotificationArn,omitempty"` + + // NotificationEvents AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationevents + NotificationEvents []string `json:"NotificationEvents,omitempty"` + + // NotificationType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationtype + NotificationType string `json:"NotificationType,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MaintenanceWindowTask_NotificationConfig) AWSCloudFormationType() string { + return "AWS::SSM::MaintenanceWindowTask.NotificationConfig" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_NotificationConfig) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_NotificationConfig) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_NotificationConfig) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_NotificationConfig) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_NotificationConfig) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_NotificationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ssm/aws-ssm-maintenancewindowtask_target.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_target.go new file mode 100644 index 0000000000..54890ddd25 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_target.go @@ -0,0 +1,70 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MaintenanceWindowTask_Target AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.Target) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html +type MaintenanceWindowTask_Target struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html#cfn-ssm-maintenancewindowtask-target-key + Key string `json:"Key,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html#cfn-ssm-maintenancewindowtask-target-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MaintenanceWindowTask_Target) AWSCloudFormationType() string { + return "AWS::SSM::MaintenanceWindowTask.Target" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_Target) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_Target) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_Target) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_Target) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_Target) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_Target) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ssm/aws-ssm-maintenancewindowtask_taskinvocationparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_taskinvocationparameters.go new file mode 100644 index 0000000000..f19d6cf436 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_taskinvocationparameters.go @@ -0,0 +1,80 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// MaintenanceWindowTask_TaskInvocationParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.TaskInvocationParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html +type MaintenanceWindowTask_TaskInvocationParameters struct { + + // MaintenanceWindowAutomationParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowautomationparameters + MaintenanceWindowAutomationParameters *MaintenanceWindowTask_MaintenanceWindowAutomationParameters `json:"MaintenanceWindowAutomationParameters,omitempty"` + + // MaintenanceWindowLambdaParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowlambdaparameters + MaintenanceWindowLambdaParameters *MaintenanceWindowTask_MaintenanceWindowLambdaParameters `json:"MaintenanceWindowLambdaParameters,omitempty"` + + // MaintenanceWindowRunCommandParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowruncommandparameters + MaintenanceWindowRunCommandParameters *MaintenanceWindowTask_MaintenanceWindowRunCommandParameters `json:"MaintenanceWindowRunCommandParameters,omitempty"` + + // MaintenanceWindowStepFunctionsParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowstepfunctionsparameters + MaintenanceWindowStepFunctionsParameters *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters `json:"MaintenanceWindowStepFunctionsParameters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *MaintenanceWindowTask_TaskInvocationParameters) AWSCloudFormationType() string { + return "AWS::SSM::MaintenanceWindowTask.TaskInvocationParameters" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_TaskInvocationParameters) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *MaintenanceWindowTask_TaskInvocationParameters) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_TaskInvocationParameters) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *MaintenanceWindowTask_TaskInvocationParameters) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_TaskInvocationParameters) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *MaintenanceWindowTask_TaskInvocationParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ssm-parameter.go b/cloudformation/ssm/aws-ssm-parameter.go similarity index 85% rename from cloudformation/resources/aws-ssm-parameter.go rename to cloudformation/ssm/aws-ssm-parameter.go index c2ba89efa7..5f50275e9d 100644 --- a/cloudformation/resources/aws-ssm-parameter.go +++ b/cloudformation/ssm/aws-ssm-parameter.go @@ -1,15 +1,16 @@ -package resources +package ssm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSSMParameter AWS CloudFormation Resource (AWS::SSM::Parameter) +// Parameter AWS CloudFormation Resource (AWS::SSM::Parameter) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html -type AWSSSMParameter struct { +type Parameter struct { // AllowedPattern AWS CloudFormation Property // Required: false @@ -62,50 +63,50 @@ type AWSSSMParameter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMParameter) AWSCloudFormationType() string { +func (r *Parameter) AWSCloudFormationType() string { return "AWS::SSM::Parameter" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMParameter) DependsOn() []string { +func (r *Parameter) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMParameter) SetDependsOn(dependencies []string) { +func (r *Parameter) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMParameter) Metadata() map[string]interface{} { +func (r *Parameter) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMParameter) SetMetadata(metadata map[string]interface{}) { +func (r *Parameter) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMParameter) DeletionPolicy() policies.DeletionPolicy { +func (r *Parameter) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Parameter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSSMParameter) MarshalJSON() ([]byte, error) { - type Properties AWSSSMParameter +func (r Parameter) MarshalJSON() ([]byte, error) { + type Properties Parameter return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSSSMParameter) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSSMParameter) UnmarshalJSON(b []byte) error { - type Properties AWSSSMParameter +func (r *Parameter) UnmarshalJSON(b []byte) error { + type Properties Parameter res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSSSMParameter) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSSMParameter(*res.Properties) + *r = Parameter(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ssm-patchbaseline.go b/cloudformation/ssm/aws-ssm-patchbaseline.go similarity index 84% rename from cloudformation/resources/aws-ssm-patchbaseline.go rename to cloudformation/ssm/aws-ssm-patchbaseline.go index 63e98aa56a..f0bc0fe071 100644 --- a/cloudformation/resources/aws-ssm-patchbaseline.go +++ b/cloudformation/ssm/aws-ssm-patchbaseline.go @@ -1,20 +1,22 @@ -package resources +package ssm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSSSMPatchBaseline AWS CloudFormation Resource (AWS::SSM::PatchBaseline) +// PatchBaseline AWS CloudFormation Resource (AWS::SSM::PatchBaseline) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html -type AWSSSMPatchBaseline struct { +type PatchBaseline struct { // ApprovalRules AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvalrules - ApprovalRules *AWSSSMPatchBaseline_RuleGroup `json:"ApprovalRules,omitempty"` + ApprovalRules *PatchBaseline_RuleGroup `json:"ApprovalRules,omitempty"` // ApprovedPatches AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSSSMPatchBaseline struct { // GlobalFilters AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-globalfilters - GlobalFilters *AWSSSMPatchBaseline_PatchFilterGroup `json:"GlobalFilters,omitempty"` + GlobalFilters *PatchBaseline_PatchFilterGroup `json:"GlobalFilters,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -69,12 +71,12 @@ type AWSSSMPatchBaseline struct { // Sources AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-sources - Sources []AWSSSMPatchBaseline_PatchSource `json:"Sources,omitempty"` + Sources []PatchBaseline_PatchSource `json:"Sources,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -87,50 +89,50 @@ type AWSSSMPatchBaseline struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline) AWSCloudFormationType() string { +func (r *PatchBaseline) AWSCloudFormationType() string { return "AWS::SSM::PatchBaseline" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline) DependsOn() []string { +func (r *PatchBaseline) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline) SetDependsOn(dependencies []string) { +func (r *PatchBaseline) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline) Metadata() map[string]interface{} { +func (r *PatchBaseline) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline) SetMetadata(metadata map[string]interface{}) { +func (r *PatchBaseline) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline) DeletionPolicy() policies.DeletionPolicy { +func (r *PatchBaseline) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PatchBaseline) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSSMPatchBaseline) MarshalJSON() ([]byte, error) { - type Properties AWSSSMPatchBaseline +func (r PatchBaseline) MarshalJSON() ([]byte, error) { + type Properties PatchBaseline return json.Marshal(&struct { Type string Properties Properties @@ -148,8 +150,8 @@ func (r AWSSSMPatchBaseline) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSSMPatchBaseline) UnmarshalJSON(b []byte) error { - type Properties AWSSSMPatchBaseline +func (r *PatchBaseline) UnmarshalJSON(b []byte) error { + type Properties PatchBaseline res := &struct { Type string Properties *Properties @@ -168,7 +170,7 @@ func (r *AWSSSMPatchBaseline) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSSMPatchBaseline(*res.Properties) + *r = PatchBaseline(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/ssm/aws-ssm-patchbaseline_patchfilter.go b/cloudformation/ssm/aws-ssm-patchbaseline_patchfilter.go new file mode 100644 index 0000000000..23952b3525 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-patchbaseline_patchfilter.go @@ -0,0 +1,70 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// PatchBaseline_PatchFilter AWS CloudFormation Resource (AWS::SSM::PatchBaseline.PatchFilter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html +type PatchBaseline_PatchFilter struct { + + // Key AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html#cfn-ssm-patchbaseline-patchfilter-key + Key string `json:"Key,omitempty"` + + // Values AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html#cfn-ssm-patchbaseline-patchfilter-values + Values []string `json:"Values,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *PatchBaseline_PatchFilter) AWSCloudFormationType() string { + return "AWS::SSM::PatchBaseline.PatchFilter" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *PatchBaseline_PatchFilter) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *PatchBaseline_PatchFilter) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *PatchBaseline_PatchFilter) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *PatchBaseline_PatchFilter) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *PatchBaseline_PatchFilter) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *PatchBaseline_PatchFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/ssm/aws-ssm-patchbaseline_patchfiltergroup.go b/cloudformation/ssm/aws-ssm-patchbaseline_patchfiltergroup.go new file mode 100644 index 0000000000..cf6b77fa8a --- /dev/null +++ b/cloudformation/ssm/aws-ssm-patchbaseline_patchfiltergroup.go @@ -0,0 +1,65 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// PatchBaseline_PatchFilterGroup AWS CloudFormation Resource (AWS::SSM::PatchBaseline.PatchFilterGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfiltergroup.html +type PatchBaseline_PatchFilterGroup struct { + + // PatchFilters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfiltergroup.html#cfn-ssm-patchbaseline-patchfiltergroup-patchfilters + PatchFilters []PatchBaseline_PatchFilter `json:"PatchFilters,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *PatchBaseline_PatchFilterGroup) AWSCloudFormationType() string { + return "AWS::SSM::PatchBaseline.PatchFilterGroup" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *PatchBaseline_PatchFilterGroup) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *PatchBaseline_PatchFilterGroup) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *PatchBaseline_PatchFilterGroup) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *PatchBaseline_PatchFilterGroup) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *PatchBaseline_PatchFilterGroup) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *PatchBaseline_PatchFilterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ssm-patchbaseline_patchsource.go b/cloudformation/ssm/aws-ssm-patchbaseline_patchsource.go similarity index 76% rename from cloudformation/resources/aws-ssm-patchbaseline_patchsource.go rename to cloudformation/ssm/aws-ssm-patchbaseline_patchsource.go index b99848c7e8..e63d25017f 100644 --- a/cloudformation/resources/aws-ssm-patchbaseline_patchsource.go +++ b/cloudformation/ssm/aws-ssm-patchbaseline_patchsource.go @@ -1,10 +1,12 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMPatchBaseline_PatchSource AWS CloudFormation Resource (AWS::SSM::PatchBaseline.PatchSource) +// PatchBaseline_PatchSource AWS CloudFormation Resource (AWS::SSM::PatchBaseline.PatchSource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html -type AWSSSMPatchBaseline_PatchSource struct { +type PatchBaseline_PatchSource struct { // Configuration AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSSSMPatchBaseline_PatchSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline_PatchSource) AWSCloudFormationType() string { +func (r *PatchBaseline_PatchSource) AWSCloudFormationType() string { return "AWS::SSM::PatchBaseline.PatchSource" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_PatchSource) DependsOn() []string { +func (r *PatchBaseline_PatchSource) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_PatchSource) SetDependsOn(dependencies []string) { +func (r *PatchBaseline_PatchSource) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_PatchSource) Metadata() map[string]interface{} { +func (r *PatchBaseline_PatchSource) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_PatchSource) SetMetadata(metadata map[string]interface{}) { +func (r *PatchBaseline_PatchSource) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_PatchSource) DeletionPolicy() policies.DeletionPolicy { +func (r *PatchBaseline_PatchSource) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_PatchSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PatchBaseline_PatchSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-patchbaseline_rule.go b/cloudformation/ssm/aws-ssm-patchbaseline_rule.go similarity index 77% rename from cloudformation/resources/aws-ssm-patchbaseline_rule.go rename to cloudformation/ssm/aws-ssm-patchbaseline_rule.go index 806f74afb8..d1cddd0f99 100644 --- a/cloudformation/resources/aws-ssm-patchbaseline_rule.go +++ b/cloudformation/ssm/aws-ssm-patchbaseline_rule.go @@ -1,10 +1,12 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMPatchBaseline_Rule AWS CloudFormation Resource (AWS::SSM::PatchBaseline.Rule) +// PatchBaseline_Rule AWS CloudFormation Resource (AWS::SSM::PatchBaseline.Rule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html -type AWSSSMPatchBaseline_Rule struct { +type PatchBaseline_Rule struct { // ApproveAfterDays AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSSSMPatchBaseline_Rule struct { // PatchFilterGroup AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-patchfiltergroup - PatchFilterGroup *AWSSSMPatchBaseline_PatchFilterGroup `json:"PatchFilterGroup,omitempty"` + PatchFilterGroup *PatchBaseline_PatchFilterGroup `json:"PatchFilterGroup,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSSSMPatchBaseline_Rule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline_Rule) AWSCloudFormationType() string { +func (r *PatchBaseline_Rule) AWSCloudFormationType() string { return "AWS::SSM::PatchBaseline.Rule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_Rule) DependsOn() []string { +func (r *PatchBaseline_Rule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMPatchBaseline_Rule) SetDependsOn(dependencies []string) { +func (r *PatchBaseline_Rule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_Rule) Metadata() map[string]interface{} { +func (r *PatchBaseline_Rule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMPatchBaseline_Rule) SetMetadata(metadata map[string]interface{}) { +func (r *PatchBaseline_Rule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_Rule) DeletionPolicy() policies.DeletionPolicy { +func (r *PatchBaseline_Rule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMPatchBaseline_Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PatchBaseline_Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/ssm/aws-ssm-patchbaseline_rulegroup.go b/cloudformation/ssm/aws-ssm-patchbaseline_rulegroup.go new file mode 100644 index 0000000000..08bee7a5f0 --- /dev/null +++ b/cloudformation/ssm/aws-ssm-patchbaseline_rulegroup.go @@ -0,0 +1,65 @@ +package ssm + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// PatchBaseline_RuleGroup AWS CloudFormation Resource (AWS::SSM::PatchBaseline.RuleGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rulegroup.html +type PatchBaseline_RuleGroup struct { + + // PatchRules AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rulegroup.html#cfn-ssm-patchbaseline-rulegroup-patchrules + PatchRules []PatchBaseline_Rule `json:"PatchRules,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *PatchBaseline_RuleGroup) AWSCloudFormationType() string { + return "AWS::SSM::PatchBaseline.RuleGroup" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *PatchBaseline_RuleGroup) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *PatchBaseline_RuleGroup) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *PatchBaseline_RuleGroup) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *PatchBaseline_RuleGroup) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *PatchBaseline_RuleGroup) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *PatchBaseline_RuleGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-ssm-resourcedatasync.go b/cloudformation/ssm/aws-ssm-resourcedatasync.go similarity index 83% rename from cloudformation/resources/aws-ssm-resourcedatasync.go rename to cloudformation/ssm/aws-ssm-resourcedatasync.go index 70a7fb3395..61b1e0ae4d 100644 --- a/cloudformation/resources/aws-ssm-resourcedatasync.go +++ b/cloudformation/ssm/aws-ssm-resourcedatasync.go @@ -1,15 +1,16 @@ -package resources +package ssm import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSSSMResourceDataSync AWS CloudFormation Resource (AWS::SSM::ResourceDataSync) +// ResourceDataSync AWS CloudFormation Resource (AWS::SSM::ResourceDataSync) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html -type AWSSSMResourceDataSync struct { +type ResourceDataSync struct { // BucketName AWS CloudFormation Property // Required: true @@ -52,50 +53,50 @@ type AWSSSMResourceDataSync struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMResourceDataSync) AWSCloudFormationType() string { +func (r *ResourceDataSync) AWSCloudFormationType() string { return "AWS::SSM::ResourceDataSync" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMResourceDataSync) DependsOn() []string { +func (r *ResourceDataSync) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSSSMResourceDataSync) SetDependsOn(dependencies []string) { +func (r *ResourceDataSync) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMResourceDataSync) Metadata() map[string]interface{} { +func (r *ResourceDataSync) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSSSMResourceDataSync) SetMetadata(metadata map[string]interface{}) { +func (r *ResourceDataSync) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMResourceDataSync) DeletionPolicy() policies.DeletionPolicy { +func (r *ResourceDataSync) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSSSMResourceDataSync) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDataSync) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSSSMResourceDataSync) MarshalJSON() ([]byte, error) { - type Properties AWSSSMResourceDataSync +func (r ResourceDataSync) MarshalJSON() ([]byte, error) { + type Properties ResourceDataSync return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSSSMResourceDataSync) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSSSMResourceDataSync) UnmarshalJSON(b []byte) error { - type Properties AWSSSMResourceDataSync +func (r *ResourceDataSync) UnmarshalJSON(b []byte) error { + type Properties ResourceDataSync res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSSSMResourceDataSync) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSSMResourceDataSync(*res.Properties) + *r = ResourceDataSync(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-stepfunctions-activity.go b/cloudformation/stepfunctions/aws-stepfunctions-activity.go similarity index 78% rename from cloudformation/resources/aws-stepfunctions-activity.go rename to cloudformation/stepfunctions/aws-stepfunctions-activity.go index f779d4b07a..87ab608631 100644 --- a/cloudformation/resources/aws-stepfunctions-activity.go +++ b/cloudformation/stepfunctions/aws-stepfunctions-activity.go @@ -1,15 +1,16 @@ -package resources +package stepfunctions import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSStepFunctionsActivity AWS CloudFormation Resource (AWS::StepFunctions::Activity) +// Activity AWS CloudFormation Resource (AWS::StepFunctions::Activity) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html -type AWSStepFunctionsActivity struct { +type Activity struct { // Name AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSStepFunctionsActivity struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html#cfn-stepfunctions-activity-tags - Tags []AWSStepFunctionsActivity_TagsEntry `json:"Tags,omitempty"` + Tags []Activity_TagsEntry `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSStepFunctionsActivity struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSStepFunctionsActivity) AWSCloudFormationType() string { +func (r *Activity) AWSCloudFormationType() string { return "AWS::StepFunctions::Activity" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSStepFunctionsActivity) DependsOn() []string { +func (r *Activity) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSStepFunctionsActivity) SetDependsOn(dependencies []string) { +func (r *Activity) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSStepFunctionsActivity) Metadata() map[string]interface{} { +func (r *Activity) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSStepFunctionsActivity) SetMetadata(metadata map[string]interface{}) { +func (r *Activity) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSStepFunctionsActivity) DeletionPolicy() policies.DeletionPolicy { +func (r *Activity) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSStepFunctionsActivity) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Activity) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSStepFunctionsActivity) MarshalJSON() ([]byte, error) { - type Properties AWSStepFunctionsActivity +func (r Activity) MarshalJSON() ([]byte, error) { + type Properties Activity return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSStepFunctionsActivity) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSStepFunctionsActivity) UnmarshalJSON(b []byte) error { - type Properties AWSStepFunctionsActivity +func (r *Activity) UnmarshalJSON(b []byte) error { + type Properties Activity res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSStepFunctionsActivity) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSStepFunctionsActivity(*res.Properties) + *r = Activity(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/stepfunctions/aws-stepfunctions-activity_tagsentry.go b/cloudformation/stepfunctions/aws-stepfunctions-activity_tagsentry.go new file mode 100644 index 0000000000..f331515b6e --- /dev/null +++ b/cloudformation/stepfunctions/aws-stepfunctions-activity_tagsentry.go @@ -0,0 +1,70 @@ +package stepfunctions + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Activity_TagsEntry AWS CloudFormation Resource (AWS::StepFunctions::Activity.TagsEntry) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html +type Activity_TagsEntry struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html#cfn-stepfunctions-activity-tagsentry-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html#cfn-stepfunctions-activity-tagsentry-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Activity_TagsEntry) AWSCloudFormationType() string { + return "AWS::StepFunctions::Activity.TagsEntry" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Activity_TagsEntry) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Activity_TagsEntry) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Activity_TagsEntry) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Activity_TagsEntry) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Activity_TagsEntry) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Activity_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-stepfunctions-statemachine.go b/cloudformation/stepfunctions/aws-stepfunctions-statemachine.go similarity index 79% rename from cloudformation/resources/aws-stepfunctions-statemachine.go rename to cloudformation/stepfunctions/aws-stepfunctions-statemachine.go index 13657452e3..f2d50c6ac2 100644 --- a/cloudformation/resources/aws-stepfunctions-statemachine.go +++ b/cloudformation/stepfunctions/aws-stepfunctions-statemachine.go @@ -1,15 +1,16 @@ -package resources +package stepfunctions import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSStepFunctionsStateMachine AWS CloudFormation Resource (AWS::StepFunctions::StateMachine) +// StateMachine AWS CloudFormation Resource (AWS::StepFunctions::StateMachine) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html -type AWSStepFunctionsStateMachine struct { +type StateMachine struct { // DefinitionString AWS CloudFormation Property // Required: true @@ -29,7 +30,7 @@ type AWSStepFunctionsStateMachine struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags - Tags []AWSStepFunctionsStateMachine_TagsEntry `json:"Tags,omitempty"` + Tags []StateMachine_TagsEntry `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSStepFunctionsStateMachine struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSStepFunctionsStateMachine) AWSCloudFormationType() string { +func (r *StateMachine) AWSCloudFormationType() string { return "AWS::StepFunctions::StateMachine" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSStepFunctionsStateMachine) DependsOn() []string { +func (r *StateMachine) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSStepFunctionsStateMachine) SetDependsOn(dependencies []string) { +func (r *StateMachine) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSStepFunctionsStateMachine) Metadata() map[string]interface{} { +func (r *StateMachine) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSStepFunctionsStateMachine) SetMetadata(metadata map[string]interface{}) { +func (r *StateMachine) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSStepFunctionsStateMachine) DeletionPolicy() policies.DeletionPolicy { +func (r *StateMachine) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSStepFunctionsStateMachine) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StateMachine) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSStepFunctionsStateMachine) MarshalJSON() ([]byte, error) { - type Properties AWSStepFunctionsStateMachine +func (r StateMachine) MarshalJSON() ([]byte, error) { + type Properties StateMachine return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSStepFunctionsStateMachine) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSStepFunctionsStateMachine) UnmarshalJSON(b []byte) error { - type Properties AWSStepFunctionsStateMachine +func (r *StateMachine) UnmarshalJSON(b []byte) error { + type Properties StateMachine res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSStepFunctionsStateMachine) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSStepFunctionsStateMachine(*res.Properties) + *r = StateMachine(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/stepfunctions/aws-stepfunctions-statemachine_tagsentry.go b/cloudformation/stepfunctions/aws-stepfunctions-statemachine_tagsentry.go new file mode 100644 index 0000000000..9e935de6f5 --- /dev/null +++ b/cloudformation/stepfunctions/aws-stepfunctions-statemachine_tagsentry.go @@ -0,0 +1,70 @@ +package stepfunctions + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// StateMachine_TagsEntry AWS CloudFormation Resource (AWS::StepFunctions::StateMachine.TagsEntry) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html +type StateMachine_TagsEntry struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html#cfn-stepfunctions-statemachine-tagsentry-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html#cfn-stepfunctions-statemachine-tagsentry-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *StateMachine_TagsEntry) AWSCloudFormationType() string { + return "AWS::StepFunctions::StateMachine.TagsEntry" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StateMachine_TagsEntry) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *StateMachine_TagsEntry) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StateMachine_TagsEntry) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *StateMachine_TagsEntry) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StateMachine_TagsEntry) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *StateMachine_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/tags/tag.go b/cloudformation/tags/tag.go new file mode 100644 index 0000000000..a8daca9ca8 --- /dev/null +++ b/cloudformation/tags/tag.go @@ -0,0 +1,68 @@ +package tags + +import "github.com/awslabs/goformation/v3/cloudformation/policies" + +// Tag AWS CloudFormation Resource (Tag) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html +type Tag struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-key + Key string `json:"Key,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Tag) AWSCloudFormationType() string { + return "Tag" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Tag) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Tag) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Tag) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Tag) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Tag) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Tag) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/template.go b/cloudformation/template.go index bacefde5c6..52e65fb7aa 100644 --- a/cloudformation/template.go +++ b/cloudformation/template.go @@ -5,7 +5,7 @@ import ( "fmt" "strings" - "github.com/awslabs/goformation/v2/intrinsics" + "github.com/awslabs/goformation/v3/intrinsics" "github.com/sanathkr/yaml" ) diff --git a/cloudformation/resources/aws-transfer-server.go b/cloudformation/transfer/aws-transfer-server.go similarity index 80% rename from cloudformation/resources/aws-transfer-server.go rename to cloudformation/transfer/aws-transfer-server.go index ab029359bb..117f897283 100644 --- a/cloudformation/resources/aws-transfer-server.go +++ b/cloudformation/transfer/aws-transfer-server.go @@ -1,20 +1,22 @@ -package resources +package transfer import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSTransferServer AWS CloudFormation Resource (AWS::Transfer::Server) +// Server AWS CloudFormation Resource (AWS::Transfer::Server) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html -type AWSTransferServer struct { +type Server struct { // EndpointDetails AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-endpointdetails - EndpointDetails *AWSTransferServer_EndpointDetails `json:"EndpointDetails,omitempty"` + EndpointDetails *Server_EndpointDetails `json:"EndpointDetails,omitempty"` // EndpointType AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSTransferServer struct { // IdentityProviderDetails AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-identityproviderdetails - IdentityProviderDetails *AWSTransferServer_IdentityProviderDetails `json:"IdentityProviderDetails,omitempty"` + IdentityProviderDetails *Server_IdentityProviderDetails `json:"IdentityProviderDetails,omitempty"` // IdentityProviderType AWS CloudFormation Property // Required: false @@ -39,7 +41,7 @@ type AWSTransferServer struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +54,50 @@ type AWSTransferServer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSTransferServer) AWSCloudFormationType() string { +func (r *Server) AWSCloudFormationType() string { return "AWS::Transfer::Server" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferServer) DependsOn() []string { +func (r *Server) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferServer) SetDependsOn(dependencies []string) { +func (r *Server) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferServer) Metadata() map[string]interface{} { +func (r *Server) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferServer) SetMetadata(metadata map[string]interface{}) { +func (r *Server) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferServer) DeletionPolicy() policies.DeletionPolicy { +func (r *Server) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferServer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Server) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSTransferServer) MarshalJSON() ([]byte, error) { - type Properties AWSTransferServer +func (r Server) MarshalJSON() ([]byte, error) { + type Properties Server return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +115,8 @@ func (r AWSTransferServer) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSTransferServer) UnmarshalJSON(b []byte) error { - type Properties AWSTransferServer +func (r *Server) UnmarshalJSON(b []byte) error { + type Properties Server res := &struct { Type string Properties *Properties @@ -133,7 +135,7 @@ func (r *AWSTransferServer) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSTransferServer(*res.Properties) + *r = Server(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/transfer/aws-transfer-server_endpointdetails.go b/cloudformation/transfer/aws-transfer-server_endpointdetails.go new file mode 100644 index 0000000000..b5a26b5e79 --- /dev/null +++ b/cloudformation/transfer/aws-transfer-server_endpointdetails.go @@ -0,0 +1,65 @@ +package transfer + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Server_EndpointDetails AWS CloudFormation Resource (AWS::Transfer::Server.EndpointDetails) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html +type Server_EndpointDetails struct { + + // VpcEndpointId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html#cfn-transfer-server-endpointdetails-vpcendpointid + VpcEndpointId string `json:"VpcEndpointId,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Server_EndpointDetails) AWSCloudFormationType() string { + return "AWS::Transfer::Server.EndpointDetails" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Server_EndpointDetails) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Server_EndpointDetails) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Server_EndpointDetails) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Server_EndpointDetails) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Server_EndpointDetails) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Server_EndpointDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/transfer/aws-transfer-server_identityproviderdetails.go b/cloudformation/transfer/aws-transfer-server_identityproviderdetails.go new file mode 100644 index 0000000000..7b094ba848 --- /dev/null +++ b/cloudformation/transfer/aws-transfer-server_identityproviderdetails.go @@ -0,0 +1,70 @@ +package transfer + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// Server_IdentityProviderDetails AWS CloudFormation Resource (AWS::Transfer::Server.IdentityProviderDetails) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html +type Server_IdentityProviderDetails struct { + + // InvocationRole AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html#cfn-transfer-server-identityproviderdetails-invocationrole + InvocationRole string `json:"InvocationRole,omitempty"` + + // Url AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html#cfn-transfer-server-identityproviderdetails-url + Url string `json:"Url,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Server_IdentityProviderDetails) AWSCloudFormationType() string { + return "AWS::Transfer::Server.IdentityProviderDetails" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Server_IdentityProviderDetails) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *Server_IdentityProviderDetails) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Server_IdentityProviderDetails) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *Server_IdentityProviderDetails) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Server_IdentityProviderDetails) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *Server_IdentityProviderDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-transfer-user.go b/cloudformation/transfer/aws-transfer-user.go similarity index 83% rename from cloudformation/resources/aws-transfer-user.go rename to cloudformation/transfer/aws-transfer-user.go index 76e092b161..0c9abc542e 100644 --- a/cloudformation/resources/aws-transfer-user.go +++ b/cloudformation/transfer/aws-transfer-user.go @@ -1,15 +1,17 @@ -package resources +package transfer import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSTransferUser AWS CloudFormation Resource (AWS::Transfer::User) +// User AWS CloudFormation Resource (AWS::Transfer::User) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html -type AWSTransferUser struct { +type User struct { // HomeDirectory AWS CloudFormation Property // Required: false @@ -34,12 +36,12 @@ type AWSTransferUser struct { // SshPublicKeys AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-sshpublickeys - SshPublicKeys []AWSTransferUser_SshPublicKey `json:"SshPublicKeys,omitempty"` + SshPublicKeys []User_SshPublicKey `json:"SshPublicKeys,omitempty"` // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // UserName AWS CloudFormation Property // Required: true @@ -57,50 +59,50 @@ type AWSTransferUser struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSTransferUser) AWSCloudFormationType() string { +func (r *User) AWSCloudFormationType() string { return "AWS::Transfer::User" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferUser) DependsOn() []string { +func (r *User) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSTransferUser) SetDependsOn(dependencies []string) { +func (r *User) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferUser) Metadata() map[string]interface{} { +func (r *User) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSTransferUser) SetMetadata(metadata map[string]interface{}) { +func (r *User) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferUser) DeletionPolicy() policies.DeletionPolicy { +func (r *User) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSTransferUser) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *User) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSTransferUser) MarshalJSON() ([]byte, error) { - type Properties AWSTransferUser +func (r User) MarshalJSON() ([]byte, error) { + type Properties User return json.Marshal(&struct { Type string Properties Properties @@ -118,8 +120,8 @@ func (r AWSTransferUser) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSTransferUser) UnmarshalJSON(b []byte) error { - type Properties AWSTransferUser +func (r *User) UnmarshalJSON(b []byte) error { + type Properties User res := &struct { Type string Properties *Properties @@ -138,7 +140,7 @@ func (r *AWSTransferUser) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSTransferUser(*res.Properties) + *r = User(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/transfer/aws-transfer-user_sshpublickey.go b/cloudformation/transfer/aws-transfer-user_sshpublickey.go new file mode 100644 index 0000000000..0c71983d9e --- /dev/null +++ b/cloudformation/transfer/aws-transfer-user_sshpublickey.go @@ -0,0 +1,60 @@ +package transfer + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// User_SshPublicKey AWS CloudFormation Resource (AWS::Transfer::User.SshPublicKey) +// See: +type User_SshPublicKey struct { + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *User_SshPublicKey) AWSCloudFormationType() string { + return "AWS::Transfer::User.SshPublicKey" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *User_SshPublicKey) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *User_SshPublicKey) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *User_SshPublicKey) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *User_SshPublicKey) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *User_SshPublicKey) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *User_SshPublicKey) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/utils/utils.go b/cloudformation/utils/utils.go new file mode 100644 index 0000000000..f220a5ae28 --- /dev/null +++ b/cloudformation/utils/utils.go @@ -0,0 +1,37 @@ +package utils + +import ( + "encoding/json" +) + +// ByJSONLength implements the sort interface and enables sorting by JSON length +type ByJSONLength []interface{} + +func (s ByJSONLength) Len() int { + return len(s) +} + +func (s ByJSONLength) Swap(i, j int) { + s[i], s[j] = s[j], s[i] +} + +func (s ByJSONLength) Less(i, j int) bool { + // Nil is always at the end + if s[i] == nil { + return false + } + if s[j] == nil { + return true + } + jsoni, _ := json.Marshal(s[i]) + jsonj, _ := json.Marshal(s[j]) + + if jsoni == nil { + return false + } + if jsonj == nil { + return true + } + + return len(jsoni) > len(jsonj) +} diff --git a/cloudformation/resources/aws-waf-bytematchset.go b/cloudformation/waf/aws-waf-bytematchset.go similarity index 79% rename from cloudformation/resources/aws-waf-bytematchset.go rename to cloudformation/waf/aws-waf-bytematchset.go index 66c29acead..5fa005ba3a 100644 --- a/cloudformation/resources/aws-waf-bytematchset.go +++ b/cloudformation/waf/aws-waf-bytematchset.go @@ -1,20 +1,21 @@ -package resources +package waf import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFByteMatchSet AWS CloudFormation Resource (AWS::WAF::ByteMatchSet) +// ByteMatchSet AWS CloudFormation Resource (AWS::WAF::ByteMatchSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html -type AWSWAFByteMatchSet struct { +type ByteMatchSet struct { // ByteMatchTuples AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html#cfn-waf-bytematchset-bytematchtuples - ByteMatchTuples []AWSWAFByteMatchSet_ByteMatchTuple `json:"ByteMatchTuples,omitempty"` + ByteMatchTuples []ByteMatchSet_ByteMatchTuple `json:"ByteMatchTuples,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSWAFByteMatchSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFByteMatchSet) AWSCloudFormationType() string { +func (r *ByteMatchSet) AWSCloudFormationType() string { return "AWS::WAF::ByteMatchSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFByteMatchSet) DependsOn() []string { +func (r *ByteMatchSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFByteMatchSet) SetDependsOn(dependencies []string) { +func (r *ByteMatchSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFByteMatchSet) Metadata() map[string]interface{} { +func (r *ByteMatchSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFByteMatchSet) SetMetadata(metadata map[string]interface{}) { +func (r *ByteMatchSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFByteMatchSet) DeletionPolicy() policies.DeletionPolicy { +func (r *ByteMatchSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFByteMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ByteMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFByteMatchSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFByteMatchSet +func (r ByteMatchSet) MarshalJSON() ([]byte, error) { + type Properties ByteMatchSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFByteMatchSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFByteMatchSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFByteMatchSet +func (r *ByteMatchSet) UnmarshalJSON(b []byte) error { + type Properties ByteMatchSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFByteMatchSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFByteMatchSet(*res.Properties) + *r = ByteMatchSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-waf-bytematchset_bytematchtuple.go b/cloudformation/waf/aws-waf-bytematchset_bytematchtuple.go similarity index 78% rename from cloudformation/resources/aws-waf-bytematchset_bytematchtuple.go rename to cloudformation/waf/aws-waf-bytematchset_bytematchtuple.go index d1bc8cd260..69d6608a2e 100644 --- a/cloudformation/resources/aws-waf-bytematchset_bytematchtuple.go +++ b/cloudformation/waf/aws-waf-bytematchset_bytematchtuple.go @@ -1,15 +1,17 @@ -package resources +package waf -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFByteMatchSet_ByteMatchTuple AWS CloudFormation Resource (AWS::WAF::ByteMatchSet.ByteMatchTuple) +// ByteMatchSet_ByteMatchTuple AWS CloudFormation Resource (AWS::WAF::ByteMatchSet.ByteMatchTuple) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html -type AWSWAFByteMatchSet_ByteMatchTuple struct { +type ByteMatchSet_ByteMatchTuple struct { // FieldToMatch AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch - FieldToMatch *AWSWAFByteMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + FieldToMatch *ByteMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` // PositionalConstraint AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSWAFByteMatchSet_ByteMatchTuple struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFByteMatchSet_ByteMatchTuple) AWSCloudFormationType() string { +func (r *ByteMatchSet_ByteMatchTuple) AWSCloudFormationType() string { return "AWS::WAF::ByteMatchSet.ByteMatchTuple" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFByteMatchSet_ByteMatchTuple) DependsOn() []string { +func (r *ByteMatchSet_ByteMatchTuple) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFByteMatchSet_ByteMatchTuple) SetDependsOn(dependencies []string) { +func (r *ByteMatchSet_ByteMatchTuple) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFByteMatchSet_ByteMatchTuple) Metadata() map[string]interface{} { +func (r *ByteMatchSet_ByteMatchTuple) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFByteMatchSet_ByteMatchTuple) SetMetadata(metadata map[string]interface{}) { +func (r *ByteMatchSet_ByteMatchTuple) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFByteMatchSet_ByteMatchTuple) DeletionPolicy() policies.DeletionPolicy { +func (r *ByteMatchSet_ByteMatchTuple) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFByteMatchSet_ByteMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ByteMatchSet_ByteMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/waf/aws-waf-bytematchset_fieldtomatch.go b/cloudformation/waf/aws-waf-bytematchset_fieldtomatch.go new file mode 100644 index 0000000000..42cc2f9e59 --- /dev/null +++ b/cloudformation/waf/aws-waf-bytematchset_fieldtomatch.go @@ -0,0 +1,70 @@ +package waf + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ByteMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::ByteMatchSet.FieldToMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html +type ByteMatchSet_FieldToMatch struct { + + // Data AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-data + Data string `json:"Data,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ByteMatchSet_FieldToMatch) AWSCloudFormationType() string { + return "AWS::WAF::ByteMatchSet.FieldToMatch" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ByteMatchSet_FieldToMatch) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ByteMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ByteMatchSet_FieldToMatch) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ByteMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ByteMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ByteMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-waf-ipset.go b/cloudformation/waf/aws-waf-ipset.go similarity index 80% rename from cloudformation/resources/aws-waf-ipset.go rename to cloudformation/waf/aws-waf-ipset.go index 4925c2715c..d0bd2776c7 100644 --- a/cloudformation/resources/aws-waf-ipset.go +++ b/cloudformation/waf/aws-waf-ipset.go @@ -1,20 +1,21 @@ -package resources +package waf import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFIPSet AWS CloudFormation Resource (AWS::WAF::IPSet) +// IPSet AWS CloudFormation Resource (AWS::WAF::IPSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html -type AWSWAFIPSet struct { +type IPSet struct { // IPSetDescriptors AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html#cfn-waf-ipset-ipsetdescriptors - IPSetDescriptors []AWSWAFIPSet_IPSetDescriptor `json:"IPSetDescriptors,omitempty"` + IPSetDescriptors []IPSet_IPSetDescriptor `json:"IPSetDescriptors,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSWAFIPSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFIPSet) AWSCloudFormationType() string { +func (r *IPSet) AWSCloudFormationType() string { return "AWS::WAF::IPSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFIPSet) DependsOn() []string { +func (r *IPSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFIPSet) SetDependsOn(dependencies []string) { +func (r *IPSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFIPSet) Metadata() map[string]interface{} { +func (r *IPSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFIPSet) SetMetadata(metadata map[string]interface{}) { +func (r *IPSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFIPSet) DeletionPolicy() policies.DeletionPolicy { +func (r *IPSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFIPSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IPSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFIPSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFIPSet +func (r IPSet) MarshalJSON() ([]byte, error) { + type Properties IPSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFIPSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFIPSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFIPSet +func (r *IPSet) UnmarshalJSON(b []byte) error { + type Properties IPSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFIPSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFIPSet(*res.Properties) + *r = IPSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-waf-ipset_ipsetdescriptor.go b/cloudformation/waf/aws-waf-ipset_ipsetdescriptor.go similarity index 75% rename from cloudformation/resources/aws-waf-ipset_ipsetdescriptor.go rename to cloudformation/waf/aws-waf-ipset_ipsetdescriptor.go index d792ea9763..575a3e2cd6 100644 --- a/cloudformation/resources/aws-waf-ipset_ipsetdescriptor.go +++ b/cloudformation/waf/aws-waf-ipset_ipsetdescriptor.go @@ -1,10 +1,12 @@ -package resources +package waf -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFIPSet_IPSetDescriptor AWS CloudFormation Resource (AWS::WAF::IPSet.IPSetDescriptor) +// IPSet_IPSetDescriptor AWS CloudFormation Resource (AWS::WAF::IPSet.IPSetDescriptor) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html -type AWSWAFIPSet_IPSetDescriptor struct { +type IPSet_IPSetDescriptor struct { // Type AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSWAFIPSet_IPSetDescriptor struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFIPSet_IPSetDescriptor) AWSCloudFormationType() string { +func (r *IPSet_IPSetDescriptor) AWSCloudFormationType() string { return "AWS::WAF::IPSet.IPSetDescriptor" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFIPSet_IPSetDescriptor) DependsOn() []string { +func (r *IPSet_IPSetDescriptor) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFIPSet_IPSetDescriptor) SetDependsOn(dependencies []string) { +func (r *IPSet_IPSetDescriptor) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFIPSet_IPSetDescriptor) Metadata() map[string]interface{} { +func (r *IPSet_IPSetDescriptor) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFIPSet_IPSetDescriptor) SetMetadata(metadata map[string]interface{}) { +func (r *IPSet_IPSetDescriptor) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFIPSet_IPSetDescriptor) DeletionPolicy() policies.DeletionPolicy { +func (r *IPSet_IPSetDescriptor) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFIPSet_IPSetDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IPSet_IPSetDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-waf-rule.go b/cloudformation/waf/aws-waf-rule.go similarity index 82% rename from cloudformation/resources/aws-waf-rule.go rename to cloudformation/waf/aws-waf-rule.go index 08736e82fc..c582102f12 100644 --- a/cloudformation/resources/aws-waf-rule.go +++ b/cloudformation/waf/aws-waf-rule.go @@ -1,15 +1,16 @@ -package resources +package waf import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRule AWS CloudFormation Resource (AWS::WAF::Rule) +// Rule AWS CloudFormation Resource (AWS::WAF::Rule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html -type AWSWAFRule struct { +type Rule struct { // MetricName AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSWAFRule struct { // Predicates AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-predicates - Predicates []AWSWAFRule_Predicate `json:"Predicates,omitempty"` + Predicates []Rule_Predicate `json:"Predicates,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSWAFRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRule) AWSCloudFormationType() string { +func (r *Rule) AWSCloudFormationType() string { return "AWS::WAF::Rule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRule) DependsOn() []string { +func (r *Rule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRule) SetDependsOn(dependencies []string) { +func (r *Rule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRule) Metadata() map[string]interface{} { +func (r *Rule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRule) SetMetadata(metadata map[string]interface{}) { +func (r *Rule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRule) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRule +func (r Rule) MarshalJSON() ([]byte, error) { + type Properties Rule return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSWAFRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRule) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRule +func (r *Rule) UnmarshalJSON(b []byte) error { + type Properties Rule res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSWAFRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRule(*res.Properties) + *r = Rule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-waf-rule_predicate.go b/cloudformation/waf/aws-waf-rule_predicate.go similarity index 78% rename from cloudformation/resources/aws-waf-rule_predicate.go rename to cloudformation/waf/aws-waf-rule_predicate.go index 3b7c49f4e0..c9e80f4718 100644 --- a/cloudformation/resources/aws-waf-rule_predicate.go +++ b/cloudformation/waf/aws-waf-rule_predicate.go @@ -1,10 +1,12 @@ -package resources +package waf -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFRule_Predicate AWS CloudFormation Resource (AWS::WAF::Rule.Predicate) +// Rule_Predicate AWS CloudFormation Resource (AWS::WAF::Rule.Predicate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html -type AWSWAFRule_Predicate struct { +type Rule_Predicate struct { // DataId AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSWAFRule_Predicate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRule_Predicate) AWSCloudFormationType() string { +func (r *Rule_Predicate) AWSCloudFormationType() string { return "AWS::WAF::Rule.Predicate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRule_Predicate) DependsOn() []string { +func (r *Rule_Predicate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRule_Predicate) SetDependsOn(dependencies []string) { +func (r *Rule_Predicate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRule_Predicate) Metadata() map[string]interface{} { +func (r *Rule_Predicate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRule_Predicate) SetMetadata(metadata map[string]interface{}) { +func (r *Rule_Predicate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRule_Predicate) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule_Predicate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRule_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-waf-sizeconstraintset.go b/cloudformation/waf/aws-waf-sizeconstraintset.go similarity index 78% rename from cloudformation/resources/aws-waf-sizeconstraintset.go rename to cloudformation/waf/aws-waf-sizeconstraintset.go index acc1edf95c..5c0ac3d77e 100644 --- a/cloudformation/resources/aws-waf-sizeconstraintset.go +++ b/cloudformation/waf/aws-waf-sizeconstraintset.go @@ -1,15 +1,16 @@ -package resources +package waf import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFSizeConstraintSet AWS CloudFormation Resource (AWS::WAF::SizeConstraintSet) +// SizeConstraintSet AWS CloudFormation Resource (AWS::WAF::SizeConstraintSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html -type AWSWAFSizeConstraintSet struct { +type SizeConstraintSet struct { // Name AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSWAFSizeConstraintSet struct { // SizeConstraints AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html#cfn-waf-sizeconstraintset-sizeconstraints - SizeConstraints []AWSWAFSizeConstraintSet_SizeConstraint `json:"SizeConstraints,omitempty"` + SizeConstraints []SizeConstraintSet_SizeConstraint `json:"SizeConstraints,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSWAFSizeConstraintSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSizeConstraintSet) AWSCloudFormationType() string { +func (r *SizeConstraintSet) AWSCloudFormationType() string { return "AWS::WAF::SizeConstraintSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSizeConstraintSet) DependsOn() []string { +func (r *SizeConstraintSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSizeConstraintSet) SetDependsOn(dependencies []string) { +func (r *SizeConstraintSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSizeConstraintSet) Metadata() map[string]interface{} { +func (r *SizeConstraintSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSizeConstraintSet) SetMetadata(metadata map[string]interface{}) { +func (r *SizeConstraintSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSizeConstraintSet) DeletionPolicy() policies.DeletionPolicy { +func (r *SizeConstraintSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSizeConstraintSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SizeConstraintSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFSizeConstraintSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFSizeConstraintSet +func (r SizeConstraintSet) MarshalJSON() ([]byte, error) { + type Properties SizeConstraintSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFSizeConstraintSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFSizeConstraintSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFSizeConstraintSet +func (r *SizeConstraintSet) UnmarshalJSON(b []byte) error { + type Properties SizeConstraintSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFSizeConstraintSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFSizeConstraintSet(*res.Properties) + *r = SizeConstraintSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/waf/aws-waf-sizeconstraintset_fieldtomatch.go b/cloudformation/waf/aws-waf-sizeconstraintset_fieldtomatch.go new file mode 100644 index 0000000000..a8a120c66d --- /dev/null +++ b/cloudformation/waf/aws-waf-sizeconstraintset_fieldtomatch.go @@ -0,0 +1,70 @@ +package waf + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SizeConstraintSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::SizeConstraintSet.FieldToMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html +type SizeConstraintSet_FieldToMatch struct { + + // Data AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data + Data string `json:"Data,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SizeConstraintSet_FieldToMatch) AWSCloudFormationType() string { + return "AWS::WAF::SizeConstraintSet.FieldToMatch" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SizeConstraintSet_FieldToMatch) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SizeConstraintSet_FieldToMatch) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SizeConstraintSet_FieldToMatch) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SizeConstraintSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SizeConstraintSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SizeConstraintSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-waf-sizeconstraintset_sizeconstraint.go b/cloudformation/waf/aws-waf-sizeconstraintset_sizeconstraint.go similarity index 75% rename from cloudformation/resources/aws-waf-sizeconstraintset_sizeconstraint.go rename to cloudformation/waf/aws-waf-sizeconstraintset_sizeconstraint.go index 487ae396db..a9ec0970c0 100644 --- a/cloudformation/resources/aws-waf-sizeconstraintset_sizeconstraint.go +++ b/cloudformation/waf/aws-waf-sizeconstraintset_sizeconstraint.go @@ -1,10 +1,12 @@ -package resources +package waf -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFSizeConstraintSet_SizeConstraint AWS CloudFormation Resource (AWS::WAF::SizeConstraintSet.SizeConstraint) +// SizeConstraintSet_SizeConstraint AWS CloudFormation Resource (AWS::WAF::SizeConstraintSet.SizeConstraint) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html -type AWSWAFSizeConstraintSet_SizeConstraint struct { +type SizeConstraintSet_SizeConstraint struct { // ComparisonOperator AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSWAFSizeConstraintSet_SizeConstraint struct { // FieldToMatch AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch - FieldToMatch *AWSWAFSizeConstraintSet_FieldToMatch `json:"FieldToMatch,omitempty"` + FieldToMatch *SizeConstraintSet_FieldToMatch `json:"FieldToMatch,omitempty"` // Size AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSWAFSizeConstraintSet_SizeConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSizeConstraintSet_SizeConstraint) AWSCloudFormationType() string { +func (r *SizeConstraintSet_SizeConstraint) AWSCloudFormationType() string { return "AWS::WAF::SizeConstraintSet.SizeConstraint" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSizeConstraintSet_SizeConstraint) DependsOn() []string { +func (r *SizeConstraintSet_SizeConstraint) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSizeConstraintSet_SizeConstraint) SetDependsOn(dependencies []string) { +func (r *SizeConstraintSet_SizeConstraint) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSizeConstraintSet_SizeConstraint) Metadata() map[string]interface{} { +func (r *SizeConstraintSet_SizeConstraint) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSizeConstraintSet_SizeConstraint) SetMetadata(metadata map[string]interface{}) { +func (r *SizeConstraintSet_SizeConstraint) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSizeConstraintSet_SizeConstraint) DeletionPolicy() policies.DeletionPolicy { +func (r *SizeConstraintSet_SizeConstraint) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSizeConstraintSet_SizeConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SizeConstraintSet_SizeConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-waf-sqlinjectionmatchset.go b/cloudformation/waf/aws-waf-sqlinjectionmatchset.go similarity index 76% rename from cloudformation/resources/aws-waf-sqlinjectionmatchset.go rename to cloudformation/waf/aws-waf-sqlinjectionmatchset.go index 7ed839e604..27e72aa175 100644 --- a/cloudformation/resources/aws-waf-sqlinjectionmatchset.go +++ b/cloudformation/waf/aws-waf-sqlinjectionmatchset.go @@ -1,15 +1,16 @@ -package resources +package waf import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFSqlInjectionMatchSet AWS CloudFormation Resource (AWS::WAF::SqlInjectionMatchSet) +// SqlInjectionMatchSet AWS CloudFormation Resource (AWS::WAF::SqlInjectionMatchSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html -type AWSWAFSqlInjectionMatchSet struct { +type SqlInjectionMatchSet struct { // Name AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSWAFSqlInjectionMatchSet struct { // SqlInjectionMatchTuples AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples - SqlInjectionMatchTuples []AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple `json:"SqlInjectionMatchTuples,omitempty"` + SqlInjectionMatchTuples []SqlInjectionMatchSet_SqlInjectionMatchTuple `json:"SqlInjectionMatchTuples,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSWAFSqlInjectionMatchSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSqlInjectionMatchSet) AWSCloudFormationType() string { +func (r *SqlInjectionMatchSet) AWSCloudFormationType() string { return "AWS::WAF::SqlInjectionMatchSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSqlInjectionMatchSet) DependsOn() []string { +func (r *SqlInjectionMatchSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFSqlInjectionMatchSet) SetDependsOn(dependencies []string) { +func (r *SqlInjectionMatchSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSqlInjectionMatchSet) Metadata() map[string]interface{} { +func (r *SqlInjectionMatchSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFSqlInjectionMatchSet) SetMetadata(metadata map[string]interface{}) { +func (r *SqlInjectionMatchSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSqlInjectionMatchSet) DeletionPolicy() policies.DeletionPolicy { +func (r *SqlInjectionMatchSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFSqlInjectionMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SqlInjectionMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFSqlInjectionMatchSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFSqlInjectionMatchSet +func (r SqlInjectionMatchSet) MarshalJSON() ([]byte, error) { + type Properties SqlInjectionMatchSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFSqlInjectionMatchSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFSqlInjectionMatchSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFSqlInjectionMatchSet +func (r *SqlInjectionMatchSet) UnmarshalJSON(b []byte) error { + type Properties SqlInjectionMatchSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFSqlInjectionMatchSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFSqlInjectionMatchSet(*res.Properties) + *r = SqlInjectionMatchSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/waf/aws-waf-sqlinjectionmatchset_fieldtomatch.go b/cloudformation/waf/aws-waf-sqlinjectionmatchset_fieldtomatch.go new file mode 100644 index 0000000000..5ca1f62590 --- /dev/null +++ b/cloudformation/waf/aws-waf-sqlinjectionmatchset_fieldtomatch.go @@ -0,0 +1,70 @@ +package waf + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SqlInjectionMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::SqlInjectionMatchSet.FieldToMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html +type SqlInjectionMatchSet_FieldToMatch struct { + + // Data AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data + Data string `json:"Data,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SqlInjectionMatchSet_FieldToMatch) AWSCloudFormationType() string { + return "AWS::WAF::SqlInjectionMatchSet.FieldToMatch" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SqlInjectionMatchSet_FieldToMatch) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SqlInjectionMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SqlInjectionMatchSet_FieldToMatch) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SqlInjectionMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SqlInjectionMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SqlInjectionMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/waf/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go b/cloudformation/waf/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go new file mode 100644 index 0000000000..2ca10e26f0 --- /dev/null +++ b/cloudformation/waf/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go @@ -0,0 +1,70 @@ +package waf + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SqlInjectionMatchSet_SqlInjectionMatchTuple AWS CloudFormation Resource (AWS::WAF::SqlInjectionMatchSet.SqlInjectionMatchTuple) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html +type SqlInjectionMatchSet_SqlInjectionMatchTuple struct { + + // FieldToMatch AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-fieldtomatch + FieldToMatch *SqlInjectionMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + + // TextTransformation AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-texttransformation + TextTransformation string `json:"TextTransformation,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) AWSCloudFormationType() string { + return "AWS::WAF::SqlInjectionMatchSet.SqlInjectionMatchTuple" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-waf-webacl.go b/cloudformation/waf/aws-waf-webacl.go similarity index 81% rename from cloudformation/resources/aws-waf-webacl.go rename to cloudformation/waf/aws-waf-webacl.go index a4856070ea..66b733d84d 100644 --- a/cloudformation/resources/aws-waf-webacl.go +++ b/cloudformation/waf/aws-waf-webacl.go @@ -1,20 +1,21 @@ -package resources +package waf import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFWebACL AWS CloudFormation Resource (AWS::WAF::WebACL) +// WebACL AWS CloudFormation Resource (AWS::WAF::WebACL) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html -type AWSWAFWebACL struct { +type WebACL struct { // DefaultAction AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-defaultaction - DefaultAction *AWSWAFWebACL_WafAction `json:"DefaultAction,omitempty"` + DefaultAction *WebACL_WafAction `json:"DefaultAction,omitempty"` // MetricName AWS CloudFormation Property // Required: true @@ -29,7 +30,7 @@ type AWSWAFWebACL struct { // Rules AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-rules - Rules []AWSWAFWebACL_ActivatedRule `json:"Rules,omitempty"` + Rules []WebACL_ActivatedRule `json:"Rules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSWAFWebACL struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFWebACL) AWSCloudFormationType() string { +func (r *WebACL) AWSCloudFormationType() string { return "AWS::WAF::WebACL" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFWebACL) DependsOn() []string { +func (r *WebACL) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFWebACL) SetDependsOn(dependencies []string) { +func (r *WebACL) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFWebACL) Metadata() map[string]interface{} { +func (r *WebACL) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFWebACL) SetMetadata(metadata map[string]interface{}) { +func (r *WebACL) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFWebACL) DeletionPolicy() policies.DeletionPolicy { +func (r *WebACL) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFWebACL) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *WebACL) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFWebACL) MarshalJSON() ([]byte, error) { - type Properties AWSWAFWebACL +func (r WebACL) MarshalJSON() ([]byte, error) { + type Properties WebACL return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSWAFWebACL) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFWebACL) UnmarshalJSON(b []byte) error { - type Properties AWSWAFWebACL +func (r *WebACL) UnmarshalJSON(b []byte) error { + type Properties WebACL res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSWAFWebACL) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFWebACL(*res.Properties) + *r = WebACL(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-waf-webacl_activatedrule.go b/cloudformation/waf/aws-waf-webacl_activatedrule.go similarity index 75% rename from cloudformation/resources/aws-waf-webacl_activatedrule.go rename to cloudformation/waf/aws-waf-webacl_activatedrule.go index c515760a65..980d7d09ec 100644 --- a/cloudformation/resources/aws-waf-webacl_activatedrule.go +++ b/cloudformation/waf/aws-waf-webacl_activatedrule.go @@ -1,15 +1,17 @@ -package resources +package waf -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFWebACL_ActivatedRule AWS CloudFormation Resource (AWS::WAF::WebACL.ActivatedRule) +// WebACL_ActivatedRule AWS CloudFormation Resource (AWS::WAF::WebACL.ActivatedRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html -type AWSWAFWebACL_ActivatedRule struct { +type WebACL_ActivatedRule struct { // Action AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-action - Action *AWSWAFWebACL_WafAction `json:"Action,omitempty"` + Action *WebACL_WafAction `json:"Action,omitempty"` // Priority AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSWAFWebACL_ActivatedRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFWebACL_ActivatedRule) AWSCloudFormationType() string { +func (r *WebACL_ActivatedRule) AWSCloudFormationType() string { return "AWS::WAF::WebACL.ActivatedRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFWebACL_ActivatedRule) DependsOn() []string { +func (r *WebACL_ActivatedRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFWebACL_ActivatedRule) SetDependsOn(dependencies []string) { +func (r *WebACL_ActivatedRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFWebACL_ActivatedRule) Metadata() map[string]interface{} { +func (r *WebACL_ActivatedRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFWebACL_ActivatedRule) SetMetadata(metadata map[string]interface{}) { +func (r *WebACL_ActivatedRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFWebACL_ActivatedRule) DeletionPolicy() policies.DeletionPolicy { +func (r *WebACL_ActivatedRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFWebACL_ActivatedRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *WebACL_ActivatedRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/waf/aws-waf-webacl_wafaction.go b/cloudformation/waf/aws-waf-webacl_wafaction.go new file mode 100644 index 0000000000..2620e01577 --- /dev/null +++ b/cloudformation/waf/aws-waf-webacl_wafaction.go @@ -0,0 +1,65 @@ +package waf + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// WebACL_WafAction AWS CloudFormation Resource (AWS::WAF::WebACL.WafAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html +type WebACL_WafAction struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html#cfn-waf-webacl-action-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *WebACL_WafAction) AWSCloudFormationType() string { + return "AWS::WAF::WebACL.WafAction" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *WebACL_WafAction) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *WebACL_WafAction) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *WebACL_WafAction) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *WebACL_WafAction) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *WebACL_WafAction) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *WebACL_WafAction) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-waf-xssmatchset.go b/cloudformation/waf/aws-waf-xssmatchset.go similarity index 79% rename from cloudformation/resources/aws-waf-xssmatchset.go rename to cloudformation/waf/aws-waf-xssmatchset.go index b80fce559f..269ace347e 100644 --- a/cloudformation/resources/aws-waf-xssmatchset.go +++ b/cloudformation/waf/aws-waf-xssmatchset.go @@ -1,15 +1,16 @@ -package resources +package waf import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFXssMatchSet AWS CloudFormation Resource (AWS::WAF::XssMatchSet) +// XssMatchSet AWS CloudFormation Resource (AWS::WAF::XssMatchSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html -type AWSWAFXssMatchSet struct { +type XssMatchSet struct { // Name AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSWAFXssMatchSet struct { // XssMatchTuples AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html#cfn-waf-xssmatchset-xssmatchtuples - XssMatchTuples []AWSWAFXssMatchSet_XssMatchTuple `json:"XssMatchTuples,omitempty"` + XssMatchTuples []XssMatchSet_XssMatchTuple `json:"XssMatchTuples,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSWAFXssMatchSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFXssMatchSet) AWSCloudFormationType() string { +func (r *XssMatchSet) AWSCloudFormationType() string { return "AWS::WAF::XssMatchSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFXssMatchSet) DependsOn() []string { +func (r *XssMatchSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFXssMatchSet) SetDependsOn(dependencies []string) { +func (r *XssMatchSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFXssMatchSet) Metadata() map[string]interface{} { +func (r *XssMatchSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFXssMatchSet) SetMetadata(metadata map[string]interface{}) { +func (r *XssMatchSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFXssMatchSet) DeletionPolicy() policies.DeletionPolicy { +func (r *XssMatchSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFXssMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *XssMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFXssMatchSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFXssMatchSet +func (r XssMatchSet) MarshalJSON() ([]byte, error) { + type Properties XssMatchSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFXssMatchSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFXssMatchSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFXssMatchSet +func (r *XssMatchSet) UnmarshalJSON(b []byte) error { + type Properties XssMatchSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFXssMatchSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFXssMatchSet(*res.Properties) + *r = XssMatchSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/waf/aws-waf-xssmatchset_fieldtomatch.go b/cloudformation/waf/aws-waf-xssmatchset_fieldtomatch.go new file mode 100644 index 0000000000..2950818c4f --- /dev/null +++ b/cloudformation/waf/aws-waf-xssmatchset_fieldtomatch.go @@ -0,0 +1,70 @@ +package waf + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// XssMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::XssMatchSet.FieldToMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html +type XssMatchSet_FieldToMatch struct { + + // Data AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-data + Data string `json:"Data,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *XssMatchSet_FieldToMatch) AWSCloudFormationType() string { + return "AWS::WAF::XssMatchSet.FieldToMatch" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *XssMatchSet_FieldToMatch) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *XssMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *XssMatchSet_FieldToMatch) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *XssMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *XssMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *XssMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/waf/aws-waf-xssmatchset_xssmatchtuple.go b/cloudformation/waf/aws-waf-xssmatchset_xssmatchtuple.go new file mode 100644 index 0000000000..53054b75d4 --- /dev/null +++ b/cloudformation/waf/aws-waf-xssmatchset_xssmatchtuple.go @@ -0,0 +1,70 @@ +package waf + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// XssMatchSet_XssMatchTuple AWS CloudFormation Resource (AWS::WAF::XssMatchSet.XssMatchTuple) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html +type XssMatchSet_XssMatchTuple struct { + + // FieldToMatch AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch + FieldToMatch *XssMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + + // TextTransformation AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-texttransformation + TextTransformation string `json:"TextTransformation,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *XssMatchSet_XssMatchTuple) AWSCloudFormationType() string { + return "AWS::WAF::XssMatchSet.XssMatchTuple" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *XssMatchSet_XssMatchTuple) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *XssMatchSet_XssMatchTuple) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *XssMatchSet_XssMatchTuple) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *XssMatchSet_XssMatchTuple) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *XssMatchSet_XssMatchTuple) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *XssMatchSet_XssMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-wafregional-bytematchset.go b/cloudformation/wafregional/aws-wafregional-bytematchset.go similarity index 77% rename from cloudformation/resources/aws-wafregional-bytematchset.go rename to cloudformation/wafregional/aws-wafregional-bytematchset.go index ec91548829..20f1114ffb 100644 --- a/cloudformation/resources/aws-wafregional-bytematchset.go +++ b/cloudformation/wafregional/aws-wafregional-bytematchset.go @@ -1,20 +1,21 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalByteMatchSet AWS CloudFormation Resource (AWS::WAFRegional::ByteMatchSet) +// ByteMatchSet AWS CloudFormation Resource (AWS::WAFRegional::ByteMatchSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html -type AWSWAFRegionalByteMatchSet struct { +type ByteMatchSet struct { // ByteMatchTuples AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html#cfn-wafregional-bytematchset-bytematchtuples - ByteMatchTuples []AWSWAFRegionalByteMatchSet_ByteMatchTuple `json:"ByteMatchTuples,omitempty"` + ByteMatchTuples []ByteMatchSet_ByteMatchTuple `json:"ByteMatchTuples,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSWAFRegionalByteMatchSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalByteMatchSet) AWSCloudFormationType() string { +func (r *ByteMatchSet) AWSCloudFormationType() string { return "AWS::WAFRegional::ByteMatchSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalByteMatchSet) DependsOn() []string { +func (r *ByteMatchSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalByteMatchSet) SetDependsOn(dependencies []string) { +func (r *ByteMatchSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalByteMatchSet) Metadata() map[string]interface{} { +func (r *ByteMatchSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalByteMatchSet) SetMetadata(metadata map[string]interface{}) { +func (r *ByteMatchSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalByteMatchSet) DeletionPolicy() policies.DeletionPolicy { +func (r *ByteMatchSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalByteMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ByteMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalByteMatchSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalByteMatchSet +func (r ByteMatchSet) MarshalJSON() ([]byte, error) { + type Properties ByteMatchSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFRegionalByteMatchSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalByteMatchSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalByteMatchSet +func (r *ByteMatchSet) UnmarshalJSON(b []byte) error { + type Properties ByteMatchSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFRegionalByteMatchSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalByteMatchSet(*res.Properties) + *r = ByteMatchSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-wafregional-bytematchset_bytematchtuple.go b/cloudformation/wafregional/aws-wafregional-bytematchset_bytematchtuple.go similarity index 77% rename from cloudformation/resources/aws-wafregional-bytematchset_bytematchtuple.go rename to cloudformation/wafregional/aws-wafregional-bytematchset_bytematchtuple.go index a21026e97e..5b68ecc3c9 100644 --- a/cloudformation/resources/aws-wafregional-bytematchset_bytematchtuple.go +++ b/cloudformation/wafregional/aws-wafregional-bytematchset_bytematchtuple.go @@ -1,15 +1,17 @@ -package resources +package wafregional -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFRegionalByteMatchSet_ByteMatchTuple AWS CloudFormation Resource (AWS::WAFRegional::ByteMatchSet.ByteMatchTuple) +// ByteMatchSet_ByteMatchTuple AWS CloudFormation Resource (AWS::WAFRegional::ByteMatchSet.ByteMatchTuple) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html -type AWSWAFRegionalByteMatchSet_ByteMatchTuple struct { +type ByteMatchSet_ByteMatchTuple struct { // FieldToMatch AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-fieldtomatch - FieldToMatch *AWSWAFRegionalByteMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + FieldToMatch *ByteMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` // PositionalConstraint AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSWAFRegionalByteMatchSet_ByteMatchTuple struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalByteMatchSet_ByteMatchTuple) AWSCloudFormationType() string { +func (r *ByteMatchSet_ByteMatchTuple) AWSCloudFormationType() string { return "AWS::WAFRegional::ByteMatchSet.ByteMatchTuple" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalByteMatchSet_ByteMatchTuple) DependsOn() []string { +func (r *ByteMatchSet_ByteMatchTuple) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalByteMatchSet_ByteMatchTuple) SetDependsOn(dependencies []string) { +func (r *ByteMatchSet_ByteMatchTuple) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalByteMatchSet_ByteMatchTuple) Metadata() map[string]interface{} { +func (r *ByteMatchSet_ByteMatchTuple) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalByteMatchSet_ByteMatchTuple) SetMetadata(metadata map[string]interface{}) { +func (r *ByteMatchSet_ByteMatchTuple) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalByteMatchSet_ByteMatchTuple) DeletionPolicy() policies.DeletionPolicy { +func (r *ByteMatchSet_ByteMatchTuple) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalByteMatchSet_ByteMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ByteMatchSet_ByteMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/wafregional/aws-wafregional-bytematchset_fieldtomatch.go b/cloudformation/wafregional/aws-wafregional-bytematchset_fieldtomatch.go new file mode 100644 index 0000000000..db722cd3e2 --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-bytematchset_fieldtomatch.go @@ -0,0 +1,70 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// ByteMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::ByteMatchSet.FieldToMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html +type ByteMatchSet_FieldToMatch struct { + + // Data AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-data + Data string `json:"Data,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *ByteMatchSet_FieldToMatch) AWSCloudFormationType() string { + return "AWS::WAFRegional::ByteMatchSet.FieldToMatch" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ByteMatchSet_FieldToMatch) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *ByteMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ByteMatchSet_FieldToMatch) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *ByteMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ByteMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *ByteMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-wafregional-geomatchset.go b/cloudformation/wafregional/aws-wafregional-geomatchset.go similarity index 77% rename from cloudformation/resources/aws-wafregional-geomatchset.go rename to cloudformation/wafregional/aws-wafregional-geomatchset.go index 58a14f1657..db87b5b9c3 100644 --- a/cloudformation/resources/aws-wafregional-geomatchset.go +++ b/cloudformation/wafregional/aws-wafregional-geomatchset.go @@ -1,20 +1,21 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalGeoMatchSet AWS CloudFormation Resource (AWS::WAFRegional::GeoMatchSet) +// GeoMatchSet AWS CloudFormation Resource (AWS::WAFRegional::GeoMatchSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html -type AWSWAFRegionalGeoMatchSet struct { +type GeoMatchSet struct { // GeoMatchConstraints AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html#cfn-wafregional-geomatchset-geomatchconstraints - GeoMatchConstraints []AWSWAFRegionalGeoMatchSet_GeoMatchConstraint `json:"GeoMatchConstraints,omitempty"` + GeoMatchConstraints []GeoMatchSet_GeoMatchConstraint `json:"GeoMatchConstraints,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSWAFRegionalGeoMatchSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalGeoMatchSet) AWSCloudFormationType() string { +func (r *GeoMatchSet) AWSCloudFormationType() string { return "AWS::WAFRegional::GeoMatchSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalGeoMatchSet) DependsOn() []string { +func (r *GeoMatchSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalGeoMatchSet) SetDependsOn(dependencies []string) { +func (r *GeoMatchSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalGeoMatchSet) Metadata() map[string]interface{} { +func (r *GeoMatchSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalGeoMatchSet) SetMetadata(metadata map[string]interface{}) { +func (r *GeoMatchSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalGeoMatchSet) DeletionPolicy() policies.DeletionPolicy { +func (r *GeoMatchSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalGeoMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GeoMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalGeoMatchSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalGeoMatchSet +func (r GeoMatchSet) MarshalJSON() ([]byte, error) { + type Properties GeoMatchSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFRegionalGeoMatchSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalGeoMatchSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalGeoMatchSet +func (r *GeoMatchSet) UnmarshalJSON(b []byte) error { + type Properties GeoMatchSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFRegionalGeoMatchSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalGeoMatchSet(*res.Properties) + *r = GeoMatchSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/wafregional/aws-wafregional-geomatchset_geomatchconstraint.go b/cloudformation/wafregional/aws-wafregional-geomatchset_geomatchconstraint.go new file mode 100644 index 0000000000..325bada33b --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-geomatchset_geomatchconstraint.go @@ -0,0 +1,70 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// GeoMatchSet_GeoMatchConstraint AWS CloudFormation Resource (AWS::WAFRegional::GeoMatchSet.GeoMatchConstraint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html +type GeoMatchSet_GeoMatchConstraint struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html#cfn-wafregional-geomatchset-geomatchconstraint-type + Type string `json:"Type,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html#cfn-wafregional-geomatchset-geomatchconstraint-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *GeoMatchSet_GeoMatchConstraint) AWSCloudFormationType() string { + return "AWS::WAFRegional::GeoMatchSet.GeoMatchConstraint" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GeoMatchSet_GeoMatchConstraint) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *GeoMatchSet_GeoMatchConstraint) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GeoMatchSet_GeoMatchConstraint) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *GeoMatchSet_GeoMatchConstraint) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GeoMatchSet_GeoMatchConstraint) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *GeoMatchSet_GeoMatchConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-wafregional-ipset.go b/cloudformation/wafregional/aws-wafregional-ipset.go similarity index 78% rename from cloudformation/resources/aws-wafregional-ipset.go rename to cloudformation/wafregional/aws-wafregional-ipset.go index 4a900dc306..b5f22b375f 100644 --- a/cloudformation/resources/aws-wafregional-ipset.go +++ b/cloudformation/wafregional/aws-wafregional-ipset.go @@ -1,20 +1,21 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalIPSet AWS CloudFormation Resource (AWS::WAFRegional::IPSet) +// IPSet AWS CloudFormation Resource (AWS::WAFRegional::IPSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html -type AWSWAFRegionalIPSet struct { +type IPSet struct { // IPSetDescriptors AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html#cfn-wafregional-ipset-ipsetdescriptors - IPSetDescriptors []AWSWAFRegionalIPSet_IPSetDescriptor `json:"IPSetDescriptors,omitempty"` + IPSetDescriptors []IPSet_IPSetDescriptor `json:"IPSetDescriptors,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSWAFRegionalIPSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalIPSet) AWSCloudFormationType() string { +func (r *IPSet) AWSCloudFormationType() string { return "AWS::WAFRegional::IPSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalIPSet) DependsOn() []string { +func (r *IPSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalIPSet) SetDependsOn(dependencies []string) { +func (r *IPSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalIPSet) Metadata() map[string]interface{} { +func (r *IPSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalIPSet) SetMetadata(metadata map[string]interface{}) { +func (r *IPSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalIPSet) DeletionPolicy() policies.DeletionPolicy { +func (r *IPSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalIPSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IPSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalIPSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalIPSet +func (r IPSet) MarshalJSON() ([]byte, error) { + type Properties IPSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFRegionalIPSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalIPSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalIPSet +func (r *IPSet) UnmarshalJSON(b []byte) error { + type Properties IPSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFRegionalIPSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalIPSet(*res.Properties) + *r = IPSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/wafregional/aws-wafregional-ipset_ipsetdescriptor.go b/cloudformation/wafregional/aws-wafregional-ipset_ipsetdescriptor.go new file mode 100644 index 0000000000..f4419c820d --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-ipset_ipsetdescriptor.go @@ -0,0 +1,70 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// IPSet_IPSetDescriptor AWS CloudFormation Resource (AWS::WAFRegional::IPSet.IPSetDescriptor) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html +type IPSet_IPSetDescriptor struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-type + Type string `json:"Type,omitempty"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-value + Value string `json:"Value,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *IPSet_IPSetDescriptor) AWSCloudFormationType() string { + return "AWS::WAFRegional::IPSet.IPSetDescriptor" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IPSet_IPSetDescriptor) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *IPSet_IPSetDescriptor) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IPSet_IPSetDescriptor) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *IPSet_IPSetDescriptor) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IPSet_IPSetDescriptor) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *IPSet_IPSetDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-wafregional-ratebasedrule.go b/cloudformation/wafregional/aws-wafregional-ratebasedrule.go similarity index 80% rename from cloudformation/resources/aws-wafregional-ratebasedrule.go rename to cloudformation/wafregional/aws-wafregional-ratebasedrule.go index fdf0fc81de..87534bcea5 100644 --- a/cloudformation/resources/aws-wafregional-ratebasedrule.go +++ b/cloudformation/wafregional/aws-wafregional-ratebasedrule.go @@ -1,20 +1,21 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalRateBasedRule AWS CloudFormation Resource (AWS::WAFRegional::RateBasedRule) +// RateBasedRule AWS CloudFormation Resource (AWS::WAFRegional::RateBasedRule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html -type AWSWAFRegionalRateBasedRule struct { +type RateBasedRule struct { // MatchPredicates AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-matchpredicates - MatchPredicates []AWSWAFRegionalRateBasedRule_Predicate `json:"MatchPredicates,omitempty"` + MatchPredicates []RateBasedRule_Predicate `json:"MatchPredicates,omitempty"` // MetricName AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSWAFRegionalRateBasedRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalRateBasedRule) AWSCloudFormationType() string { +func (r *RateBasedRule) AWSCloudFormationType() string { return "AWS::WAFRegional::RateBasedRule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRateBasedRule) DependsOn() []string { +func (r *RateBasedRule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRateBasedRule) SetDependsOn(dependencies []string) { +func (r *RateBasedRule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRateBasedRule) Metadata() map[string]interface{} { +func (r *RateBasedRule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRateBasedRule) SetMetadata(metadata map[string]interface{}) { +func (r *RateBasedRule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRateBasedRule) DeletionPolicy() policies.DeletionPolicy { +func (r *RateBasedRule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRateBasedRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RateBasedRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalRateBasedRule) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalRateBasedRule +func (r RateBasedRule) MarshalJSON() ([]byte, error) { + type Properties RateBasedRule return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSWAFRegionalRateBasedRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalRateBasedRule) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalRateBasedRule +func (r *RateBasedRule) UnmarshalJSON(b []byte) error { + type Properties RateBasedRule res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSWAFRegionalRateBasedRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalRateBasedRule(*res.Properties) + *r = RateBasedRule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-wafregional-ratebasedrule_predicate.go b/cloudformation/wafregional/aws-wafregional-ratebasedrule_predicate.go similarity index 75% rename from cloudformation/resources/aws-wafregional-ratebasedrule_predicate.go rename to cloudformation/wafregional/aws-wafregional-ratebasedrule_predicate.go index 998677a463..0016c9b2ae 100644 --- a/cloudformation/resources/aws-wafregional-ratebasedrule_predicate.go +++ b/cloudformation/wafregional/aws-wafregional-ratebasedrule_predicate.go @@ -1,10 +1,12 @@ -package resources +package wafregional -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFRegionalRateBasedRule_Predicate AWS CloudFormation Resource (AWS::WAFRegional::RateBasedRule.Predicate) +// RateBasedRule_Predicate AWS CloudFormation Resource (AWS::WAFRegional::RateBasedRule.Predicate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html -type AWSWAFRegionalRateBasedRule_Predicate struct { +type RateBasedRule_Predicate struct { // DataId AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSWAFRegionalRateBasedRule_Predicate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalRateBasedRule_Predicate) AWSCloudFormationType() string { +func (r *RateBasedRule_Predicate) AWSCloudFormationType() string { return "AWS::WAFRegional::RateBasedRule.Predicate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRateBasedRule_Predicate) DependsOn() []string { +func (r *RateBasedRule_Predicate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRateBasedRule_Predicate) SetDependsOn(dependencies []string) { +func (r *RateBasedRule_Predicate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRateBasedRule_Predicate) Metadata() map[string]interface{} { +func (r *RateBasedRule_Predicate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRateBasedRule_Predicate) SetMetadata(metadata map[string]interface{}) { +func (r *RateBasedRule_Predicate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRateBasedRule_Predicate) DeletionPolicy() policies.DeletionPolicy { +func (r *RateBasedRule_Predicate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRateBasedRule_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RateBasedRule_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-wafregional-regexpatternset.go b/cloudformation/wafregional/aws-wafregional-regexpatternset.go similarity index 78% rename from cloudformation/resources/aws-wafregional-regexpatternset.go rename to cloudformation/wafregional/aws-wafregional-regexpatternset.go index 0c52460e65..1b9a95624f 100644 --- a/cloudformation/resources/aws-wafregional-regexpatternset.go +++ b/cloudformation/wafregional/aws-wafregional-regexpatternset.go @@ -1,15 +1,16 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalRegexPatternSet AWS CloudFormation Resource (AWS::WAFRegional::RegexPatternSet) +// RegexPatternSet AWS CloudFormation Resource (AWS::WAFRegional::RegexPatternSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html -type AWSWAFRegionalRegexPatternSet struct { +type RegexPatternSet struct { // Name AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSWAFRegionalRegexPatternSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalRegexPatternSet) AWSCloudFormationType() string { +func (r *RegexPatternSet) AWSCloudFormationType() string { return "AWS::WAFRegional::RegexPatternSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRegexPatternSet) DependsOn() []string { +func (r *RegexPatternSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRegexPatternSet) SetDependsOn(dependencies []string) { +func (r *RegexPatternSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRegexPatternSet) Metadata() map[string]interface{} { +func (r *RegexPatternSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRegexPatternSet) SetMetadata(metadata map[string]interface{}) { +func (r *RegexPatternSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRegexPatternSet) DeletionPolicy() policies.DeletionPolicy { +func (r *RegexPatternSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRegexPatternSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RegexPatternSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalRegexPatternSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalRegexPatternSet +func (r RegexPatternSet) MarshalJSON() ([]byte, error) { + type Properties RegexPatternSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFRegionalRegexPatternSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalRegexPatternSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalRegexPatternSet +func (r *RegexPatternSet) UnmarshalJSON(b []byte) error { + type Properties RegexPatternSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFRegionalRegexPatternSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalRegexPatternSet(*res.Properties) + *r = RegexPatternSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-wafregional-rule.go b/cloudformation/wafregional/aws-wafregional-rule.go similarity index 80% rename from cloudformation/resources/aws-wafregional-rule.go rename to cloudformation/wafregional/aws-wafregional-rule.go index c3df036f62..442eb4147e 100644 --- a/cloudformation/resources/aws-wafregional-rule.go +++ b/cloudformation/wafregional/aws-wafregional-rule.go @@ -1,15 +1,16 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalRule AWS CloudFormation Resource (AWS::WAFRegional::Rule) +// Rule AWS CloudFormation Resource (AWS::WAFRegional::Rule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html -type AWSWAFRegionalRule struct { +type Rule struct { // MetricName AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSWAFRegionalRule struct { // Predicates AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-predicates - Predicates []AWSWAFRegionalRule_Predicate `json:"Predicates,omitempty"` + Predicates []Rule_Predicate `json:"Predicates,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSWAFRegionalRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalRule) AWSCloudFormationType() string { +func (r *Rule) AWSCloudFormationType() string { return "AWS::WAFRegional::Rule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRule) DependsOn() []string { +func (r *Rule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRule) SetDependsOn(dependencies []string) { +func (r *Rule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRule) Metadata() map[string]interface{} { +func (r *Rule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRule) SetMetadata(metadata map[string]interface{}) { +func (r *Rule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRule) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalRule) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalRule +func (r Rule) MarshalJSON() ([]byte, error) { + type Properties Rule return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSWAFRegionalRule) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalRule) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalRule +func (r *Rule) UnmarshalJSON(b []byte) error { + type Properties Rule res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSWAFRegionalRule) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalRule(*res.Properties) + *r = Rule(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-wafregional-rule_predicate.go b/cloudformation/wafregional/aws-wafregional-rule_predicate.go similarity index 76% rename from cloudformation/resources/aws-wafregional-rule_predicate.go rename to cloudformation/wafregional/aws-wafregional-rule_predicate.go index 0572855da3..3b9bb468e1 100644 --- a/cloudformation/resources/aws-wafregional-rule_predicate.go +++ b/cloudformation/wafregional/aws-wafregional-rule_predicate.go @@ -1,10 +1,12 @@ -package resources +package wafregional -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFRegionalRule_Predicate AWS CloudFormation Resource (AWS::WAFRegional::Rule.Predicate) +// Rule_Predicate AWS CloudFormation Resource (AWS::WAFRegional::Rule.Predicate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html -type AWSWAFRegionalRule_Predicate struct { +type Rule_Predicate struct { // DataId AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSWAFRegionalRule_Predicate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalRule_Predicate) AWSCloudFormationType() string { +func (r *Rule_Predicate) AWSCloudFormationType() string { return "AWS::WAFRegional::Rule.Predicate" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRule_Predicate) DependsOn() []string { +func (r *Rule_Predicate) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalRule_Predicate) SetDependsOn(dependencies []string) { +func (r *Rule_Predicate) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRule_Predicate) Metadata() map[string]interface{} { +func (r *Rule_Predicate) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalRule_Predicate) SetMetadata(metadata map[string]interface{}) { +func (r *Rule_Predicate) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRule_Predicate) DeletionPolicy() policies.DeletionPolicy { +func (r *Rule_Predicate) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalRule_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-wafregional-sizeconstraintset.go b/cloudformation/wafregional/aws-wafregional-sizeconstraintset.go similarity index 76% rename from cloudformation/resources/aws-wafregional-sizeconstraintset.go rename to cloudformation/wafregional/aws-wafregional-sizeconstraintset.go index 4d10ec82cf..1c1b1e7ece 100644 --- a/cloudformation/resources/aws-wafregional-sizeconstraintset.go +++ b/cloudformation/wafregional/aws-wafregional-sizeconstraintset.go @@ -1,15 +1,16 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalSizeConstraintSet AWS CloudFormation Resource (AWS::WAFRegional::SizeConstraintSet) +// SizeConstraintSet AWS CloudFormation Resource (AWS::WAFRegional::SizeConstraintSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html -type AWSWAFRegionalSizeConstraintSet struct { +type SizeConstraintSet struct { // Name AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSWAFRegionalSizeConstraintSet struct { // SizeConstraints AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html#cfn-wafregional-sizeconstraintset-sizeconstraints - SizeConstraints []AWSWAFRegionalSizeConstraintSet_SizeConstraint `json:"SizeConstraints,omitempty"` + SizeConstraints []SizeConstraintSet_SizeConstraint `json:"SizeConstraints,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSWAFRegionalSizeConstraintSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSizeConstraintSet) AWSCloudFormationType() string { +func (r *SizeConstraintSet) AWSCloudFormationType() string { return "AWS::WAFRegional::SizeConstraintSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSizeConstraintSet) DependsOn() []string { +func (r *SizeConstraintSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSizeConstraintSet) SetDependsOn(dependencies []string) { +func (r *SizeConstraintSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSizeConstraintSet) Metadata() map[string]interface{} { +func (r *SizeConstraintSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSizeConstraintSet) SetMetadata(metadata map[string]interface{}) { +func (r *SizeConstraintSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSizeConstraintSet) DeletionPolicy() policies.DeletionPolicy { +func (r *SizeConstraintSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSizeConstraintSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SizeConstraintSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalSizeConstraintSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalSizeConstraintSet +func (r SizeConstraintSet) MarshalJSON() ([]byte, error) { + type Properties SizeConstraintSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFRegionalSizeConstraintSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalSizeConstraintSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalSizeConstraintSet +func (r *SizeConstraintSet) UnmarshalJSON(b []byte) error { + type Properties SizeConstraintSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFRegionalSizeConstraintSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalSizeConstraintSet(*res.Properties) + *r = SizeConstraintSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/wafregional/aws-wafregional-sizeconstraintset_fieldtomatch.go b/cloudformation/wafregional/aws-wafregional-sizeconstraintset_fieldtomatch.go new file mode 100644 index 0000000000..8b8c298d05 --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-sizeconstraintset_fieldtomatch.go @@ -0,0 +1,70 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SizeConstraintSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::SizeConstraintSet.FieldToMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html +type SizeConstraintSet_FieldToMatch struct { + + // Data AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-data + Data string `json:"Data,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SizeConstraintSet_FieldToMatch) AWSCloudFormationType() string { + return "AWS::WAFRegional::SizeConstraintSet.FieldToMatch" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SizeConstraintSet_FieldToMatch) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SizeConstraintSet_FieldToMatch) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SizeConstraintSet_FieldToMatch) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SizeConstraintSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SizeConstraintSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SizeConstraintSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/wafregional/aws-wafregional-sizeconstraintset_sizeconstraint.go b/cloudformation/wafregional/aws-wafregional-sizeconstraintset_sizeconstraint.go new file mode 100644 index 0000000000..f9b92cc505 --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-sizeconstraintset_sizeconstraint.go @@ -0,0 +1,80 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SizeConstraintSet_SizeConstraint AWS CloudFormation Resource (AWS::WAFRegional::SizeConstraintSet.SizeConstraint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html +type SizeConstraintSet_SizeConstraint struct { + + // ComparisonOperator AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-comparisonoperator + ComparisonOperator string `json:"ComparisonOperator,omitempty"` + + // FieldToMatch AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-fieldtomatch + FieldToMatch *SizeConstraintSet_FieldToMatch `json:"FieldToMatch,omitempty"` + + // Size AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-size + Size int `json:"Size"` + + // TextTransformation AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-texttransformation + TextTransformation string `json:"TextTransformation,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SizeConstraintSet_SizeConstraint) AWSCloudFormationType() string { + return "AWS::WAFRegional::SizeConstraintSet.SizeConstraint" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SizeConstraintSet_SizeConstraint) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SizeConstraintSet_SizeConstraint) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SizeConstraintSet_SizeConstraint) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SizeConstraintSet_SizeConstraint) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SizeConstraintSet_SizeConstraint) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SizeConstraintSet_SizeConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset.go b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset.go similarity index 75% rename from cloudformation/resources/aws-wafregional-sqlinjectionmatchset.go rename to cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset.go index 1c91f67b7e..9006f13984 100644 --- a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset.go +++ b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset.go @@ -1,15 +1,16 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalSqlInjectionMatchSet AWS CloudFormation Resource (AWS::WAFRegional::SqlInjectionMatchSet) +// SqlInjectionMatchSet AWS CloudFormation Resource (AWS::WAFRegional::SqlInjectionMatchSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html -type AWSWAFRegionalSqlInjectionMatchSet struct { +type SqlInjectionMatchSet struct { // Name AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSWAFRegionalSqlInjectionMatchSet struct { // SqlInjectionMatchTuples AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuples - SqlInjectionMatchTuples []AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple `json:"SqlInjectionMatchTuples,omitempty"` + SqlInjectionMatchTuples []SqlInjectionMatchSet_SqlInjectionMatchTuple `json:"SqlInjectionMatchTuples,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSWAFRegionalSqlInjectionMatchSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSqlInjectionMatchSet) AWSCloudFormationType() string { +func (r *SqlInjectionMatchSet) AWSCloudFormationType() string { return "AWS::WAFRegional::SqlInjectionMatchSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSqlInjectionMatchSet) DependsOn() []string { +func (r *SqlInjectionMatchSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalSqlInjectionMatchSet) SetDependsOn(dependencies []string) { +func (r *SqlInjectionMatchSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSqlInjectionMatchSet) Metadata() map[string]interface{} { +func (r *SqlInjectionMatchSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalSqlInjectionMatchSet) SetMetadata(metadata map[string]interface{}) { +func (r *SqlInjectionMatchSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSqlInjectionMatchSet) DeletionPolicy() policies.DeletionPolicy { +func (r *SqlInjectionMatchSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalSqlInjectionMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SqlInjectionMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalSqlInjectionMatchSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalSqlInjectionMatchSet +func (r SqlInjectionMatchSet) MarshalJSON() ([]byte, error) { + type Properties SqlInjectionMatchSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFRegionalSqlInjectionMatchSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalSqlInjectionMatchSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalSqlInjectionMatchSet +func (r *SqlInjectionMatchSet) UnmarshalJSON(b []byte) error { + type Properties SqlInjectionMatchSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFRegionalSqlInjectionMatchSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalSqlInjectionMatchSet(*res.Properties) + *r = SqlInjectionMatchSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go new file mode 100644 index 0000000000..acb369985f --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go @@ -0,0 +1,70 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SqlInjectionMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::SqlInjectionMatchSet.FieldToMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html +type SqlInjectionMatchSet_FieldToMatch struct { + + // Data AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-data + Data string `json:"Data,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SqlInjectionMatchSet_FieldToMatch) AWSCloudFormationType() string { + return "AWS::WAFRegional::SqlInjectionMatchSet.FieldToMatch" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SqlInjectionMatchSet_FieldToMatch) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SqlInjectionMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SqlInjectionMatchSet_FieldToMatch) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SqlInjectionMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SqlInjectionMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SqlInjectionMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go new file mode 100644 index 0000000000..e4a0d00e9e --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go @@ -0,0 +1,70 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// SqlInjectionMatchSet_SqlInjectionMatchTuple AWS CloudFormation Resource (AWS::WAFRegional::SqlInjectionMatchSet.SqlInjectionMatchTuple) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html +type SqlInjectionMatchSet_SqlInjectionMatchTuple struct { + + // FieldToMatch AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-fieldtomatch + FieldToMatch *SqlInjectionMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + + // TextTransformation AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-texttransformation + TextTransformation string `json:"TextTransformation,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) AWSCloudFormationType() string { + return "AWS::WAFRegional::SqlInjectionMatchSet.SqlInjectionMatchTuple" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *SqlInjectionMatchSet_SqlInjectionMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-wafregional-webacl.go b/cloudformation/wafregional/aws-wafregional-webacl.go similarity index 79% rename from cloudformation/resources/aws-wafregional-webacl.go rename to cloudformation/wafregional/aws-wafregional-webacl.go index 516f4437f6..bf4fc7b7a7 100644 --- a/cloudformation/resources/aws-wafregional-webacl.go +++ b/cloudformation/wafregional/aws-wafregional-webacl.go @@ -1,20 +1,21 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalWebACL AWS CloudFormation Resource (AWS::WAFRegional::WebACL) +// WebACL AWS CloudFormation Resource (AWS::WAFRegional::WebACL) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html -type AWSWAFRegionalWebACL struct { +type WebACL struct { // DefaultAction AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-defaultaction - DefaultAction *AWSWAFRegionalWebACL_Action `json:"DefaultAction,omitempty"` + DefaultAction *WebACL_Action `json:"DefaultAction,omitempty"` // MetricName AWS CloudFormation Property // Required: true @@ -29,7 +30,7 @@ type AWSWAFRegionalWebACL struct { // Rules AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-rules - Rules []AWSWAFRegionalWebACL_Rule `json:"Rules,omitempty"` + Rules []WebACL_Rule `json:"Rules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,50 +43,50 @@ type AWSWAFRegionalWebACL struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalWebACL) AWSCloudFormationType() string { +func (r *WebACL) AWSCloudFormationType() string { return "AWS::WAFRegional::WebACL" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalWebACL) DependsOn() []string { +func (r *WebACL) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalWebACL) SetDependsOn(dependencies []string) { +func (r *WebACL) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalWebACL) Metadata() map[string]interface{} { +func (r *WebACL) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalWebACL) SetMetadata(metadata map[string]interface{}) { +func (r *WebACL) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalWebACL) DeletionPolicy() policies.DeletionPolicy { +func (r *WebACL) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalWebACL) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *WebACL) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalWebACL) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalWebACL +func (r WebACL) MarshalJSON() ([]byte, error) { + type Properties WebACL return json.Marshal(&struct { Type string Properties Properties @@ -103,8 +104,8 @@ func (r AWSWAFRegionalWebACL) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalWebACL) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalWebACL +func (r *WebACL) UnmarshalJSON(b []byte) error { + type Properties WebACL res := &struct { Type string Properties *Properties @@ -123,7 +124,7 @@ func (r *AWSWAFRegionalWebACL) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalWebACL(*res.Properties) + *r = WebACL(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/wafregional/aws-wafregional-webacl_action.go b/cloudformation/wafregional/aws-wafregional-webacl_action.go new file mode 100644 index 0000000000..7975388042 --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-webacl_action.go @@ -0,0 +1,65 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// WebACL_Action AWS CloudFormation Resource (AWS::WAFRegional::WebACL.Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html +type WebACL_Action struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html#cfn-wafregional-webacl-action-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *WebACL_Action) AWSCloudFormationType() string { + return "AWS::WAFRegional::WebACL.Action" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *WebACL_Action) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *WebACL_Action) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *WebACL_Action) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *WebACL_Action) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *WebACL_Action) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *WebACL_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-wafregional-webacl_rule.go b/cloudformation/wafregional/aws-wafregional-webacl_rule.go similarity index 75% rename from cloudformation/resources/aws-wafregional-webacl_rule.go rename to cloudformation/wafregional/aws-wafregional-webacl_rule.go index 4f2baae358..b697a4175c 100644 --- a/cloudformation/resources/aws-wafregional-webacl_rule.go +++ b/cloudformation/wafregional/aws-wafregional-webacl_rule.go @@ -1,15 +1,17 @@ -package resources +package wafregional -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWAFRegionalWebACL_Rule AWS CloudFormation Resource (AWS::WAFRegional::WebACL.Rule) +// WebACL_Rule AWS CloudFormation Resource (AWS::WAFRegional::WebACL.Rule) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html -type AWSWAFRegionalWebACL_Rule struct { +type WebACL_Rule struct { // Action AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-action - Action *AWSWAFRegionalWebACL_Action `json:"Action,omitempty"` + Action *WebACL_Action `json:"Action,omitempty"` // Priority AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSWAFRegionalWebACL_Rule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalWebACL_Rule) AWSCloudFormationType() string { +func (r *WebACL_Rule) AWSCloudFormationType() string { return "AWS::WAFRegional::WebACL.Rule" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalWebACL_Rule) DependsOn() []string { +func (r *WebACL_Rule) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalWebACL_Rule) SetDependsOn(dependencies []string) { +func (r *WebACL_Rule) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalWebACL_Rule) Metadata() map[string]interface{} { +func (r *WebACL_Rule) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalWebACL_Rule) SetMetadata(metadata map[string]interface{}) { +func (r *WebACL_Rule) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalWebACL_Rule) DeletionPolicy() policies.DeletionPolicy { +func (r *WebACL_Rule) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalWebACL_Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *WebACL_Rule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-wafregional-webaclassociation.go b/cloudformation/wafregional/aws-wafregional-webaclassociation.go similarity index 78% rename from cloudformation/resources/aws-wafregional-webaclassociation.go rename to cloudformation/wafregional/aws-wafregional-webaclassociation.go index c1a422d254..8d2ca7db21 100644 --- a/cloudformation/resources/aws-wafregional-webaclassociation.go +++ b/cloudformation/wafregional/aws-wafregional-webaclassociation.go @@ -1,15 +1,16 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalWebACLAssociation AWS CloudFormation Resource (AWS::WAFRegional::WebACLAssociation) +// WebACLAssociation AWS CloudFormation Resource (AWS::WAFRegional::WebACLAssociation) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html -type AWSWAFRegionalWebACLAssociation struct { +type WebACLAssociation struct { // ResourceArn AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSWAFRegionalWebACLAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalWebACLAssociation) AWSCloudFormationType() string { +func (r *WebACLAssociation) AWSCloudFormationType() string { return "AWS::WAFRegional::WebACLAssociation" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalWebACLAssociation) DependsOn() []string { +func (r *WebACLAssociation) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalWebACLAssociation) SetDependsOn(dependencies []string) { +func (r *WebACLAssociation) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalWebACLAssociation) Metadata() map[string]interface{} { +func (r *WebACLAssociation) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalWebACLAssociation) SetMetadata(metadata map[string]interface{}) { +func (r *WebACLAssociation) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalWebACLAssociation) DeletionPolicy() policies.DeletionPolicy { +func (r *WebACLAssociation) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalWebACLAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *WebACLAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalWebACLAssociation) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalWebACLAssociation +func (r WebACLAssociation) MarshalJSON() ([]byte, error) { + type Properties WebACLAssociation return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFRegionalWebACLAssociation) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalWebACLAssociation) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalWebACLAssociation +func (r *WebACLAssociation) UnmarshalJSON(b []byte) error { + type Properties WebACLAssociation res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFRegionalWebACLAssociation) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalWebACLAssociation(*res.Properties) + *r = WebACLAssociation(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-wafregional-xssmatchset.go b/cloudformation/wafregional/aws-wafregional-xssmatchset.go similarity index 77% rename from cloudformation/resources/aws-wafregional-xssmatchset.go rename to cloudformation/wafregional/aws-wafregional-xssmatchset.go index e0c837a68d..f69651eeca 100644 --- a/cloudformation/resources/aws-wafregional-xssmatchset.go +++ b/cloudformation/wafregional/aws-wafregional-xssmatchset.go @@ -1,15 +1,16 @@ -package resources +package wafregional import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSWAFRegionalXssMatchSet AWS CloudFormation Resource (AWS::WAFRegional::XssMatchSet) +// XssMatchSet AWS CloudFormation Resource (AWS::WAFRegional::XssMatchSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html -type AWSWAFRegionalXssMatchSet struct { +type XssMatchSet struct { // Name AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSWAFRegionalXssMatchSet struct { // XssMatchTuples AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html#cfn-wafregional-xssmatchset-xssmatchtuples - XssMatchTuples []AWSWAFRegionalXssMatchSet_XssMatchTuple `json:"XssMatchTuples,omitempty"` + XssMatchTuples []XssMatchSet_XssMatchTuple `json:"XssMatchTuples,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSWAFRegionalXssMatchSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalXssMatchSet) AWSCloudFormationType() string { +func (r *XssMatchSet) AWSCloudFormationType() string { return "AWS::WAFRegional::XssMatchSet" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalXssMatchSet) DependsOn() []string { +func (r *XssMatchSet) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWAFRegionalXssMatchSet) SetDependsOn(dependencies []string) { +func (r *XssMatchSet) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalXssMatchSet) Metadata() map[string]interface{} { +func (r *XssMatchSet) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWAFRegionalXssMatchSet) SetMetadata(metadata map[string]interface{}) { +func (r *XssMatchSet) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalXssMatchSet) DeletionPolicy() policies.DeletionPolicy { +func (r *XssMatchSet) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWAFRegionalXssMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *XssMatchSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWAFRegionalXssMatchSet) MarshalJSON() ([]byte, error) { - type Properties AWSWAFRegionalXssMatchSet +func (r XssMatchSet) MarshalJSON() ([]byte, error) { + type Properties XssMatchSet return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSWAFRegionalXssMatchSet) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWAFRegionalXssMatchSet) UnmarshalJSON(b []byte) error { - type Properties AWSWAFRegionalXssMatchSet +func (r *XssMatchSet) UnmarshalJSON(b []byte) error { + type Properties XssMatchSet res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSWAFRegionalXssMatchSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWAFRegionalXssMatchSet(*res.Properties) + *r = XssMatchSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/wafregional/aws-wafregional-xssmatchset_fieldtomatch.go b/cloudformation/wafregional/aws-wafregional-xssmatchset_fieldtomatch.go new file mode 100644 index 0000000000..1336e2612a --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-xssmatchset_fieldtomatch.go @@ -0,0 +1,70 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// XssMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::XssMatchSet.FieldToMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html +type XssMatchSet_FieldToMatch struct { + + // Data AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-data + Data string `json:"Data,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-type + Type string `json:"Type,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *XssMatchSet_FieldToMatch) AWSCloudFormationType() string { + return "AWS::WAFRegional::XssMatchSet.FieldToMatch" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *XssMatchSet_FieldToMatch) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *XssMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *XssMatchSet_FieldToMatch) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *XssMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *XssMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *XssMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/wafregional/aws-wafregional-xssmatchset_xssmatchtuple.go b/cloudformation/wafregional/aws-wafregional-xssmatchset_xssmatchtuple.go new file mode 100644 index 0000000000..6b6df75522 --- /dev/null +++ b/cloudformation/wafregional/aws-wafregional-xssmatchset_xssmatchtuple.go @@ -0,0 +1,70 @@ +package wafregional + +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) + +// XssMatchSet_XssMatchTuple AWS CloudFormation Resource (AWS::WAFRegional::XssMatchSet.XssMatchTuple) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html +type XssMatchSet_XssMatchTuple struct { + + // FieldToMatch AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-fieldtomatch + FieldToMatch *XssMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + + // TextTransformation AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-texttransformation + TextTransformation string `json:"TextTransformation,omitempty"` + + // _deletionPolicy represents a CloudFormation DeletionPolicy + _deletionPolicy policies.DeletionPolicy + + // _dependsOn stores the logical ID of the resources to be created before this resource + _dependsOn []string + + // _metadata stores structured data associated with this resource + _metadata map[string]interface{} +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *XssMatchSet_XssMatchTuple) AWSCloudFormationType() string { + return "AWS::WAFRegional::XssMatchSet.XssMatchTuple" +} + +// DependsOn returns a slice of logical ID names this resource depends on. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *XssMatchSet_XssMatchTuple) DependsOn() []string { + return r._dependsOn +} + +// SetDependsOn specify that the creation of this resource follows another. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html +func (r *XssMatchSet_XssMatchTuple) SetDependsOn(dependencies []string) { + r._dependsOn = dependencies +} + +// Metadata returns the metadata associated with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *XssMatchSet_XssMatchTuple) Metadata() map[string]interface{} { + return r._metadata +} + +// SetMetadata enables you to associate structured data with this resource. +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html +func (r *XssMatchSet_XssMatchTuple) SetMetadata(metadata map[string]interface{}) { + r._metadata = metadata +} + +// DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *XssMatchSet_XssMatchTuple) DeletionPolicy() policies.DeletionPolicy { + return r._deletionPolicy +} + +// SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource +// see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html +func (r *XssMatchSet_XssMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { + r._deletionPolicy = policy +} diff --git a/cloudformation/resources/aws-workspaces-workspace.go b/cloudformation/workspaces/aws-workspaces-workspace.go similarity index 83% rename from cloudformation/resources/aws-workspaces-workspace.go rename to cloudformation/workspaces/aws-workspaces-workspace.go index c2a8cfd7fa..e9f99fa25c 100644 --- a/cloudformation/resources/aws-workspaces-workspace.go +++ b/cloudformation/workspaces/aws-workspaces-workspace.go @@ -1,15 +1,17 @@ -package resources +package workspaces import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" ) -// AWSWorkSpacesWorkspace AWS CloudFormation Resource (AWS::WorkSpaces::Workspace) +// Workspace AWS CloudFormation Resource (AWS::WorkSpaces::Workspace) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html -type AWSWorkSpacesWorkspace struct { +type Workspace struct { // BundleId AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSWorkSpacesWorkspace struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-tags - Tags []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // UserName AWS CloudFormation Property // Required: true @@ -49,7 +51,7 @@ type AWSWorkSpacesWorkspace struct { // WorkspaceProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-workspaceproperties - WorkspaceProperties *AWSWorkSpacesWorkspace_WorkspaceProperties `json:"WorkspaceProperties,omitempty"` + WorkspaceProperties *Workspace_WorkspaceProperties `json:"WorkspaceProperties,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -62,50 +64,50 @@ type AWSWorkSpacesWorkspace struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWorkSpacesWorkspace) AWSCloudFormationType() string { +func (r *Workspace) AWSCloudFormationType() string { return "AWS::WorkSpaces::Workspace" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWorkSpacesWorkspace) DependsOn() []string { +func (r *Workspace) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWorkSpacesWorkspace) SetDependsOn(dependencies []string) { +func (r *Workspace) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWorkSpacesWorkspace) Metadata() map[string]interface{} { +func (r *Workspace) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWorkSpacesWorkspace) SetMetadata(metadata map[string]interface{}) { +func (r *Workspace) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWorkSpacesWorkspace) DeletionPolicy() policies.DeletionPolicy { +func (r *Workspace) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWorkSpacesWorkspace) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Workspace) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } // MarshalJSON is a custom JSON marshalling hook that embeds this object into // an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. -func (r AWSWorkSpacesWorkspace) MarshalJSON() ([]byte, error) { - type Properties AWSWorkSpacesWorkspace +func (r Workspace) MarshalJSON() ([]byte, error) { + type Properties Workspace return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +125,8 @@ func (r AWSWorkSpacesWorkspace) MarshalJSON() ([]byte, error) { // UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer // AWS CloudFormation resource object, and just keeps the 'Properties' field. -func (r *AWSWorkSpacesWorkspace) UnmarshalJSON(b []byte) error { - type Properties AWSWorkSpacesWorkspace +func (r *Workspace) UnmarshalJSON(b []byte) error { + type Properties Workspace res := &struct { Type string Properties *Properties @@ -143,7 +145,7 @@ func (r *AWSWorkSpacesWorkspace) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSWorkSpacesWorkspace(*res.Properties) + *r = Workspace(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-workspaces-workspace_workspaceproperties.go b/cloudformation/workspaces/aws-workspaces-workspace_workspaceproperties.go similarity index 79% rename from cloudformation/resources/aws-workspaces-workspace_workspaceproperties.go rename to cloudformation/workspaces/aws-workspaces-workspace_workspaceproperties.go index cf03445824..9603039e91 100644 --- a/cloudformation/resources/aws-workspaces-workspace_workspaceproperties.go +++ b/cloudformation/workspaces/aws-workspaces-workspace_workspaceproperties.go @@ -1,10 +1,12 @@ -package resources +package workspaces -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSWorkSpacesWorkspace_WorkspaceProperties AWS CloudFormation Resource (AWS::WorkSpaces::Workspace.WorkspaceProperties) +// Workspace_WorkspaceProperties AWS CloudFormation Resource (AWS::WorkSpaces::Workspace.WorkspaceProperties) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html -type AWSWorkSpacesWorkspace_WorkspaceProperties struct { +type Workspace_WorkspaceProperties struct { // ComputeTypeName AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSWorkSpacesWorkspace_WorkspaceProperties struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWorkSpacesWorkspace_WorkspaceProperties) AWSCloudFormationType() string { +func (r *Workspace_WorkspaceProperties) AWSCloudFormationType() string { return "AWS::WorkSpaces::Workspace.WorkspaceProperties" } // DependsOn returns a slice of logical ID names this resource depends on. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWorkSpacesWorkspace_WorkspaceProperties) DependsOn() []string { +func (r *Workspace_WorkspaceProperties) DependsOn() []string { return r._dependsOn } // SetDependsOn specify that the creation of this resource follows another. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html -func (r *AWSWorkSpacesWorkspace_WorkspaceProperties) SetDependsOn(dependencies []string) { +func (r *Workspace_WorkspaceProperties) SetDependsOn(dependencies []string) { r._dependsOn = dependencies } // Metadata returns the metadata associated with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWorkSpacesWorkspace_WorkspaceProperties) Metadata() map[string]interface{} { +func (r *Workspace_WorkspaceProperties) Metadata() map[string]interface{} { return r._metadata } // SetMetadata enables you to associate structured data with this resource. // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html -func (r *AWSWorkSpacesWorkspace_WorkspaceProperties) SetMetadata(metadata map[string]interface{}) { +func (r *Workspace_WorkspaceProperties) SetMetadata(metadata map[string]interface{}) { r._metadata = metadata } // DeletionPolicy returns the AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWorkSpacesWorkspace_WorkspaceProperties) DeletionPolicy() policies.DeletionPolicy { +func (r *Workspace_WorkspaceProperties) DeletionPolicy() policies.DeletionPolicy { return r._deletionPolicy } // SetDeletionPolicy applies an AWS CloudFormation DeletionPolicy to this resource // see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html -func (r *AWSWorkSpacesWorkspace_WorkspaceProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Workspace_WorkspaceProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/example/go-to-yaml/main.go b/example/go-to-yaml/main.go index 50e0e8a24b..f275b839c4 100644 --- a/example/go-to-yaml/main.go +++ b/example/go-to-yaml/main.go @@ -5,8 +5,8 @@ import ( "strconv" "time" - "github.com/awslabs/goformation/v2/cloudformation" - "github.com/awslabs/goformation/v2/cloudformation/resources" + "github.com/awslabs/goformation/v3/cloudformation" + "github.com/awslabs/goformation/v3/cloudformation/sns" ) func main() { @@ -15,12 +15,12 @@ func main() { template := cloudformation.NewTemplate() // Create an Amazon SNS topic, with a unique name based off the current timestamp - template.Resources["MyTopic"] = &resources.AWSSNSTopic{ + template.Resources["MyTopic"] = &sns.Topic{ TopicName: "my-topic-" + strconv.FormatInt(time.Now().Unix(), 10), } // Create a subscription, connected to our topic, that forwards notifications to an email address - template.Resources["MyTopicSubscription"] = &resources.AWSSNSSubscription{ + template.Resources["MyTopicSubscription"] = &sns.Subscription{ TopicArn: cloudformation.Ref("MyTopic"), Protocol: "email", Endpoint: "some.email@example.com", diff --git a/example/yaml-to-go/main.go b/example/yaml-to-go/main.go index fc6823423b..4cf94c26c7 100644 --- a/example/yaml-to-go/main.go +++ b/example/yaml-to-go/main.go @@ -3,7 +3,7 @@ package main import ( "log" - "github.com/awslabs/goformation/v2" + "github.com/awslabs/goformation/v3" ) func main() { @@ -16,22 +16,22 @@ func main() { // You can extract all resources of a certain type // Each AWS CloudFormation resource is a strongly typed struct - functions := template.GetAllAWSServerlessFunctionResources() - for name, function := range functions { + topics := template.GetAllSNSTopicResources() + for name, topic := range topics { - // E.g. Found a AWS::Serverless::Function named GetHelloWorld (runtime: nodejs6.10) - log.Printf("Found a %s named %s (runtime: %s)\n", function.AWSCloudFormationType(), name, function.Runtime) + // E.g. Found a AWS::SNS::Topic with Logical ID ExampleTopic and TopicName 'example' + log.Printf("Found a %s with Logical ID %s and TopicName %s\n", topic.AWSCloudFormationType(), name, topic.TopicName) } // You can also search for specific resources by their logicalId - search := "GetHelloWorld" - function, err := template.GetAWSServerlessFunctionWithName(search) + search := "ExampleTopic" + topic, err := template.GetSNSTopicWithName(search) if err != nil { - log.Fatalf("Function not found") + log.Fatalf("SNS topic with logical ID %s not found", search) } // E.g. Found a AWS::Serverless::Function named GetHelloWorld (runtime: nodejs6.10) - log.Printf("Found a %s named %s (runtime: %s)\n", function.AWSCloudFormationType(), search, function.Runtime) + log.Printf("Found a %s with Logical ID %s and TopicName %s\n", topic.AWSCloudFormationType(), search, topic.TopicName) } diff --git a/example/yaml-to-go/template.yaml b/example/yaml-to-go/template.yaml index 4516e1e4cb..dc8cc6861a 100644 --- a/example/yaml-to-go/template.yaml +++ b/example/yaml-to-go/template.yaml @@ -1,25 +1,7 @@ AWSTemplateFormatVersion: 2010-09-09 -Transform: -- AWS::Serverless-2016-10-31 -- AWS::CodeStar - -Parameters: - ProjectId: - Type: String - Description: AWS CodeStar projectID used to associate new resources to team members Resources: - GetHelloWorld: - Type: AWS::Serverless::Function + ExampleTopic: + Type: AWS::SNS::Topic Properties: - Handler: index.get - Runtime: nodejs6.10 - Role: - Fn::ImportValue: - !Join ['-', [!Ref 'ProjectId', !Ref 'AWS::Region', 'LambdaTrustRole']] - Events: - GetEvent: - Type: Api - Properties: - Path: / - Method: get \ No newline at end of file + TopicName: example diff --git a/generate/cfn-2019-10-26.json b/generate/cfn-2019-10-26.json new file mode 100644 index 0000000000..c740349f91 --- /dev/null +++ b/generate/cfn-2019-10-26.json @@ -0,0 +1,46718 @@ +{ + "PropertyTypes": { + "AWS::AppMesh::VirtualRouter.PortMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html", + "Properties": { + "Port": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html#cfn-appmesh-virtualrouter-portmapping-port", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Protocol": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-portmapping.html#cfn-appmesh-virtualrouter-portmapping-protocol", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::ByteMatchSet.ByteMatchTuple": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html", + "Properties": { + "TargetString": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-targetstring", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TargetStringBase64": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-targetstringbase64", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PositionalConstraint": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-positionalconstraint", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TextTransformation": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-texttransformation", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FieldToMatch": { + "Type": "FieldToMatch", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-fieldtomatch", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.OrcSerDe": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html", + "Properties": { + "BlockSizeBytes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-blocksizebytes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "BloomFilterColumns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-bloomfiltercolumns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "BloomFilterFalsePositiveProbability": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-bloomfilterfalsepositiveprobability", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "Compression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-compression", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DictionaryKeyThreshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-dictionarykeythreshold", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "EnablePadding": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-enablepadding", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "FormatVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-formatversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PaddingTolerance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-paddingtolerance", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "RowIndexStride": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-rowindexstride", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "StripeSizeBytes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-orcserde.html#cfn-kinesisfirehose-deliverystream-orcserde-stripesizebytes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::CoreDefinition.Core": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html", + "Properties": { + "SyncShadow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-syncshadow", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "ThingArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-thingarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CertificateArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-core.html#cfn-greengrass-coredefinition-core-certificatearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerCertificate.Certificate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html", + "Properties": { + "CertificateArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html#cfn-elasticloadbalancingv2-listener-certificates-certificatearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.InputArtifact": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "Alexa::ASK::Skill.SkillPackage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html", + "Properties": { + "S3BucketRole": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-s3bucketrole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3ObjectVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-s3objectversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-s3bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-s3key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Overrides": { + "Type": "Overrides", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html#cfn-ask-skill-skillpackage-overrides", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::MLTransform.FindMatchesParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html", + "Properties": { + "PrecisionRecallTradeoff": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters-precisionrecalltradeoff", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "EnforceProvidedLabels": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters-enforceprovidedlabels", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "PrimaryKeyColumnName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters-primarykeycolumnname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AccuracyCostTradeoff": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters-findmatchesparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters-accuracycosttradeoff", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.BucketEncryption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html", + "Properties": { + "ServerSideEncryptionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html#cfn-s3-bucket-bucketencryption-serversideencryptionconfiguration", + "DuplicatesAllowed": false, + "ItemType": "ServerSideEncryptionRule", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinitionVersion.FunctionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html", + "Properties": { + "MemorySize": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-memorysize", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "Pinned": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-pinned", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ExecArgs": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-execargs", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Timeout": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-timeout", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "EncodingType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-encodingtype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Environment": { + "Type": "Environment", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-environment", + "UpdateType": "Immutable" + }, + "Executable": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-functionconfiguration.html#cfn-greengrass-functiondefinitionversion-functionconfiguration-executable", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticBeanstalk::Environment.OptionSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html", + "Properties": { + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-namespace", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "OptionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-optionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ResourceName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-elasticbeanstalk-environment-optionsetting-resourcename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.MetricDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html", + "Properties": { + "ComparisonOperator": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html#cfn-pinpoint-campaign-metricdimension-comparisonoperator", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html#cfn-pinpoint-campaign-metricdimension-value", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::Rule.RunCommandParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandparameters.html", + "Properties": { + "RunCommandTargets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandparameters.html#cfn-events-rule-runcommandparameters-runcommandtargets", + "DuplicatesAllowed": false, + "ItemType": "RunCommandTarget", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::CertificateManager::Certificate.DomainValidationOption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html", + "Properties": { + "DomainName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoptions-domainname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ValidationDomain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoption-validationdomain", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::DMS::Endpoint.KinesisSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html", + "Properties": { + "MessageFormat": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html#cfn-dms-endpoint-kinesissettings-messageformat", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StreamArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html#cfn-dms-endpoint-kinesissettings-streamarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServiceAccessRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-kinesissettings.html#cfn-dms-endpoint-kinesissettings-serviceaccessrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.DatasetContentVersionValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-datasetcontentversionvalue.html", + "Properties": { + "DatasetName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-datasetcontentversionvalue.html#cfn-iotanalytics-dataset-variable-datasetcontentversionvalue-datasetname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudTrail::Trail.EventSelector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html", + "Properties": { + "DataResources": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-dataresources", + "DuplicatesAllowed": false, + "ItemType": "DataResource", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "IncludeManagementEvents": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-includemanagementevents", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "ReadWriteType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-eventselector.html#cfn-cloudtrail-trail-eventselector-readwritetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.RoutingRuleCondition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html", + "Properties": { + "HttpErrorCodeReturnedEquals": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition-httperrorcodereturnedequals", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "KeyPrefixEquals": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition-keyprefixequals", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.BounceAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-bounceaction.html", + "Properties": { + "Sender": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-bounceaction.html#cfn-ses-receiptrule-bounceaction-sender", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SmtpReplyCode": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-bounceaction.html#cfn-ses-receiptrule-bounceaction-smtpreplycode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Message": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-bounceaction.html#cfn-ses-receiptrule-bounceaction-message", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TopicArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-bounceaction.html#cfn-ses-receiptrule-bounceaction-topicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StatusCode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-bounceaction.html#cfn-ses-receiptrule-bounceaction-statuscode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.Logging": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html", + "Properties": { + "AccessLog": { + "Type": "AccessLog", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html#cfn-appmesh-virtualnode-logging-accesslog", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSetEventDestination.DimensionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html", + "Properties": { + "DimensionValueSource": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-dimensionvaluesource", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefaultDimensionValue": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-defaultdimensionvalue", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DimensionName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-dimensionconfiguration.html#cfn-pinpointemail-configurationseteventdestination-dimensionconfiguration-dimensionname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.LifecycleConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html", + "Properties": { + "Rules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html#cfn-s3-bucket-lifecycleconfig-rules", + "DuplicatesAllowed": false, + "ItemType": "Rule", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::DMS::Endpoint.S3Settings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html", + "Properties": { + "ExternalTableDefinition": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-externaltabledefinition", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BucketName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-bucketname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BucketFolder": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-bucketfolder", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CsvRowDelimiter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-csvrowdelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CsvDelimiter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-csvdelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServiceAccessRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-serviceaccessrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CompressionType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-s3settings.html#cfn-dms-endpoint-s3settings-compressiontype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::LaunchConfiguration.BlockDeviceMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html", + "Properties": { + "DeviceName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-devicename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Ebs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-ebs", + "Required": false, + "Type": "BlockDevice", + "UpdateType": "Mutable" + }, + "NoDevice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-nodevice", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "VirtualName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-virtualname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.Cookies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html", + "Properties": { + "WhitelistedNames": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-whitelistednames", + "UpdateType": "Mutable" + }, + "Forward": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-forward", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Partition.SerdeInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html", + "Properties": { + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html#cfn-glue-partition-serdeinfo-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "SerializationLibrary": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html#cfn-glue-partition-serdeinfo-serializationlibrary", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-serdeinfo.html#cfn-glue-partition-serdeinfo-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualRouter.VirtualRouterListener": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterlistener.html", + "Properties": { + "PortMapping": { + "Type": "PortMapping", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterlistener.html#cfn-appmesh-virtualrouter-virtualrouterlistener-portmapping", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.ProjectSourceVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html", + "Properties": { + "SourceIdentifier": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html#cfn-codebuild-project-projectsourceversion-sourceidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectsourceversion.html#cfn-codebuild-project-projectsourceversion-sourceversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeCommit::Repository.Code": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html", + "Properties": { + "S3": { + "Type": "S3", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html#cfn-codecommit-repository-code-s3", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.MediaPackageOutputDestinationSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputdestinationsettings.html", + "Properties": { + "ChannelId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediapackageoutputdestinationsettings.html#cfn-medialive-channel-mediapackageoutputdestinationsettings-channelid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Deployment.DeploymentCanarySettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html", + "Properties": { + "PercentTraffic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-percenttraffic", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Immutable" + }, + "StageVariableOverrides": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-stagevariableoverrides", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Immutable" + }, + "UseStageCache": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html#cfn-apigateway-deployment-deploymentcanarysettings-usestagecache", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::Step.HadoopJarStepConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html", + "Properties": { + "Args": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-args", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Jar": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-jar", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "MainClass": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-mainclass", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "StepProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-stepproperties", + "DuplicatesAllowed": false, + "ItemType": "KeyValue", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.EbsBlockDeviceConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html", + "Properties": { + "VolumeSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification", + "Required": true, + "Type": "VolumeSpecification", + "UpdateType": "Mutable" + }, + "VolumesPerInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumesperinstance", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.S3Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html", + "Properties": { + "Bucket": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-bucket", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "BundleType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-bundletype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ETag": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-etag", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.PrivateIpAdd": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html", + "Properties": { + "PrivateIpAddress": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html#cfn-ec2-launchtemplate-privateipadd-privateipaddress", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Primary": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-privateipadd.html#cfn-ec2-launchtemplate-privateipadd-primary", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.LaunchTemplateOverrides": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html", + "Properties": { + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplateoverrides.html#cfn-autoscaling-autoscalinggroup-launchtemplateoverrides-instancetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.LambdaFunctionAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html", + "Properties": { + "EventType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-eventtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LambdaFunctionARN": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-lambdafunctionarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.ElasticsearchBufferingHints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html", + "Properties": { + "IntervalInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html#cfn-kinesisfirehose-deliverystream-elasticsearchbufferinghints-intervalinseconds", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "SizeInMBs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchbufferinghints.html#cfn-kinesisfirehose-deliverystream-elasticsearchbufferinghints-sizeinmbs", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::ComputeEnvironment.LaunchTemplateSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html", + "Properties": { + "LaunchTemplateName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-launchtemplatename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Version": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-version", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "LaunchTemplateId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-launchtemplateid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::Database.DatabaseInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html", + "Properties": { + "LocationUri": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-locationuri", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html#cfn-glue-database-databaseinput-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.LifecycleHookSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html", + "Properties": { + "DefaultResult": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-defaultresult", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HeartbeatTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-heartbeattimeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "LifecycleHookName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-lifecyclehookname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "LifecycleTransition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-lifecycletransition", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "NotificationMetadata": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-notificationmetadata", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NotificationTargetARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-notificationtargetarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecification-rolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordColumn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html", + "Properties": { + "Mapping": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-mapping", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SqlType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-sqltype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordcolumn-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.PasswordPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html", + "Properties": { + "RequireNumbers": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requirenumbers", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "MinimumLength": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-minimumlength", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TemporaryPasswordValidityDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-temporarypasswordvaliditydays", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "RequireUppercase": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requireuppercase", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "RequireLowercase": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requirelowercase", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "RequireSymbols": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requiresymbols", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::Broker.EncryptionOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html", + "Properties": { + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html#cfn-amazonmq-broker-encryptionoptions-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UseAwsOwnedKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html#cfn-amazonmq-broker-encryptionoptions-useawsownedkey", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationOutput.KinesisFirehoseOutput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisfirehoseoutput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisfirehoseoutput-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::ConfigurationAggregator.OrganizationAggregationSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html", + "Properties": { + "AllAwsRegions": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-allawsregions", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "AwsRegions": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-awsregions", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-organizationaggregationsource.html#cfn-config-configurationaggregator-organizationaggregationsource-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Layer.ShutdownEventConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html", + "Properties": { + "DelayUntilElbConnectionsDrained": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-delayuntilelbconnectionsdrained", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "ExecutionTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-executiontimeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.Volumes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html", + "Properties": { + "Host": { + "Type": "VolumesHost", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html#cfn-batch-jobdefinition-volumes-host", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html#cfn-batch-jobdefinition-volumes-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalingPolicy.StepScalingPolicyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html", + "Properties": { + "AdjustmentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-adjustmenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Cooldown": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-cooldown", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricAggregationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-metricaggregationtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MinAdjustmentMagnitude": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-minadjustmentmagnitude", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "StepAdjustments": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustments", + "DuplicatesAllowed": false, + "ItemType": "StepAdjustment", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.DeviceShadowEnrich": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html", + "Properties": { + "Attribute": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-attribute", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ThingName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-thingname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceshadowenrich.html#cfn-iotanalytics-pipeline-deviceshadowenrich-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.CorsRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html", + "Properties": { + "AllowedHeaders": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedheaders", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "AllowedMethods": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedmethods", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "AllowedOrigins": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedorigins", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "ExposedHeaders": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-exposedheaders", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-id", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MaxAge": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-maxage", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.S3Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html", + "Properties": { + "BucketName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-bucketname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-s3action.html#cfn-iot-topicrule-s3action-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::InputSecurityGroup.InputWhitelistRuleCidr": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-inputsecuritygroup-inputwhitelistrulecidr.html", + "Properties": { + "Cidr": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-inputsecuritygroup-inputwhitelistrulecidr.html#cfn-medialive-inputsecuritygroup-inputwhitelistrulecidr-cidr", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationOutput.LambdaOutput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-lambdaoutput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-lambdaoutput.html#cfn-kinesisanalyticsv2-applicationoutput-lambdaoutput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.LogsConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html", + "Properties": { + "CloudWatchLogs": { + "Type": "CloudWatchLogsConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html#cfn-codebuild-project-logsconfig-cloudwatchlogs", + "UpdateType": "Mutable" + }, + "S3Logs": { + "Type": "S3LogsConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html#cfn-codebuild-project-logsconfig-s3logs", + "UpdateType": "Mutable" + } + } + }, + "AWS::MSK::Cluster.EncryptionInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html", + "Properties": { + "EncryptionAtRest": { + "Type": "EncryptionAtRest", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html#cfn-msk-cluster-encryptioninfo-encryptionatrest", + "UpdateType": "Immutable" + }, + "EncryptionInTransit": { + "Type": "EncryptionInTransit", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptioninfo.html#cfn-msk-cluster-encryptioninfo-encryptionintransit", + "UpdateType": "Immutable" + } + } + }, + "AWS::ManagedBlockchain::Member.MemberConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MemberFrameworkConfiguration": { + "Type": "MemberFrameworkConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-memberframeworkconfiguration", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberconfiguration.html#cfn-managedblockchain-member-memberconfiguration-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.SplunkDestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html", + "Properties": { + "CloudWatchLoggingOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-cloudwatchloggingoptions", + "Required": false, + "Type": "CloudWatchLoggingOptions", + "UpdateType": "Mutable" + }, + "HECAcknowledgmentTimeoutInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-hecacknowledgmenttimeoutinseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "HECEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-hecendpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "HECEndpointType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-hecendpointtype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "HECToken": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-hectoken", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ProcessingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-processingconfiguration", + "Required": false, + "Type": "ProcessingConfiguration", + "UpdateType": "Mutable" + }, + "RetryOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-retryoptions", + "Required": false, + "Type": "SplunkRetryOptions", + "UpdateType": "Mutable" + }, + "S3BackupMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-s3backupmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "S3Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration-s3configuration", + "Required": true, + "Type": "S3DestinationConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition.Execution": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html", + "Properties": { + "IsolationMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-isolationmode", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RunAs": { + "Type": "RunAs", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-execution.html#cfn-greengrass-functiondefinition-execution-runas", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppSync::DataSource.RelationalDatabaseConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html", + "Properties": { + "RdsHttpEndpointConfig": { + "Type": "RdsHttpEndpointConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-rdshttpendpointconfig", + "UpdateType": "Mutable" + }, + "RelationalDatabaseSourceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-relationaldatabasesourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DirectoryService::MicrosoftAD.VpcSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html", + "Properties": { + "SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-subnetids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.HlsInputSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html", + "Properties": { + "BufferSegments": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html#cfn-medialive-channel-hlsinputsettings-buffersegments", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Retries": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html#cfn-medialive-channel-hlsinputsettings-retries", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Bandwidth": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html#cfn-medialive-channel-hlsinputsettings-bandwidth", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "RetryInterval": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-hlsinputsettings.html#cfn-medialive-channel-hlsinputsettings-retryinterval", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Function.VpcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html", + "Properties": { + "SecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html#cfn-lambda-function-vpcconfig-securitygroupids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html#cfn-lambda-function-vpcconfig-subnetids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::Workteam.CognitoMemberDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-cognitomemberdefinition.html", + "Properties": { + "CognitoUserPool": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-cognitomemberdefinition.html#cfn-sagemaker-workteam-cognitomemberdefinition-cognitouserpool", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CognitoClientId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-cognitomemberdefinition.html#cfn-sagemaker-workteam-cognitomemberdefinition-cognitoclientid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CognitoUserGroup": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-cognitomemberdefinition.html#cfn-sagemaker-workteam-cognitomemberdefinition-cognitousergroup", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::SecurityConfiguration.S3Encryption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html", + "Properties": { + "KmsKeyArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html#cfn-glue-securityconfiguration-s3encryption-kmskeyarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3EncryptionMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryption.html#cfn-glue-securityconfiguration-s3encryption-s3encryptionmode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Member.ApprovalThresholdPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html", + "Properties": { + "ThresholdComparator": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-thresholdcomparator", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ThresholdPercentage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-thresholdpercentage", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ProposalDurationInHours": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-approvalthresholdpolicy.html#cfn-managedblockchain-member-approvalthresholdpolicy-proposaldurationinhours", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::SqlInjectionMatchSet.SqlInjectionMatchTuple": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html", + "Properties": { + "FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-fieldtomatch", + "Required": true, + "Type": "FieldToMatch", + "UpdateType": "Mutable" + }, + "TextTransformation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-texttransformation", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.SageMakerMachineLearningModelResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html", + "Properties": { + "DestinationPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-destinationpath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SageMakerJobArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-sagemakermachinelearningmodelresourcedata-sagemakerjobarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.SetTimer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html", + "Properties": { + "Seconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-seconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TimerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-settimer.html#cfn-iotevents-detectormodel-settimer-timername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.Duration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html#cfn-appmesh-route-duration-value", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Unit": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html#cfn-appmesh-route-duration-unit", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::TargetGroup.TargetGroupAttribute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattribute-key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattribute-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Node.NodeConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html", + "Properties": { + "AvailabilityZone": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html#cfn-managedblockchain-node-nodeconfiguration-availabilityzone", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-node-nodeconfiguration.html#cfn-managedblockchain-node-nodeconfiguration-instancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::App.DataSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html", + "Properties": { + "Arn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-arn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-databasename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.Destination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html", + "Properties": { + "BucketAccountId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-bucketaccountid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "BucketArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-bucketarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Format": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-format", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Prefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-prefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.WeightedTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html", + "Properties": { + "VirtualNode": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-virtualnode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Weight": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-weight", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::WebACL.WafAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html", + "Properties": { + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html#cfn-waf-webacl-action-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.ResetTimer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-resettimer.html", + "Properties": { + "TimerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-resettimer.html#cfn-iotevents-detectormodel-resettimer-timername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::DBSecurityGroup.Ingress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html", + "Properties": { + "CIDRIP": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-cidrip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EC2SecurityGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EC2SecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EC2SecurityGroupOwnerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupownerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::WAF::IPSet.IPSetDescriptor": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html", + "Properties": { + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html#cfn-waf-ipset-ipsetdescriptors-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html#cfn-waf-ipset-ipsetdescriptors-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.IotEvents": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html", + "Properties": { + "InputName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iotevents.html#cfn-iotevents-detectormodel-iotevents-inputname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html", + "Properties": { + "BounceAction": { + "Type": "BounceAction", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-bounceaction", + "UpdateType": "Mutable" + }, + "S3Action": { + "Type": "S3Action", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-s3action", + "UpdateType": "Mutable" + }, + "StopAction": { + "Type": "StopAction", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-stopaction", + "UpdateType": "Mutable" + }, + "SNSAction": { + "Type": "SNSAction", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-snsaction", + "UpdateType": "Mutable" + }, + "WorkmailAction": { + "Type": "WorkmailAction", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-workmailaction", + "UpdateType": "Mutable" + }, + "AddHeaderAction": { + "Type": "AddHeaderAction", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-addheaderaction", + "UpdateType": "Mutable" + }, + "LambdaAction": { + "Type": "LambdaAction", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-action.html#cfn-ses-receiptrule-action-lambdaaction", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.ServiceDiscovery": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html", + "Properties": { + "DNS": { + "Type": "DnsServiceDiscovery", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-dns", + "UpdateType": "Mutable" + }, + "AWSCloudMap": { + "Type": "AwsCloudMapServiceDiscovery", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html#cfn-appmesh-virtualnode-servicediscovery-awscloudmap", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.TransitionEvent": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html", + "Properties": { + "Condition": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-condition", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Actions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-actions", + "ItemType": "Action", + "UpdateType": "Mutable" + }, + "NextState": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-nextstate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EventName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-transitionevent.html#cfn-iotevents-detectormodel-transitionevent-eventname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Deployment.MethodSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html", + "Properties": { + "CacheDataEncrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachedataencrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheTtlInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachettlinseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "CachingEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachingenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DataTraceEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-datatraceenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "HttpMethod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-httpmethod", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LoggingLevel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-logginglevel", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricsEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-metricsenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "ResourcePath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-resourcepath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ThrottlingBurstLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-throttlingburstlimit", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ThrottlingRateLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-throttlingratelimit", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Layer.VolumeConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html", + "Properties": { + "Encrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volumeconfiguration-encrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MountPoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-mountpoint", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NumberOfDisks": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-numberofdisks", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "RaidLevel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-raidlevel", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Size": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-size", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-volumetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.SpotProvisioningSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html", + "Properties": { + "BlockDurationMinutes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-blockdurationminutes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "TimeoutAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-timeoutaction", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TimeoutDurationMinutes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html#cfn-elasticmapreduce-cluster-spotprovisioningspecification-timeoutdurationminutes", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.Coordinates": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates.html", + "Properties": { + "Latitude": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates-latitude", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "Longitude": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates-longitude", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.BootstrapActionConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ScriptBootstrapAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html#cfn-elasticmapreduce-cluster-bootstrapactionconfig-scriptbootstrapaction", + "Required": true, + "Type": "ScriptBootstrapActionConfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceFleetConfig.SpotProvisioningSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html", + "Properties": { + "BlockDurationMinutes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-blockdurationminutes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "TimeoutAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutaction", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TimeoutDurationMinutes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotprovisioningspecification.html#cfn-elasticmapreduce-instancefleetconfig-spotprovisioningspecification-timeoutdurationminutes", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.LaunchTemplateSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html", + "Properties": { + "LaunchTemplateId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-launchtemplateid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LaunchTemplateName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-launchtemplatename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html#cfn-autoscaling-autoscalinggroup-launchtemplatespecification-version", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.ContainerProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html", + "Properties": { + "User": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-user", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Memory": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-memory", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Privileged": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-privileged", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "LinuxParameters": { + "Type": "LinuxParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-linuxparameters", + "UpdateType": "Mutable" + }, + "JobRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-jobrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ReadonlyRootFilesystem": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-readonlyrootfilesystem", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Vcpus": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-vcpus", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Image": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-image", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResourceRequirements": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-resourcerequirements", + "ItemType": "ResourceRequirement", + "UpdateType": "Mutable" + }, + "MountPoints": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-mountpoints", + "ItemType": "MountPoints", + "UpdateType": "Mutable" + }, + "Volumes": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-volumes", + "ItemType": "Volumes", + "UpdateType": "Mutable" + }, + "Command": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-command", + "UpdateType": "Mutable" + }, + "Environment": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-environment", + "ItemType": "Environment", + "UpdateType": "Mutable" + }, + "Ulimits": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-ulimits", + "ItemType": "Ulimit", + "UpdateType": "Mutable" + }, + "InstanceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-instancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::GameLift::Fleet.IpPermission": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html", + "Properties": { + "FromPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-fromport", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "IpRange": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-iprange", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-protocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ToPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-toport", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::DeliveryChannel.ConfigSnapshotDeliveryProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html", + "Properties": { + "DeliveryFrequency": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties-deliveryfrequency", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.Lambda": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html", + "Properties": { + "BatchSize": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html#cfn-iotanalytics-pipeline-lambda-batchsize", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html#cfn-iotanalytics-pipeline-lambda-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LambdaName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html#cfn-iotanalytics-pipeline-lambda-lambdaname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-lambda.html#cfn-iotanalytics-pipeline-lambda-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSetEventDestination.SnsDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-snsdestination.html", + "Properties": { + "TopicArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-snsdestination.html#cfn-pinpointemail-configurationseteventdestination-snsdestination-topicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.GlueConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html", + "Properties": { + "TableName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html#cfn-iotanalytics-dataset-glueconfiguration-tablename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-glueconfiguration.html#cfn-iotanalytics-dataset-glueconfiguration-databasename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html", + "Properties": { + "Dimensions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-dimensions", + "DuplicatesAllowed": false, + "ItemType": "MetricDimension", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-metricname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-namespace", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Statistic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-statistic", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Unit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-unit", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.SqsAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html", + "Properties": { + "QueueUrl": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-queueurl", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "UseBase64": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-sqsaction.html#cfn-iot-topicrule-sqsaction-usebase64", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::Listener.AuthenticateCognitoConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html", + "Properties": { + "AuthenticationRequestExtraParams": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-authenticationrequestextraparams", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "OnUnauthenticatedRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-onunauthenticatedrequest", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Scope": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-scope", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SessionCookieName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-sessioncookiename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SessionTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-sessiontimeout", + "PrimitiveType": "Long", + "Required": false, + "UpdateType": "Mutable" + }, + "UserPoolArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-userpoolarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "UserPoolClientId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-userpoolclientid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "UserPoolDomain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listener-authenticatecognitoconfig-userpooldomain", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::StepFunctions::Activity.TagsEntry": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html#cfn-stepfunctions-activity-tagsentry-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-activity-tagsentry.html#cfn-stepfunctions-activity-tagsentry-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::Service.LoadBalancer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html", + "Properties": { + "ContainerName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html#cfn-ecs-service-loadbalancers-containername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ContainerPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html#cfn-ecs-service-loadbalancers-containerport", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Immutable" + }, + "LoadBalancerName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html#cfn-ecs-service-loadbalancers-loadbalancername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "TargetGroupArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html#cfn-ecs-service-loadbalancers-targetgrouparn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html", + "Properties": { + "KMSEncryptionConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html#cfn-kinesisfirehose-deliverystream-encryptionconfiguration-kmsencryptionconfig", + "Required": false, + "Type": "KMSEncryptionConfig", + "UpdateType": "Mutable" + }, + "NoEncryptionConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-encryptionconfiguration.html#cfn-kinesisfirehose-deliverystream-encryptionconfiguration-noencryptionconfig", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.CloudWatchLoggingOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "LogGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-loggroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LogStreamName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-cloudwatchloggingoptions.html#cfn-kinesisfirehose-deliverystream-cloudwatchloggingoptions-logstreamname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::ImageBuilder.VpcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html", + "Properties": { + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-securitygroupids", + "UpdateType": "Mutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-subnetids", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.LogConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html", + "Properties": { + "LogDriver": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-logdriver", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Options": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-options", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Immutable" + }, + "SecretOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-logconfiguration-secretoptions", + "DuplicatesAllowed": false, + "ItemType": "Secret", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.InputFormatConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-inputformatconfiguration.html", + "Properties": { + "Deserializer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-inputformatconfiguration.html#cfn-kinesisfirehose-deliverystream-inputformatconfiguration-deserializer", + "Required": true, + "Type": "Deserializer", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.PutItemInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html", + "Properties": { + "TableName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-putiteminput.html#cfn-iot-topicrule-putiteminput-tablename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer.AccessLoggingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html", + "Properties": { + "EmitInterval": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-emitinterval", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-enabled", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "S3BucketName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3BucketPrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptFilter.Filter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html", + "Properties": { + "IpFilter": { + "Type": "IpFilter", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html#cfn-ses-receiptfilter-filter-ipfilter", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-filter.html#cfn-ses-receiptfilter-filter-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.TagFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html#cfn-codedeploy-deploymentgroup-tagfilter-key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html#cfn-codedeploy-deploymentgroup-tagfilter-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-tagfilter.html#cfn-codedeploy-deploymentgroup-tagfilter-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSet.SendingOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-sendingoptions.html", + "Properties": { + "SendingEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-sendingoptions.html#cfn-pinpointemail-configurationset-sendingoptions-sendingenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.SpotFleetTagSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html", + "Properties": { + "ResourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html#cfn-ec2-spotfleet-spotfleettagspecification-resourcetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-tagspecifications.html#cfn-ec2-spotfleet-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.Device": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html", + "Properties": { + "ContainerPath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html#cfn-ecs-taskdefinition-device-containerpath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "HostPath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html#cfn-ecs-taskdefinition-device-hostpath", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Permissions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html#cfn-ecs-taskdefinition-device-permissions", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::SpotFleet.PrivateIpAddressSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html", + "Properties": { + "Primary": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-primary", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "PrivateIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-privateipaddress", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordFormat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html", + "Properties": { + "MappingParameters": { + "Type": "MappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordformat-mappingparameters", + "UpdateType": "Mutable" + }, + "RecordFormatType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-recordformat.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-recordformat-recordformattype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::Listener.Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html", + "Properties": { + "AuthenticateCognitoConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-authenticatecognitoconfig", + "Required": false, + "Type": "AuthenticateCognitoConfig", + "UpdateType": "Mutable" + }, + "AuthenticateOidcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-authenticateoidcconfig", + "Required": false, + "Type": "AuthenticateOidcConfig", + "UpdateType": "Mutable" + }, + "FixedResponseConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-fixedresponseconfig", + "Required": false, + "Type": "FixedResponseConfig", + "UpdateType": "Mutable" + }, + "Order": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-order", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "RedirectConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-action-redirectconfig", + "Required": false, + "Type": "RedirectConfig", + "UpdateType": "Mutable" + }, + "TargetGroupArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-defaultactions-targetgrouparn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-defaultactions-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Job.JobCommand": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html", + "Properties": { + "PythonVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html#cfn-glue-job-jobcommand-pythonversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ScriptLocation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html#cfn-glue-job-jobcommand-scriptlocation", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-jobcommand.html#cfn-glue-job-jobcommand-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EC2Fleet.FleetLaunchTemplateSpecificationRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html", + "Properties": { + "LaunchTemplateName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-launchtemplatename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Version": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-version", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LaunchTemplateId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplatespecificationrequest-launchtemplateid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationOutput.Output": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html", + "Properties": { + "DestinationSchema": { + "Type": "DestinationSchema", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-destinationschema", + "UpdateType": "Mutable" + }, + "LambdaOutput": { + "Type": "LambdaOutput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-lambdaoutput", + "UpdateType": "Mutable" + }, + "KinesisFirehoseOutput": { + "Type": "KinesisFirehoseOutput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-kinesisfirehoseoutput", + "UpdateType": "Mutable" + }, + "KinesisStreamsOutput": { + "Type": "KinesisStreamsOutput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-kinesisstreamsoutput", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-output.html#cfn-kinesisanalytics-applicationoutput-output-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::Cluster.InstanceFleetConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html", + "Properties": { + "InstanceTypeConfigs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-instancetypeconfigs", + "DuplicatesAllowed": false, + "ItemType": "InstanceTypeConfig", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "LaunchSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-launchspecifications", + "Required": false, + "Type": "InstanceFleetProvisioningSpecifications", + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "TargetOnDemandCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-targetondemandcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "TargetSpotCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html#cfn-elasticmapreduce-cluster-instancefleetconfig-targetspotcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.ProcessingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html#cfn-kinesisfirehose-deliverystream-processingconfiguration-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Processors": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processingconfiguration.html#cfn-kinesisfirehose-deliverystream-processingconfiguration-processors", + "DuplicatesAllowed": false, + "ItemType": "Processor", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.LocalSecondaryIndex": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html", + "Properties": { + "IndexName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-indexname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "KeySchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-keyschema", + "DuplicatesAllowed": false, + "ItemType": "KeySchema", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Projection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-projection", + "Required": true, + "Type": "Projection", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::DBInstance.DBInstanceRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-dbinstancerole.html", + "Properties": { + "FeatureName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-dbinstancerole.html#cfn-rds-dbinstance-dbinstancerole-featurename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-dbinstancerole.html#cfn-rds-dbinstance-dbinstancerole-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Status": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-dbinstancerole.html#cfn-rds-dbinstance-dbinstancerole-status", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.JobFlowInstancesConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html", + "Properties": { + "AdditionalMasterSecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-additionalmastersecuritygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "AdditionalSlaveSecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-additionalslavesecuritygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "CoreInstanceFleet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-coreinstancefleet", + "Required": false, + "Type": "InstanceFleetConfig", + "UpdateType": "Immutable" + }, + "CoreInstanceGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-coreinstancegroup", + "Required": false, + "Type": "InstanceGroupConfig", + "UpdateType": "Immutable" + }, + "Ec2KeyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2keyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Ec2SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2subnetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Ec2SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-ec2subnetids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EmrManagedMasterSecurityGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-emrmanagedmastersecuritygroup", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EmrManagedSlaveSecurityGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-emrmanagedslavesecuritygroup", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "HadoopVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-hadoopversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "KeepJobFlowAliveWhenNoSteps": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-keepjobflowalivewhennosteps", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "MasterInstanceFleet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-masterinstancefleet", + "Required": false, + "Type": "InstanceFleetConfig", + "UpdateType": "Immutable" + }, + "MasterInstanceGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-masterinstancegroup", + "Required": false, + "Type": "InstanceGroupConfig", + "UpdateType": "Immutable" + }, + "Placement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-placement", + "Required": false, + "Type": "PlacementType", + "UpdateType": "Immutable" + }, + "ServiceAccessSecurityGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-serviceaccesssecuritygroup", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "TerminationProtected": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html#cfn-elasticmapreduce-cluster-jobflowinstancesconfig-terminationprotected", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPNConnection.VpnTunnelOptionsSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html", + "Properties": { + "PreSharedKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html#cfn-ec2-vpnconnection-vpntunneloptionsspecification-presharedkey", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "TunnelInsideCidr": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html#cfn-ec2-vpnconnection-vpntunneloptionsspecification-tunnelinsidecidr", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Route53::HealthCheck.HealthCheckConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html", + "Properties": { + "AlarmIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-alarmidentifier", + "Required": false, + "Type": "AlarmIdentifier", + "UpdateType": "Mutable" + }, + "ChildHealthChecks": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-childhealthchecks", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EnableSNI": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-enablesni", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "FailureThreshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-failurethreshold", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "FullyQualifiedDomainName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-fullyqualifieddomainname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthThreshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-healththreshold", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "IPAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-ipaddress", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InsufficientDataHealthStatus": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-insufficientdatahealthstatus", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Inverted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-inverted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "MeasureLatency": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-measurelatency", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Regions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-regions", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "RequestInterval": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-requestinterval", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "ResourcePath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-resourcepath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SearchString": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-searchstring", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Amplify::App.BasicAuthConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html", + "Properties": { + "Username": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html#cfn-amplify-app-basicauthconfig-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EnableBasicAuth": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html#cfn-amplify-app-basicauthconfig-enablebasicauth", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Password": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-basicauthconfig.html#cfn-amplify-app-basicauthconfig-password", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.SnsAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html", + "Properties": { + "MessageFormat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-messageformat", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TargetArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-snsaction.html#cfn-iot-topicrule-snsaction-targetarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::DirectoryService::SimpleAD.VpcSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html", + "Properties": { + "SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-subnetids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.CacheBehavior": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html", + "Properties": { + "Compress": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-compress", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "LambdaFunctionAssociations": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-lambdafunctionassociations", + "ItemType": "LambdaFunctionAssociation", + "UpdateType": "Mutable" + }, + "TargetOriginId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-targetoriginid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ViewerProtocolPolicy": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-viewerprotocolpolicy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TrustedSigners": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-trustedsigners", + "UpdateType": "Mutable" + }, + "DefaultTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-defaultttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "FieldLevelEncryptionId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-fieldlevelencryptionid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AllowedMethods": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-allowedmethods", + "UpdateType": "Mutable" + }, + "PathPattern": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-pathpattern", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CachedMethods": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-cachedmethods", + "UpdateType": "Mutable" + }, + "SmoothStreaming": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-smoothstreaming", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ForwardedValues": { + "Type": "ForwardedValues", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-forwardedvalues", + "UpdateType": "Mutable" + }, + "MinTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-minttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "MaxTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-maxttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.StepConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html", + "Properties": { + "ActionOnFailure": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-actiononfailure", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HadoopJarStep": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-hadoopjarstep", + "Required": true, + "Type": "HadoopJarStepConfig", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html#cfn-elasticmapreduce-cluster-stepconfig-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.BlockerDeclaration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::GuardDuty::Filter.FindingCriteria": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html", + "Properties": { + "Criterion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html#cfn-guardduty-filter-findingcriteria-criterion", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "ItemType": { + "Type": "Condition", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html#cfn-guardduty-filter-findingcriteria-itemtype", + "UpdateType": "Mutable" + } + } + }, + "AWS::Elasticsearch::Domain.NodeToNodeEncryptionOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::CloudWatch::Alarm.MetricStat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html", + "Properties": { + "Metric": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-metric", + "Required": true, + "Type": "Metric", + "UpdateType": "Mutable" + }, + "Period": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-period", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "Stat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-stat", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Unit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html#cfn-cloudwatch-alarm-metricstat-unit", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Function.DeadLetterConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html", + "Properties": { + "TargetArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html#cfn-lambda-function-deadletterconfig-targetarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Elasticsearch::Domain.ElasticsearchClusterConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html", + "Properties": { + "DedicatedMasterCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmastercount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "DedicatedMasterEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmasterenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DedicatedMasterType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmastertype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-instancecount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-instnacetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ZoneAwarenessConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-zoneawarenessconfig", + "Required": false, + "Type": "ZoneAwarenessConfig", + "UpdateType": "Mutable" + }, + "ZoneAwarenessEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-zoneawarenessenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::StepFunctions::StateMachine.TagsEntry": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html#cfn-stepfunctions-statemachine-tagsentry-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tagsentry.html#cfn-stepfunctions-statemachine-tagsentry-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinitionVersion.Execution": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html", + "Properties": { + "IsolationMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-isolationmode", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RunAs": { + "Type": "RunAs", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-execution.html#cfn-greengrass-functiondefinitionversion-execution-runas", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalingPolicy.MetricDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html#cfn-applicationautoscaling-scalingpolicy-metricdimension-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::TrafficMirrorFilterRule.TrafficMirrorPortRange": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html", + "Properties": { + "FromPort": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorportrange-fromport", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ToPort": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-trafficmirrorfilterrule-trafficmirrorportrange.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorportrange-toport", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.VideoSelectorProgramId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorprogramid.html", + "Properties": { + "ProgramId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorprogramid.html#cfn-medialive-channel-videoselectorprogramid-programid", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeCommit::Repository.S3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html", + "Properties": { + "ObjectVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html#cfn-codecommit-repository-s3-objectversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html#cfn-codecommit-repository-s3-bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-s3.html#cfn-codecommit-repository-s3-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.OnInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html", + "Properties": { + "Events": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html#cfn-iotevents-detectormodel-oninput-events", + "ItemType": "Event", + "UpdateType": "Mutable" + }, + "TransitionEvents": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-oninput.html#cfn-iotevents-detectormodel-oninput-transitionevents", + "ItemType": "TransitionEvent", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.SourceIpConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html", + "Properties": { + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html#cfn-elasticloadbalancingv2-listenerrule-sourceipconfig-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Budgets::Budget.BudgetData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html", + "Properties": { + "BudgetLimit": { + "Type": "Spend", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgetlimit", + "UpdateType": "Mutable" + }, + "TimePeriod": { + "Type": "TimePeriod", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-timeperiod", + "UpdateType": "Mutable" + }, + "TimeUnit": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-timeunit", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PlannedBudgetLimits": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-plannedbudgetlimits", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "CostFilters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-costfilters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "BudgetName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgetname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CostTypes": { + "Type": "CostTypes", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-costtypes", + "UpdateType": "Mutable" + }, + "BudgetType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgettype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.S3ContentLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html", + "Properties": { + "BucketARN": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-bucketarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FileKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-filekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ObjectVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-s3contentlocation.html#cfn-kinesisanalyticsv2-application-s3contentlocation-objectversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::PatchBaseline.RuleGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rulegroup.html", + "Properties": { + "PatchRules": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rulegroup.html#cfn-ssm-patchbaseline-rulegroup-patchrules", + "ItemType": "Rule", + "UpdateType": "Mutable" + } + } + }, + "Alexa::ASK::Skill.AuthenticationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html", + "Properties": { + "RefreshToken": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html#cfn-ask-skill-authenticationconfiguration-refreshtoken", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ClientSecret": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html#cfn-ask-skill-authenticationconfiguration-clientsecret", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ClientId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html#cfn-ask-skill-authenticationconfiguration-clientid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSet.Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html#cfn-pinpointemail-configurationset-tags-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-tags.html#cfn-pinpointemail-configurationset-tags-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::UsagePlan.ApiStage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html", + "Properties": { + "ApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-apiid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Stage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-stage", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Throttle": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-throttle", + "DuplicatesAllowed": false, + "ItemType": "ThrottleSettings", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::ConfigurationRecorder.RecordingGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html", + "Properties": { + "AllSupported": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-allsupported", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "IncludeGlobalResourceTypes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-includeglobalresourcetypes", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "ResourceTypes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-resourcetypes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::DLM::LifecyclePolicy.Schedule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html", + "Properties": { + "TagsToAdd": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-tagstoadd", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "CreateRule": { + "Type": "CreateRule", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-createrule", + "UpdateType": "Mutable" + }, + "VariableTags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-variabletags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "RetainRule": { + "Type": "RetainRule", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-retainrule", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CopyTags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-copytags", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolResourceServer.ResourceServerScopeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html", + "Properties": { + "ScopeName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html#cfn-cognito-userpoolresourceserver-resourceserverscopetype-scopename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ScopeDescription": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolresourceserver-resourceserverscopetype.html#cfn-cognito-userpoolresourceserver-resourceserverscopetype-scopedescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::WebACL.ActivatedRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html", + "Properties": { + "Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-action", + "Required": false, + "Type": "WafAction", + "UpdateType": "Mutable" + }, + "Priority": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-priority", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "RuleId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-ruleid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.SetDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html", + "Properties": { + "DimensionType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html#cfn-pinpoint-campaign-setdimension-dimensiontype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html#cfn-pinpoint-campaign-setdimension-values", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::DBCluster.ScalingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html", + "Properties": { + "AutoPause": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html#cfn-rds-dbcluster-scalingconfiguration-autopause", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "MaxCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html#cfn-rds-dbcluster-scalingconfiguration-maxcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MinCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html#cfn-rds-dbcluster-scalingconfiguration-mincapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SecondsUntilAutoPause": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-scalingconfiguration.html#cfn-rds-dbcluster-scalingconfiguration-secondsuntilautopause", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.TcpRoute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html", + "Properties": { + "Action": { + "Type": "TcpRouteAction", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-action", + "UpdateType": "Mutable" + } + } + }, + "AWS::FSx::FileSystem.LustreConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html", + "Properties": { + "ImportPath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-importpath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "WeeklyMaintenanceStartTime": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-weeklymaintenancestarttime", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ImportedFileChunkSize": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-importedfilechunksize", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "ExportPath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-exportpath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::CloudFront::StreamingDistribution.TrustedSigners": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html", + "Properties": { + "Enabled": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "AwsAccountNumbers": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-awsaccountnumbers", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.Secret": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-secret.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-secret.html#cfn-ecs-taskdefinition-secret-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ValueFrom": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-secret.html#cfn-ecs-taskdefinition-secret-valuefrom", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::LaunchTemplate.BlockDeviceMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html", + "Properties": { + "Ebs": { + "Type": "Ebs", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs", + "UpdateType": "Mutable" + }, + "NoDevice": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-nodevice", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VirtualName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-virtualname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DeviceName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping.html#cfn-ec2-launchtemplate-blockdevicemapping-devicename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.JSONMappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters.html", + "Properties": { + "RecordRowPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-jsonmappingparameters-recordrowpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticBeanstalk::Application.ApplicationResourceLifecycleConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html", + "Properties": { + "ServiceRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html#cfn-elasticbeanstalk-application-applicationresourcelifecycleconfig-servicerole", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VersionLifecycleConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationresourcelifecycleconfig.html#cfn-elasticbeanstalk-application-applicationresourcelifecycleconfig-versionlifecycleconfig", + "Required": false, + "Type": "ApplicationVersionLifecycleConfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.SpotOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html", + "Properties": { + "SpotInstanceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-spotinstancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstanceInterruptionBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-instanceinterruptionbehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MaxPrice": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-maxprice", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BlockDurationMinutes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-blockdurationminutes", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ValidUntil": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions-validuntil", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.BufferingHints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html", + "Properties": { + "IntervalInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html#cfn-kinesisfirehose-deliverystream-bufferinghints-intervalinseconds", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "SizeInMBs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-bufferinghints.html#cfn-kinesisfirehose-deliverystream-bufferinghints-sizeinmbs", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption.CloudWatchLoggingOption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption.html", + "Properties": { + "LogStreamARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption-logstreamarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.InputAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html", + "Properties": { + "InputAttachmentName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputattachmentname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InputId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InputSettings": { + "Type": "InputSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputattachment.html#cfn-medialive-channel-inputattachment-inputsettings", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.OutputFileUriValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-outputfileurivalue.html", + "Properties": { + "FileName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable-outputfileurivalue.html#cfn-iotanalytics-dataset-variable-outputfileurivalue-filename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.AccessControlTranslation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html", + "Properties": { + "Owner": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html#cfn-s3-bucket-accesscontroltranslation-owner", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::CoreDefinitionVersion.Core": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html", + "Properties": { + "SyncShadow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-syncshadow", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "ThingArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-thingarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CertificateArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinitionversion-core.html#cfn-greengrass-coredefinitionversion-core-certificatearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::RoboMaker::RobotApplication.RobotSoftwareSuite": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html", + "Properties": { + "Version": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html#cfn-robomaker-robotapplication-robotsoftwaresuite-version", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-robotsoftwaresuite.html#cfn-robomaker-robotapplication-robotsoftwaresuite-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.ArtifactStoreMap": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html", + "Properties": { + "ArtifactStore": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-artifactstore", + "Required": true, + "Type": "ArtifactStore", + "UpdateType": "Mutable" + }, + "Region": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstoremap.html#cfn-codepipeline-pipeline-artifactstoremap-region", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeStar::GitHubRepository.Code": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-code.html", + "Properties": { + "S3": { + "Type": "S3", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-code.html#cfn-codestar-githubrepository-code-s3", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion.ResourceInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html", + "Properties": { + "ResourceDataContainer": { + "Type": "ResourceDataContainer", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-resourcedatacontainer", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourceinstance.html#cfn-greengrass-resourcedefinitionversion-resourceinstance-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::WAFRegional::Rule.Predicate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DataId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-dataid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Negated": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-negated", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Job.ConnectionsList": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-connectionslist.html", + "Properties": { + "Connections": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-connectionslist.html#cfn-glue-job-connectionslist-connections", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateOidcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html", + "Properties": { + "AuthenticationRequestExtraParams": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-authenticationrequestextraparams", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "AuthorizationEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-authorizationendpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ClientId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-clientid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ClientSecret": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-clientsecret", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Issuer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-issuer", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "OnUnauthenticatedRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-onunauthenticatedrequest", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Scope": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-scope", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SessionCookieName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-sessioncookiename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SessionTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-sessiontimeout", + "PrimitiveType": "Long", + "Required": false, + "UpdateType": "Mutable" + }, + "TokenEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-tokenendpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "UserInfoEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticateoidcconfig-userinfoendpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.SpotPlacement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html", + "Properties": { + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-spotplacement-availabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "GroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-spotplacement-groupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tenancy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-spotplacement-tenancy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.DefaultCacheBehavior": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html", + "Properties": { + "Compress": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-compress", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "LambdaFunctionAssociations": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-lambdafunctionassociations", + "ItemType": "LambdaFunctionAssociation", + "UpdateType": "Mutable" + }, + "TargetOriginId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-targetoriginid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ViewerProtocolPolicy": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-viewerprotocolpolicy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TrustedSigners": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-trustedsigners", + "UpdateType": "Mutable" + }, + "DefaultTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-defaultttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "FieldLevelEncryptionId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-fieldlevelencryptionid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AllowedMethods": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-allowedmethods", + "UpdateType": "Mutable" + }, + "CachedMethods": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-cachedmethods", + "UpdateType": "Mutable" + }, + "SmoothStreaming": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-smoothstreaming", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ForwardedValues": { + "Type": "ForwardedValues", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-forwardedvalues", + "UpdateType": "Mutable" + }, + "MinTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-minttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "MaxTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-maxttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition.FunctionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html", + "Properties": { + "MemorySize": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-memorysize", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "Pinned": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-pinned", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ExecArgs": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-execargs", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Timeout": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-timeout", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "EncodingType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-encodingtype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Environment": { + "Type": "Environment", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-environment", + "UpdateType": "Immutable" + }, + "Executable": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functionconfiguration.html#cfn-greengrass-functiondefinition-functionconfiguration-executable", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.Variable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html", + "Properties": { + "DatasetContentVersionValue": { + "Type": "DatasetContentVersionValue", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-datasetcontentversionvalue", + "UpdateType": "Mutable" + }, + "DoubleValue": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-doublevalue", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "OutputFileUriValue": { + "Type": "OutputFileUriValue", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-outputfileurivalue", + "UpdateType": "Mutable" + }, + "VariableName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-variablename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StringValue": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-variable.html#cfn-iotanalytics-dataset-variable-stringvalue", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.CapacityReservationPreference": { + "PrimitiveType": "String" + }, + "AWS::CodePipeline::CustomActionType.ArtifactDetails": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html", + "Properties": { + "MaximumCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-maximumcount", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "MinimumCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-minimumcount", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::LoggerDefinitionVersion.Logger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html", + "Properties": { + "Space": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-space", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-type", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Level": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-level", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Component": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinitionversion-logger.html#cfn-greengrass-loggerdefinitionversion-logger-component", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::S3::Bucket.VersioningConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html", + "Properties": { + "Status": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html#cfn-s3-bucket-versioningconfig-status", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.GitHubLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html", + "Properties": { + "CommitId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-commitid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Repository": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-repository", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.TargetGroupInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-targetgroupinfo.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-targetgroupinfo.html#cfn-codedeploy-deploymentgroup-targetgroupinfo-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.CSVMappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html", + "Properties": { + "RecordRowDelimiter": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html#cfn-kinesisanalytics-application-csvmappingparameters-recordrowdelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecordColumnDelimiter": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-csvmappingparameters.html#cfn-kinesisanalytics-application-csvmappingparameters-recordcolumndelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinitionVersion.RunAs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html", + "Properties": { + "Uid": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-uid", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "Gid": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-runas.html#cfn-greengrass-functiondefinitionversion-runas-gid", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::NetworkInterface.InstanceIpv6Address": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html", + "Properties": { + "Ipv6Address": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html#cfn-ec2-networkinterface-instanceipv6address-ipv6address", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticBeanstalk::ApplicationVersion.SourceBundle": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html", + "Properties": { + "S3Bucket": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3bucket", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ConfigurationSetEventDestination.EventDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html", + "Properties": { + "CloudWatchDestination": { + "Type": "CloudWatchDestination", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-cloudwatchdestination", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "MatchingEventTypes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-matchingeventtypes", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "KinesisFirehoseDestination": { + "Type": "KinesisFirehoseDestination", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-eventdestination.html#cfn-ses-configurationseteventdestination-eventdestination-kinesisfirehosedestination", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Step.KeyValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html#cfn-elasticmapreduce-step-keyvalue-key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html#cfn-elasticmapreduce-step-keyvalue-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalableTarget.SuspendedState": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html", + "Properties": { + "DynamicScalingInSuspended": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-dynamicscalinginsuspended", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DynamicScalingOutSuspended": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-dynamicscalingoutsuspended", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "ScheduledScalingSuspended": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-suspendedstate.html#cfn-applicationautoscaling-scalabletarget-suspendedstate-scheduledscalingsuspended", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.CustomizedScalingMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html", + "Properties": { + "MetricName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-metricname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Statistic": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-statistic", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Dimensions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-dimensions", + "ItemType": "MetricDimension", + "UpdateType": "Mutable" + }, + "Unit": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-unit", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Namespace": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedscalingmetricspecification-namespace", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.Filter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-filter.html", + "Properties": { + "DeltaTime": { + "Type": "DeltaTime", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-filter.html#cfn-iotanalytics-dataset-filter-deltatime", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::HostedZone.HostedZoneTag": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html#cfn-route53-hostedzonetags-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html#cfn-route53-hostedzonetags-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.HttpRetryPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html", + "Properties": { + "MaxRetries": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-maxretries", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "PerRetryTimeout": { + "Type": "Duration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-perretrytimeout", + "UpdateType": "Mutable" + }, + "HttpRetryEvents": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-httpretryevents", + "UpdateType": "Mutable" + }, + "TcpRetryEvents": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-tcpretryevents", + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::SimulationApplication.RenderingEngine": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html", + "Properties": { + "Version": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html#cfn-robomaker-simulationapplication-renderingengine-version", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-renderingengine.html#cfn-robomaker-simulationapplication-renderingengine-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::GraphQLApi.Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-tags.html", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "AWS::OpsWorks::App.EnvironmentVariable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#cfn-opsworks-app-environment-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Secure": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#cfn-opsworks-app-environment-secure", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Stage.CanarySetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html", + "Properties": { + "DeploymentId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-deploymentid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PercentTraffic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-percenttraffic", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "StageVariableOverrides": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-stagevariableoverrides", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "UseStageCache": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-usestagecache", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::SecurityConfiguration.CloudWatchEncryption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html", + "Properties": { + "KmsKeyArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html#cfn-glue-securityconfiguration-cloudwatchencryption-kmskeyarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CloudWatchEncryptionMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-cloudwatchencryption.html#cfn-glue-securityconfiguration-cloudwatchencryption-cloudwatchencryptionmode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.FileAccessLog": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html", + "Properties": { + "Path": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html#cfn-appmesh-virtualnode-fileaccesslog-path", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.AuthenticateCognitoConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html", + "Properties": { + "AuthenticationRequestExtraParams": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-authenticationrequestextraparams", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "OnUnauthenticatedRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-onunauthenticatedrequest", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Scope": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-scope", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SessionCookieName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-sessioncookiename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SessionTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-sessiontimeout", + "PrimitiveType": "Long", + "Required": false, + "UpdateType": "Mutable" + }, + "UserPoolArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-userpoolarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "UserPoolClientId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-userpoolclientid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "UserPoolDomain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html#cfn-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig-userpooldomain", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.FixedResponseConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html", + "Properties": { + "ContentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-contenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MessageBody": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-messagebody", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StatusCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listenerrule-fixedresponseconfig-statuscode", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringKeyValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html#cfn-elasticloadbalancingv2-listenerrule-querystringkeyvalue-key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html#cfn-elasticloadbalancingv2-listenerrule-querystringkeyvalue-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.NotificationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html", + "Properties": { + "LambdaConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig", + "DuplicatesAllowed": false, + "ItemType": "LambdaConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "QueueConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-queueconfig", + "DuplicatesAllowed": false, + "ItemType": "QueueConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TopicConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-topicconfig", + "DuplicatesAllowed": false, + "ItemType": "TopicConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.S3MachineLearningModelResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html", + "Properties": { + "DestinationPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-destinationpath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "S3Uri": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinition-s3machinelearningmodelresourcedata-s3uri", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::InstanceFleetConfig.EbsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html", + "Properties": { + "EbsBlockDeviceConfigs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsblockdeviceconfigs", + "DuplicatesAllowed": false, + "ItemType": "EbsBlockDeviceConfig", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EbsOptimized": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsconfiguration.html#cfn-elasticmapreduce-instancefleetconfig-ebsconfiguration-ebsoptimized", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Logs::MetricFilter.MetricTransformation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html", + "Properties": { + "DefaultValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-defaultvalue", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MetricNamespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricnamespace", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MetricValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricvalue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::RemediationConfiguration.ResourceValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-resourcevalue.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-resourcevalue.html#cfn-config-remediationconfiguration-resourcevalue-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.EbsBlockDevice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html", + "Properties": { + "DeleteOnTermination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-deleteontermination", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Encrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-encrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshotId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-snapshotid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-volumesize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-volumetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudWatch::AnomalyDetector.Range": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html", + "Properties": { + "EndTime": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html#cfn-cloudwatch-anomalydetector-range-endtime", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StartTime": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-range.html#cfn-cloudwatch-anomalydetector-range-starttime", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.SourceAuth": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Resource": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-resource", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Crawler.Targets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html", + "Properties": { + "S3Targets": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-s3targets", + "ItemType": "S3Target", + "UpdateType": "Mutable" + }, + "JdbcTargets": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-targets.html#cfn-glue-crawler-targets-jdbctargets", + "ItemType": "JdbcTarget", + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::Rule.NetworkConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-networkconfiguration.html", + "Properties": { + "AwsVpcConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-networkconfiguration.html#cfn-events-rule-networkconfiguration-awsvpcconfiguration", + "Required": false, + "Type": "AwsVpcConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.EmbeddedSourceSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html", + "Properties": { + "Source608ChannelNumber": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html#cfn-medialive-channel-embeddedsourcesettings-source608channelnumber", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Scte20Detection": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html#cfn-medialive-channel-embeddedsourcesettings-scte20detection", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Source608TrackNumber": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html#cfn-medialive-channel-embeddedsourcesettings-source608tracknumber", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Convert608To708": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-embeddedsourcesettings.html#cfn-medialive-channel-embeddedsourcesettings-convert608to708", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::Service.PlacementStrategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html", + "Properties": { + "Field": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-field", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::CloudFront::Distribution.Restrictions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html", + "Properties": { + "GeoRestriction": { + "Type": "GeoRestriction", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html#cfn-cloudfront-distribution-restrictions-georestriction", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::RecordSetGroup.RecordSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html", + "Properties": { + "AliasTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-aliastarget", + "Required": false, + "Type": "AliasTarget", + "UpdateType": "Mutable" + }, + "Comment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-comment", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Failover": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-failover", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "GeoLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-geolocation", + "Required": false, + "Type": "GeoLocation", + "UpdateType": "Mutable" + }, + "HealthCheckId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-healthcheckid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HostedZoneId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzoneid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HostedZoneName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzonename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MultiValueAnswer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-multivalueanswer", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Region": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-region", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ResourceRecords": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-resourcerecords", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SetIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-setidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TTL": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-ttl", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Weight": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-weight", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::ComputeEnvironment.ComputeResources": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html", + "Properties": { + "SpotIamFleetRole": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-spotiamfleetrole", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "MaxvCpus": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-maxvcpus", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "BidPercentage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-bidpercentage", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-securitygroupids", + "UpdateType": "Immutable" + }, + "Subnets": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-subnets", + "UpdateType": "Immutable" + }, + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-type", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AllocationStrategy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-allocationstrategy", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "MinvCpus": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-minvcpus", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "LaunchTemplate": { + "Type": "LaunchTemplateSpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-launchtemplate", + "UpdateType": "Immutable" + }, + "ImageId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-imageid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InstanceRole": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancerole", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InstanceTypes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancetypes", + "UpdateType": "Immutable" + }, + "Ec2KeyPair": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2keypair", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PlacementGroup": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-placementgroup", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-tags", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "DesiredvCpus": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-desiredvcpus", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.InputSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html", + "Properties": { + "Codec": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html#cfn-medialive-channel-inputspecification-codec", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MaximumBitrate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html#cfn-medialive-channel-inputspecification-maximumbitrate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Resolution": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputspecification.html#cfn-medialive-channel-inputspecification-resolution", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion.SageMakerMachineLearningModelResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html", + "Properties": { + "DestinationPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-destinationpath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SageMakerJobArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-sagemakermachinelearningmodelresourcedata-sagemakerjobarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html", + "Properties": { + "AuthenticateCognitoConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-authenticatecognitoconfig", + "Required": false, + "Type": "AuthenticateCognitoConfig", + "UpdateType": "Mutable" + }, + "AuthenticateOidcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-authenticateoidcconfig", + "Required": false, + "Type": "AuthenticateOidcConfig", + "UpdateType": "Mutable" + }, + "FixedResponseConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-fixedresponseconfig", + "Required": false, + "Type": "FixedResponseConfig", + "UpdateType": "Mutable" + }, + "Order": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-order", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "RedirectConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listenerrule-action-redirectconfig", + "Required": false, + "Type": "RedirectConfig", + "UpdateType": "Mutable" + }, + "TargetGroupArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listener-actions-targetgrouparn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listener-actions-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionsType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html", + "Properties": { + "HighAction": { + "Type": "AccountTakeoverActionType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-highaction", + "UpdateType": "Mutable" + }, + "LowAction": { + "Type": "AccountTakeoverActionType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-lowaction", + "UpdateType": "Mutable" + }, + "MediumAction": { + "Type": "AccountTakeoverActionType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractionstype-mediumaction", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.LoadBalancersConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html", + "Properties": { + "ClassicLoadBalancersConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html#cfn-ec2-spotfleet-loadbalancersconfig-classicloadbalancersconfig", + "Required": false, + "Type": "ClassicLoadBalancersConfig", + "UpdateType": "Mutable" + }, + "TargetGroupsConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-loadbalancersconfig.html#cfn-ec2-spotfleet-loadbalancersconfig-targetgroupsconfig", + "Required": false, + "Type": "TargetGroupsConfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.ProcessorParameter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html", + "Properties": { + "ParameterName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html#cfn-kinesisfirehose-deliverystream-processorparameter-parametername", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ParameterValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processorparameter.html#cfn-kinesisfirehose-deliverystream-processorparameter-parametervalue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment.RiskExceptionConfigurationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html", + "Properties": { + "BlockedIPRangeList": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype-blockediprangelist", + "UpdateType": "Mutable" + }, + "SkippedIPRangeList": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfigurationtype-skippediprangelist", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::ApiKey.StageKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-apikey-stagekey.html", + "Properties": { + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-apikey-stagekey.html#cfn-apigateway-apikey-stagekey-restapiid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StageName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-apikey-stagekey.html#cfn-apigateway-apikey-stagekey-stagename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.ServerSideEncryptionByDefault": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html", + "Properties": { + "KMSMasterKeyID": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-kmsmasterkeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SSEAlgorithm": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-ssealgorithm", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.EbsBlockDeviceConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html", + "Properties": { + "VolumeSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumespecification", + "Required": true, + "Type": "VolumeSpecification", + "UpdateType": "Mutable" + }, + "VolumesPerInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html#cfn-elasticmapreduce-cluster-ebsblockdeviceconfig-volumesperinstance", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.EventDimensions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html", + "Properties": { + "Metrics": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-metrics", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "EventType": { + "Type": "SetDimension", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-eventtype", + "UpdateType": "Mutable" + }, + "Attributes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html#cfn-pinpoint-campaign-eventdimensions-attributes", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.ELBInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-elbinfo.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-elbinfo.html#cfn-codedeploy-deploymentgroup-elbinfo-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Backup::BackupPlan.LifecycleResourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html", + "Properties": { + "DeleteAfterDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html#cfn-backup-backupplan-lifecycleresourcetype-deleteafterdays", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "MoveToColdStorageAfterDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-lifecycleresourcetype.html#cfn-backup-backupplan-lifecycleresourcetype-movetocoldstorageafterdays", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::Rule.RunCommandTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html#cfn-events-rule-runcommandtarget-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-runcommandtarget.html#cfn-events-rule-runcommandtarget-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.ResourceRequirement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html", + "Properties": { + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html#cfn-batch-jobdefinition-resourcerequirement-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html#cfn-batch-jobdefinition-resourcerequirement-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::Stack.ApplicationSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html", + "Properties": { + "SettingsGroup": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html#cfn-appstream-stack-applicationsettings-settingsgroup", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-applicationsettings.html#cfn-appstream-stack-applicationsettings-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Deployment.StageDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html", + "Properties": { + "AccessLogSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-accesslogsetting", + "Required": false, + "Type": "AccessLogSetting", + "UpdateType": "Mutable" + }, + "CacheClusterEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cacheclusterenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheClusterSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cacheclustersize", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheDataEncrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachedataencrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheTtlInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachettlinseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "CachingEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachingenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "CanarySetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-canarysetting", + "Required": false, + "Type": "CanarySetting", + "UpdateType": "Mutable" + }, + "ClientCertificateId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-clientcertificateid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DataTraceEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-datatraceenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DocumentationVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-documentationversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LoggingLevel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-logginglevel", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MethodSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-methodsettings", + "DuplicatesAllowed": false, + "ItemType": "MethodSetting", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MetricsEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-metricsenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "ThrottlingBurstLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-throttlingburstlimit", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ThrottlingRateLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-throttlingratelimit", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "TracingEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-tracingenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Variables": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-variables", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.FleetLaunchTemplateSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html", + "Properties": { + "LaunchTemplateId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-launchtemplateid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LaunchTemplateName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-launchtemplatename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-fleetlaunchtemplatespecification.html#cfn-ec2-spotfleet-fleetlaunchtemplatespecification-version", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.RedirectAllRequestsTo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html", + "Properties": { + "HostName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-hostname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-protocol", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::XssMatchSet.XssMatchTuple": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html", + "Properties": { + "FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch", + "Required": true, + "Type": "FieldToMatch", + "UpdateType": "Mutable" + }, + "TextTransformation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-texttransformation", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::LakeFormation::DataLakeSettings.DataLakePrincipal": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-datalakeprincipal.html", + "Properties": { + "DataLakePrincipalIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-datalakeprincipal.html#cfn-lakeformation-datalakesettings-datalakeprincipal-datalakeprincipalidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.SelectAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html", + "Properties": { + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Attributes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-attributes", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-selectattributes.html#cfn-iotanalytics-pipeline-selectattributes-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.SegmentDimensions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html", + "Properties": { + "Demographic": { + "Type": "Demographic", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-demographic", + "UpdateType": "Mutable" + }, + "Metrics": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-metrics", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Attributes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-attributes", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Behavior": { + "Type": "Behavior", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-behavior", + "UpdateType": "Mutable" + }, + "UserAttributes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-userattributes", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Location": { + "Type": "Location", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions.html#cfn-pinpoint-segment-segmentdimensions-location", + "UpdateType": "Mutable" + } + } + }, + "AWS::SecretsManager::RotationSchedule.RotationRules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html", + "Properties": { + "AutomaticallyAfterDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html#cfn-secretsmanager-rotationschedule-rotationrules-automaticallyafterdays", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.Environment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EnvironmentVariables": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-environmentvariables", + "ItemType": "EnvironmentVariable", + "UpdateType": "Mutable" + }, + "PrivilegedMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-privilegedmode", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ImagePullCredentialsType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-imagepullcredentialstype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Image": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-image", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RegistryCredential": { + "Type": "RegistryCredential", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-registrycredential", + "UpdateType": "Mutable" + }, + "ComputeType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-computetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Certificate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-certificate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.SourceSegments": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html", + "Properties": { + "Version": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments-version", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups-sourcesegments.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments-id", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.S3KeyFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html", + "Properties": { + "Rules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules", + "DuplicatesAllowed": false, + "ItemType": "FilterRule", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSetEventDestination.PinpointDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-pinpointdestination.html", + "Properties": { + "ApplicationArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-pinpointdestination.html#cfn-pinpointemail-configurationseteventdestination-pinpointdestination-applicationarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::Fleet.DomainJoinInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-domainjoininfo.html", + "Properties": { + "OrganizationalUnitDistinguishedName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-domainjoininfo.html#cfn-appstream-fleet-domainjoininfo-organizationalunitdistinguishedname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DirectoryName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-domainjoininfo.html#cfn-appstream-fleet-domainjoininfo-directoryname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::Template.Template": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-template-template.html", + "Properties": { + "HtmlPart": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-template-template.html#cfn-ses-template-template-htmlpart", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TextPart": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-template-template.html#cfn-ses-template-template-textpart", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TemplateName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-template-template.html#cfn-ses-template-template-templatename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubjectPart": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-template-template.html#cfn-ses-template-template-subjectpart", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MSK::Cluster.ConfigurationInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html", + "Properties": { + "Revision": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html#cfn-msk-cluster-configurationinfo-revision", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "Arn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-configurationinfo.html#cfn-msk-cluster-configurationinfo-arn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer.LBCookieStickinessPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html", + "Properties": { + "CookieExpirationPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-cookieexpirationperiod", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-policyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.Volume": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html", + "Properties": { + "Device": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html#cfn-ec2-mountpoint-device", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "VolumeId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html#cfn-ec2-mountpoint-volumeid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::NetworkAclEntry.PortRange": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html", + "Properties": { + "From": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-from", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "To": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-to", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.Origin": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html", + "Properties": { + "OriginCustomHeaders": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-origincustomheaders", + "ItemType": "OriginCustomHeader", + "UpdateType": "Mutable" + }, + "DomainName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-domainname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3OriginConfig": { + "Type": "S3OriginConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-s3originconfig", + "UpdateType": "Mutable" + }, + "OriginPath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-originpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-id", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CustomOriginConfig": { + "Type": "CustomOriginConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-customoriginconfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::CodeRepository.GitConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html", + "Properties": { + "SecretArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html#cfn-sagemaker-coderepository-gitconfig-secretarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Branch": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html#cfn-sagemaker-coderepository-gitconfig-branch", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RepositoryUrl": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-coderepository-gitconfig.html#cfn-sagemaker-coderepository-gitconfig-repositoryurl", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppMesh::VirtualNode.AwsCloudMapInstanceAttribute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html#cfn-appmesh-virtualnode-awscloudmapinstanceattribute-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::HostedZone.HostedZoneConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html", + "Properties": { + "Comment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html#cfn-route53-hostedzone-hostedzoneconfig-comment", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Member.NetworkFrameworkConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkframeworkconfiguration.html", + "Properties": { + "NetworkFabricConfiguration": { + "Type": "NetworkFabricConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkframeworkconfiguration.html#cfn-managedblockchain-member-networkframeworkconfiguration-networkfabricconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Connection.ConnectionInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ConnectionType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-connectiontype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MatchCriteria": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-matchcriteria", + "UpdateType": "Mutable" + }, + "PhysicalConnectionRequirements": { + "Type": "PhysicalConnectionRequirements", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-physicalconnectionrequirements", + "UpdateType": "Mutable" + }, + "ConnectionProperties": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-connectionproperties", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html#cfn-glue-connection-connectioninput-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Events::Rule.InputTransformer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html", + "Properties": { + "InputPathsMap": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html#cfn-events-rule-inputtransformer-inputpathsmap", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "InputTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html#cfn-events-rule-inputtransformer-inputtemplate", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.FirehoseAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html", + "Properties": { + "DeliveryStreamName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-deliverystreamname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Separator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-firehoseaction.html#cfn-iot-topicrule-firehoseaction-separator", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask.LoggingInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html", + "Properties": { + "S3Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html#cfn-ssm-maintenancewindowtask-logginginfo-s3bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Region": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html#cfn-ssm-maintenancewindowtask-logginginfo-region", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3Prefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-logginginfo.html#cfn-ssm-maintenancewindowtask-logginginfo-s3prefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.InventoryConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html", + "Properties": { + "Destination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-destination", + "Required": true, + "Type": "Destination", + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-enabled", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "IncludedObjectVersions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-includedobjectversions", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "OptionalFields": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-optionalfields", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Prefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-prefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ScheduleFrequency": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-schedulefrequency", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::WorkSpaces::Workspace.WorkspaceProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html", + "Properties": { + "ComputeTypeName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-computetypename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RootVolumeSizeGib": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-rootvolumesizegib", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "RunningMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-runningmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RunningModeAutoStopTimeoutInMinutes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-runningmodeautostoptimeoutinminutes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "UserVolumeSizeGib": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-uservolumesizegib", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.SecretsManagerSecretResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html", + "Properties": { + "ARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-arn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AdditionalStagingLabelsToDownload": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinition-secretsmanagersecretresourcedata-additionalstaginglabelstodownload", + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::Segment.AttributeDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html", + "Properties": { + "AttributeType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html#cfn-pinpoint-segment-attributedimension-attributetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-attributedimension.html#cfn-pinpoint-segment-attributedimension-values", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.VolumeFrom": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html", + "Properties": { + "ReadOnly": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom-readonly", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceContainer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom-sourcecontainer", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition.Environment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html", + "Properties": { + "Variables": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-variables", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "Execution": { + "Type": "Execution", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-execution", + "UpdateType": "Immutable" + }, + "ResourceAccessPolicies": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-resourceaccesspolicies", + "ItemType": "ResourceAccessPolicy", + "UpdateType": "Immutable" + }, + "AccessSysfs": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-environment.html#cfn-greengrass-functiondefinition-environment-accesssysfs", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.DeltaTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html", + "Properties": { + "TimeExpression": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html#cfn-iotanalytics-dataset-deltatime-timeexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "OffsetSeconds": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatime.html#cfn-iotanalytics-dataset-deltatime-offsetseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Member.NetworkConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FrameworkVersion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-frameworkversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VotingPolicy": { + "Type": "VotingPolicy", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-votingpolicy", + "UpdateType": "Mutable" + }, + "Framework": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-framework", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NetworkFrameworkConfiguration": { + "Type": "NetworkFrameworkConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkconfiguration.html#cfn-managedblockchain-member-networkconfiguration-networkframeworkconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.Scte27SourceSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27sourcesettings.html", + "Properties": { + "Pid": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte27sourcesettings.html#cfn-medialive-channel-scte27sourcesettings-pid", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::MSK::Cluster.BrokerNodeGroupInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html", + "Properties": { + "SecurityGroups": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-securitygroups", + "UpdateType": "Immutable" + }, + "ClientSubnets": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-clientsubnets", + "UpdateType": "Immutable" + }, + "StorageInfo": { + "Type": "StorageInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-storageinfo", + "UpdateType": "Immutable" + }, + "BrokerAZDistribution": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-brokerazdistribution", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-brokernodegroupinfo.html#cfn-msk-cluster-brokernodegroupinfo-instancetype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::DMS::Endpoint.MongoDbSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html", + "Properties": { + "AuthSource": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-authsource", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthMechanism": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-authmechanism", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Username": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DocsToInvestigate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-docstoinvestigate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-servername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Port": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-port", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ExtractDocId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-extractdocid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-databasename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-authtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Password": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-password", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NestingLevel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-mongodbsettings.html#cfn-dms-endpoint-mongodbsettings-nestinglevel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask.Target": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html", + "Properties": { + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html#cfn-ssm-maintenancewindowtask-target-values", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-target.html#cfn-ssm-maintenancewindowtask-target-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html", + "Properties": { + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html#cfn-elasticloadbalancingv2-listenerrule-querystringconfig-values", + "DuplicatesAllowed": false, + "ItemType": "QueryStringKeyValue", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::DirectoryConfig.ServiceAccountCredentials": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html", + "Properties": { + "AccountName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html#cfn-appstream-directoryconfig-serviceaccountcredentials-accountname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AccountPassword": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-directoryconfig-serviceaccountcredentials.html#cfn-appstream-directoryconfig-serviceaccountcredentials-accountpassword", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolClient.AnalyticsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html", + "Properties": { + "UserDataShared": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-userdatashared", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ExternalId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-externalid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-applicationid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolclient-analyticsconfiguration.html#cfn-cognito-userpoolclient-analyticsconfiguration-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.PathPatternConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html", + "Properties": { + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html#cfn-elasticloadbalancingv2-listenerrule-pathpatternconfig-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.GPSPoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html", + "Properties": { + "RangeInKilometers": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-rangeinkilometers", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "Coordinates": { + "Type": "Coordinates", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location-gpspoint.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint-coordinates", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.HeaderMatchMethod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html", + "Properties": { + "Suffix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-suffix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Regex": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-regex", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Exact": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-exact", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Prefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-prefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Range": { + "Type": "MatchRange", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-range", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSetListObject": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagsetlistobject.html", + "Properties": { + "OnPremisesTagGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagsetlistobject.html#cfn-codedeploy-deploymentgroup-onpremisestagsetlistobject-onpremisestaggroup", + "DuplicatesAllowed": false, + "ItemType": "TagFilter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::SNS::Topic.Subscription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html", + "Properties": { + "Endpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html#cfn-sns-topic-subscription-endpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html#cfn-sns-topic-subscription-protocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.PropertyGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html", + "Properties": { + "PropertyMap": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html#cfn-kinesisanalyticsv2-application-propertygroup-propertymap", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "PropertyGroupId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-propertygroup.html#cfn-kinesisanalyticsv2-application-propertygroup-propertygroupid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.ReplicationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html", + "Properties": { + "Role": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-role", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Rules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-rules", + "DuplicatesAllowed": false, + "ItemType": "ReplicationRule", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.Input": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html", + "Properties": { + "NamePrefix": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-nameprefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InputSchema": { + "Type": "InputSchema", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputschema", + "UpdateType": "Mutable" + }, + "KinesisStreamsInput": { + "Type": "KinesisStreamsInput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-kinesisstreamsinput", + "UpdateType": "Mutable" + }, + "KinesisFirehoseInput": { + "Type": "KinesisFirehoseInput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-kinesisfirehoseinput", + "UpdateType": "Mutable" + }, + "InputProcessingConfiguration": { + "Type": "InputProcessingConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputprocessingconfiguration", + "UpdateType": "Mutable" + }, + "InputParallelism": { + "Type": "InputParallelism", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-input.html#cfn-kinesisanalytics-application-input-inputparallelism", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::DataSource.AwsIamConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html", + "Properties": { + "SigningRegion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingregion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SigningServiceName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingservicename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.InputSchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html", + "Properties": { + "RecordEncoding": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordencoding", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecordColumns": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordcolumns", + "ItemType": "RecordColumn", + "UpdateType": "Mutable" + }, + "RecordFormat": { + "Type": "RecordFormat", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputschema.html#cfn-kinesisanalytics-application-inputschema-recordformat", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::DBInstance.ProcessorFeature": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html#cfn-rds-dbinstance-processorfeature-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbinstance-processorfeature.html#cfn-rds-dbinstance-processorfeature-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.KinesisStreamsInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisstreamsinput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisstreamsinput.html#cfn-kinesisanalyticsv2-application-kinesisstreamsinput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.SseKmsEncryptedObjects": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html", + "Properties": { + "Status": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html#cfn-s3-bucket-ssekmsencryptedobjects-status", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html", + "Properties": { + "PredefinedMetricType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ResourceLabel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.HostEntry": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html", + "Properties": { + "Hostname": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html#cfn-ecs-taskdefinition-containerdefinition-hostentry-hostname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "IpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html#cfn-ecs-taskdefinition-containerdefinition-hostentry-ipaddress", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Cognito::UserPool.EmailConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html", + "Properties": { + "ReplyToEmailAddress": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-replytoemailaddress", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EmailSendingAccount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-emailsendingaccount", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-sourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::FSx::FileSystem.SelfManagedActiveDirectoryConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html", + "Properties": { + "FileSystemAdministratorsGroup": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-filesystemadministratorsgroup", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "UserName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DomainName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-domainname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "OrganizationalUnitDistinguishedName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-organizationalunitdistinguishedname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DnsIps": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-dnsips", + "UpdateType": "Mutable" + }, + "Password": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration-password", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.QueueConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html", + "Properties": { + "Event": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-event", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Filter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-filter", + "Required": false, + "Type": "NotificationFilter", + "UpdateType": "Mutable" + }, + "Queue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-queue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.ScalingAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html", + "Properties": { + "Market": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-market", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SimpleScalingPolicyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-simplescalingpolicyconfiguration", + "Required": true, + "Type": "SimpleScalingPolicyConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer.Listeners": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html", + "Properties": { + "InstancePort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-instanceport", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "InstanceProtocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-instanceprotocol", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LoadBalancerPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-loadbalancerport", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "PolicyNames": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-policynames", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-protocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SSLCertificateId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-sslcertificateid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Webhook.WebhookFilterRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html", + "Properties": { + "JsonPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html#cfn-codepipeline-webhook-webhookfilterrule-jsonpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MatchEquals": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookfilterrule.html#cfn-codepipeline-webhook-webhookfilterrule-matchequals", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.ScalingTrigger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html", + "Properties": { + "CloudWatchAlarmDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html#cfn-elasticmapreduce-instancegroupconfig-scalingtrigger-cloudwatchalarmdefinition", + "Required": true, + "Type": "CloudWatchAlarmDefinition", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudWatch::AnomalyDetector.Dimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html#cfn-cloudwatch-anomalydetector-dimension-value", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-dimension.html#cfn-cloudwatch-anomalydetector-dimension-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AmazonMQ::Broker.MaintenanceWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html", + "Properties": { + "DayOfWeek": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html#cfn-amazonmq-broker-maintenancewindow-dayofweek", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TimeOfDay": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html#cfn-amazonmq-broker-maintenancewindow-timeofday", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TimeZone": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html#cfn-amazonmq-broker-maintenancewindow-timezone", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Connection.PhysicalConnectionRequirements": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html", + "Properties": { + "AvailabilityZone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-availabilityzone", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SecurityGroupIdList": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-securitygroupidlist", + "UpdateType": "Mutable" + }, + "SubnetId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-physicalconnectionrequirements.html#cfn-glue-connection-physicalconnectionrequirements-subnetid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::LoadBalancer.LoadBalancerAttribute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.ElasticGpuSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-elasticgpuspecification.html", + "Properties": { + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-elasticgpuspecification.html#cfn-ec2-launchtemplate-elasticgpuspecification-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.TargetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroup.html", + "Properties": { + "Arn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroup.html#cfn-ec2-spotfleet-targetgroup-arn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EC2Fleet.OnDemandOptionsRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html", + "Properties": { + "AllocationStrategy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-allocationstrategy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.TaskDefinitionPlacementConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html", + "Properties": { + "Expression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-expression", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordFormat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html", + "Properties": { + "MappingParameters": { + "Type": "MappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html#cfn-kinesisanalytics-applicationreferencedatasource-recordformat-mappingparameters", + "UpdateType": "Mutable" + }, + "RecordFormatType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordformat.html#cfn-kinesisanalytics-applicationreferencedatasource-recordformat-recordformattype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.Demographic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html", + "Properties": { + "AppVersion": { + "Type": "SetDimension", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-appversion", + "UpdateType": "Mutable" + }, + "DeviceType": { + "Type": "SetDimension", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-devicetype", + "UpdateType": "Mutable" + }, + "Platform": { + "Type": "SetDimension", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-platform", + "UpdateType": "Mutable" + }, + "Channel": { + "Type": "SetDimension", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-channel", + "UpdateType": "Mutable" + }, + "Model": { + "Type": "SetDimension", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-model", + "UpdateType": "Mutable" + }, + "Make": { + "Type": "SetDimension", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-demographic.html#cfn-pinpoint-segment-segmentdimensions-demographic-make", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSet.ReputationOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-reputationoptions.html", + "Properties": { + "ReputationMetricsEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-reputationoptions.html#cfn-pinpointemail-configurationset-reputationoptions-reputationmetricsenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Crawler.JdbcTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html", + "Properties": { + "ConnectionName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-connectionname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Path": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-path", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Exclusions": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-exclusions", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.SetVariable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html", + "Properties": { + "VariableName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html#cfn-iotevents-detectormodel-setvariable-variablename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-setvariable.html#cfn-iotevents-detectormodel-setvariable-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::NetworkInterface.PrivateIpAddressSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html", + "Properties": { + "Primary": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "PrivateIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.GitSubmodulesConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-gitsubmodulesconfig.html", + "Properties": { + "FetchSubmodules": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-gitsubmodulesconfig.html#cfn-codebuild-project-gitsubmodulesconfig-fetchsubmodules", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::ClientVpnEndpoint.ConnectionLogOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html", + "Properties": { + "CloudwatchLogStream": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-cloudwatchlogstream", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "CloudwatchLogGroup": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-connectionlogoptions.html#cfn-ec2-clientvpnendpoint-connectionlogoptions-cloudwatchloggroup", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.LambdaAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html", + "Properties": { + "FunctionArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-lambdaaction.html#cfn-iot-topicrule-lambdaaction-functionarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition.FunctionDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html", + "Properties": { + "DefaultConfig": { + "Type": "DefaultConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-defaultconfig", + "UpdateType": "Immutable" + }, + "Functions": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-functiondefinitionversion.html#cfn-greengrass-functiondefinition-functiondefinitionversion-functions", + "ItemType": "Function", + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.MappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html", + "Properties": { + "JSONMappingParameters": { + "Type": "JSONMappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html#cfn-kinesisanalyticsv2-application-mappingparameters-jsonmappingparameters", + "UpdateType": "Mutable" + }, + "CSVMappingParameters": { + "Type": "CSVMappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-mappingparameters.html#cfn-kinesisanalyticsv2-application-mappingparameters-csvmappingparameters", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.VideoSelectorPid": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorpid.html", + "Properties": { + "Pid": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorpid.html#cfn-medialive-channel-videoselectorpid-pid", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.ObjectLockConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html", + "Properties": { + "ObjectLockEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-objectlockenabled", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Rule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-rule", + "Required": false, + "Type": "ObjectLockRule", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::Service.DeploymentConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html", + "Properties": { + "MaximumPercent": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-maximumpercent", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MinimumHealthyPercent": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-minimumhealthypercent", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.MountPoints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html", + "Properties": { + "ReadOnly": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html#cfn-batch-jobdefinition-mountpoints-readonly", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "SourceVolume": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html#cfn-batch-jobdefinition-mountpoints-sourcevolume", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ContainerPath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html#cfn-batch-jobdefinition-mountpoints-containerpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.DeploymentStyle": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html", + "Properties": { + "DeploymentOption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html#cfn-codedeploy-deploymentgroup-deploymentstyle-deploymentoption", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DeploymentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deploymentstyle.html#cfn-codedeploy-deploymentgroup-deploymentstyle-deploymenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.AdminCreateUserConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html", + "Properties": { + "InviteMessageTemplate": { + "Type": "InviteMessageTemplate", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-invitemessagetemplate", + "UpdateType": "Mutable" + }, + "UnusedAccountValidityDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-unusedaccountvaliditydays", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "AllowAdminCreateUserOnly": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-allowadmincreateuseronly", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.Ebs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html", + "Properties": { + "DeleteOnTermination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-deleteontermination", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Encrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-encrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-instance-ebs-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SnapshotId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-snapshotid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-volumesize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-volumetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Datastore.DatastoreStorage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html", + "Properties": { + "CustomerManagedS3": { + "Type": "CustomerManagedS3", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html#cfn-iotanalytics-datastore-datastorestorage-customermanageds3", + "UpdateType": "Mutable" + }, + "ServiceManagedS3": { + "Type": "ServiceManagedS3", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-datastorestorage.html#cfn-iotanalytics-datastore-datastorestorage-servicemanageds3", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Deployment.CanarySetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html", + "Properties": { + "PercentTraffic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html#cfn-apigateway-deployment-canarysetting-percenttraffic", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "StageVariableOverrides": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html#cfn-apigateway-deployment-canarysetting-stagevariableoverrides", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "UseStageCache": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html#cfn-apigateway-deployment-canarysetting-usestagecache", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.Alarm": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html#cfn-codedeploy-deploymentgroup-alarm-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.SchemaAttribute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html", + "Properties": { + "DeveloperOnlyAttribute": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-developeronlyattribute", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Mutable": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-mutable", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "AttributeDataType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-attributedatatype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StringAttributeConstraints": { + "Type": "StringAttributeConstraints", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-stringattributeconstraints", + "UpdateType": "Mutable" + }, + "Required": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-required", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "NumberAttributeConstraints": { + "Type": "NumberAttributeConstraints", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-numberattributeconstraints", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.Recency": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior-recency.html", + "Properties": { + "Duration": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior-recency.html#cfn-pinpoint-segment-segmentdimensions-behavior-recency-duration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecencyType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior-recency.html#cfn-pinpoint-segment-segmentdimensions-behavior-recency-recencytype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.InputSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html", + "Properties": { + "DeblockFilter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-deblockfilter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FilterStrength": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-filterstrength", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "InputFilter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-inputfilter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceEndBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-sourceendbehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VideoSelector": { + "Type": "VideoSelector", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-videoselector", + "UpdateType": "Mutable" + }, + "AudioSelectors": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-audioselectors", + "ItemType": "AudioSelector", + "UpdateType": "Mutable" + }, + "CaptionSelectors": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-captionselectors", + "ItemType": "CaptionSelector", + "UpdateType": "Mutable" + }, + "DenoiseFilter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-denoisefilter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NetworkInputSettings": { + "Type": "NetworkInputSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-inputsettings.html#cfn-medialive-channel-inputsettings-networkinputsettings", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.SystemControl": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html", + "Properties": { + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-namespace", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalingPolicy.CustomizedMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html", + "Properties": { + "Dimensions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-dimensions", + "DuplicatesAllowed": false, + "ItemType": "MetricDimension", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-metricname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-namespace", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Statistic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-statistic", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Unit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html#cfn-applicationautoscaling-scalingpolicy-customizedmetricspecification-unit", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html", + "Properties": { + "Destination": { + "Type": "DatasetContentDeliveryRuleDestination", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html#cfn-iotanalytics-dataset-datasetcontentdeliveryrule-destination", + "UpdateType": "Mutable" + }, + "EntryName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryrule.html#cfn-iotanalytics-dataset-datasetcontentdeliveryrule-entryname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.TagSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html", + "Properties": { + "ResourceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html#cfn-ec2-launchtemplate-tagspecification-resourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html#cfn-ec2-launchtemplate-tagspecification-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::Model.VpcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-vpcconfig.html", + "Properties": { + "Subnets": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-vpcconfig.html#cfn-sagemaker-model-vpcconfig-subnets", + "UpdateType": "Immutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-vpcconfig.html#cfn-sagemaker-model-vpcconfig-securitygroupids", + "UpdateType": "Immutable" + } + } + }, + "AWS::OpsWorks::Instance.BlockDeviceMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html", + "Properties": { + "DeviceName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-devicename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Ebs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-ebs", + "Required": false, + "Type": "EbsBlockDevice", + "UpdateType": "Mutable" + }, + "NoDevice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-nodevice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VirtualName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-virtualname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.IamInstanceProfile": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html", + "Properties": { + "Arn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile-arn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.NumberAttributeConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html", + "Properties": { + "MinValue": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-minvalue", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MaxValue": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-maxvalue", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.CheckpointConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html", + "Properties": { + "ConfigurationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html#cfn-kinesisanalyticsv2-application-checkpointconfiguration-configurationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CheckpointInterval": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html#cfn-kinesisanalyticsv2-application-checkpointconfiguration-checkpointinterval", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MinPauseBetweenCheckpoints": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html#cfn-kinesisanalyticsv2-application-checkpointconfiguration-minpausebetweencheckpoints", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "CheckpointingEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-checkpointconfiguration.html#cfn-kinesisanalyticsv2-application-checkpointconfiguration-checkpointingenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.RouteSpec": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html", + "Properties": { + "HttpRoute": { + "Type": "HttpRoute", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-httproute", + "UpdateType": "Mutable" + }, + "Priority": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-priority", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TcpRoute": { + "Type": "TcpRoute", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-tcproute", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaStore::Container.CorsRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html", + "Properties": { + "AllowedMethods": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-allowedmethods", + "UpdateType": "Immutable" + }, + "AllowedOrigins": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-allowedorigins", + "UpdateType": "Mutable" + }, + "ExposeHeaders": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-exposeheaders", + "UpdateType": "Mutable" + }, + "MaxAgeSeconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-maxageseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "AllowedHeaders": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediastore-container-corsrule.html#cfn-mediastore-container-corsrule-allowedheaders", + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::Broker.LogList": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-loglist.html", + "Properties": { + "Audit": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-loglist.html#cfn-amazonmq-broker-loglist-audit", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "General": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-loglist.html#cfn-amazonmq-broker-loglist-general", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::Broker.TagsEntry": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-tagsentry.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-tagsentry.html#cfn-amazonmq-broker-tagsentry-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-tagsentry.html#cfn-amazonmq-broker-tagsentry-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Instance.EbsBlockDevice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html", + "Properties": { + "DeleteOnTermination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-deleteontermination", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshotId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-snapshotid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-volumesize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-volumetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::DocumentationPart.Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html", + "Properties": { + "Method": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-method", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-path", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "StatusCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-statuscode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::DataPipeline::Pipeline.PipelineObject": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html", + "Properties": { + "Fields": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-fields", + "DuplicatesAllowed": true, + "ItemType": "Field", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.NoDevice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-nodevice.html", + "Properties": {} + }, + "AWS::AutoScaling::ScalingPolicy.StepAdjustment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html", + "Properties": { + "MetricIntervalLowerBound": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-metricintervallowerbound", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricIntervalUpperBound": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-metricintervalupperbound", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "ScalingAdjustment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-scalingadjustment", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IAM::Role.Policy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html", + "Properties": { + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.InputParallelism": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputparallelism.html", + "Properties": { + "Count": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputparallelism.html#cfn-kinesisanalyticsv2-application-inputparallelism-count", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.Environment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html#cfn-batch-jobdefinition-environment-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html#cfn-batch-jobdefinition-environment-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Input.InputVpcRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html", + "Properties": { + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html#cfn-medialive-input-inputvpcrequest-securitygroupids", + "UpdateType": "Mutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputvpcrequest.html#cfn-medialive-input-inputvpcrequest-subnetids", + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Member.MemberFrameworkConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberframeworkconfiguration.html", + "Properties": { + "MemberFabricConfiguration": { + "Type": "MemberFabricConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberframeworkconfiguration.html#cfn-managedblockchain-member-memberframeworkconfiguration-memberfabricconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.CloudWatchAlarmDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html", + "Properties": { + "ComparisonOperator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-comparisonoperator", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Dimensions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-dimensions", + "DuplicatesAllowed": false, + "ItemType": "MetricDimension", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EvaluationPeriods": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-evaluationperiods", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-metricname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-namespace", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Period": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-period", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "Statistic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-statistic", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Threshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-threshold", + "PrimitiveType": "Double", + "Required": true, + "UpdateType": "Mutable" + }, + "Unit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-unit", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Crawler.Schedule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schedule.html", + "Properties": { + "ScheduleExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schedule.html#cfn-glue-crawler-schedule-scheduleexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.Firehose": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html", + "Properties": { + "DeliveryStreamName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-deliverystreamname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Separator": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-firehose.html#cfn-iotevents-detectormodel-firehose-separator", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::LakeFormation::Permissions.DatabaseResource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-databaseresource.html", + "Properties": { + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-databaseresource.html#cfn-lakeformation-permissions-databaseresource-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::StreamingDistribution.S3Origin": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html", + "Properties": { + "DomainName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-domainname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "OriginAccessIdentity": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-originaccessidentity", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Stack.StackConfigurationManager": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-version", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.VpcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html", + "Properties": { + "Subnets": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html#cfn-codebuild-project-vpcconfig-subnets", + "UpdateType": "Mutable" + }, + "VpcId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html#cfn-codebuild-project-vpcconfig-vpcid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-vpcconfig.html#cfn-codebuild-project-vpcconfig-securitygroupids", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.ElasticsearchAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html", + "Properties": { + "Endpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-endpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Index": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-index", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-elasticsearchaction.html#cfn-iot-topicrule-elasticsearchaction-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.SmsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html", + "Properties": { + "ExternalId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-externalid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SnsCallerArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-snscallerarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticBeanstalk::Application.ApplicationVersionLifecycleConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html", + "Properties": { + "MaxAgeRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html#cfn-elasticbeanstalk-application-applicationversionlifecycleconfig-maxagerule", + "Required": false, + "Type": "MaxAgeRule", + "UpdateType": "Mutable" + }, + "MaxCountRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-applicationversionlifecycleconfig.html#cfn-elasticbeanstalk-application-applicationversionlifecycleconfig-maxcountrule", + "Required": false, + "Type": "MaxCountRule", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.Trigger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html", + "Properties": { + "Schedule": { + "Type": "Schedule", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html#cfn-iotanalytics-dataset-trigger-schedule", + "UpdateType": "Mutable" + }, + "TriggeringDataset": { + "Type": "TriggeringDataset", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger.html#cfn-iotanalytics-dataset-trigger-triggeringdataset", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::TargetGroup.Matcher": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html", + "Properties": { + "HttpCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html#cfn-elasticloadbalancingv2-targetgroup-matcher-httpcode", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.DynamoDBAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html", + "Properties": { + "HashKeyField": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeyfield", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "HashKeyType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeytype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HashKeyValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-hashkeyvalue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "PayloadField": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-payloadfield", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RangeKeyField": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeyfield", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RangeKeyType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeytype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RangeKeyValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rangekeyvalue", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TableName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbaction.html#cfn-iot-topicrule-dynamodbaction-tablename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.HiveJsonSerDe": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-hivejsonserde.html", + "Properties": { + "TimestampFormats": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-hivejsonserde.html#cfn-kinesisfirehose-deliverystream-hivejsonserde-timestampformats", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT1Click::Project.DeviceTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html", + "Properties": { + "DeviceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html#cfn-iot1click-project-devicetemplate-devicetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CallbackOverrides": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-devicetemplate.html#cfn-iot1click-project-devicetemplate-callbackoverrides", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.Schedule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html", + "Properties": { + "TimeZone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-timezone", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "QuietTime": { + "Type": "QuietTime", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-quiettime", + "UpdateType": "Mutable" + }, + "EndTime": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-endtime", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StartTime": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-starttime", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Frequency": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-frequency", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EventFilter": { + "Type": "CampaignEventFilter", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-eventfilter", + "UpdateType": "Mutable" + }, + "IsLocalTime": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html#cfn-pinpoint-campaign-schedule-islocaltime", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition.RunAs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html", + "Properties": { + "Uid": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-uid", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "Gid": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-gid", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + } + } + }, + "AWS::ECS::Service.PlacementConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html", + "Properties": { + "Expression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-expression", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::TargetGroup.TargetDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html", + "Properties": { + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-availabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.TagFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html", + "Properties": { + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html#cfn-autoscalingplans-scalingplan-tagfilter-values", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html#cfn-autoscalingplans-scalingplan-tagfilter-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.CreditSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html", + "Properties": { + "CPUCredits": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html#cfn-ec2-instance-creditspecification-cpucredits", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::SizeConstraintSet.SizeConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html", + "Properties": { + "ComparisonOperator": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-comparisonoperator", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Size": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-size", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TextTransformation": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-texttransformation", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FieldToMatch": { + "Type": "FieldToMatch", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-fieldtomatch", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceDataSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html", + "Properties": { + "ReferenceSchema": { + "Type": "ReferenceSchema", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-referenceschema", + "UpdateType": "Mutable" + }, + "TableName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-tablename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "S3ReferenceDataSource": { + "Type": "S3ReferenceDataSource", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource-s3referencedatasource", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECR::Repository.LifecyclePolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html", + "Properties": { + "LifecyclePolicyText": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-lifecyclepolicytext", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RegistryId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-registryid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisFirehoseOutput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput.html#cfn-kinesisanalyticsv2-applicationoutput-kinesisfirehoseoutput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EC2Fleet.TagRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagrequest.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagrequest.html#cfn-ec2-ec2fleet-tagrequest-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagrequest.html#cfn-ec2-ec2fleet-tagrequest-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::DeviceDefinitionVersion.Device": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html", + "Properties": { + "SyncShadow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-syncshadow", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "ThingArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-thingarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CertificateArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinitionversion-device.html#cfn-greengrass-devicedefinitionversion-device-certificatearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ECS::TaskDefinition.Volume": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html", + "Properties": { + "DockerVolumeConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volume-dockervolumeconfiguration", + "Required": false, + "Type": "DockerVolumeConfiguration", + "UpdateType": "Immutable" + }, + "Host": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-host", + "Required": false, + "Type": "HostVolumeProperties", + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Route53::HostedZone.QueryLoggingConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-queryloggingconfig.html", + "Properties": { + "CloudWatchLogsLogGroupArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-queryloggingconfig.html#cfn-route53-hostedzone-queryloggingconfig-cloudwatchlogsloggrouparn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceDiscovery::Service.HealthCheckCustomConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckcustomconfig.html", + "Properties": { + "FailureThreshold": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckcustomconfig.html#cfn-servicediscovery-service-healthcheckcustomconfig-failurethreshold", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::Association.S3OutputLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html", + "Properties": { + "OutputS3BucketName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3bucketname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "OutputS3KeyPrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-s3outputlocation.html#cfn-ssm-association-s3outputlocation-outputs3keyprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::WebACL.Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html#cfn-wafregional-webacl-action-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Function.Code": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html", + "Properties": { + "S3Bucket": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3bucket", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "S3Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "S3ObjectVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3objectversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ZipFile": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EC2Fleet.TargetCapacitySpecificationRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html", + "Properties": { + "DefaultTargetCapacityType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html#cfn-ec2-ec2fleet-targetcapacityspecificationrequest-defaulttargetcapacitytype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TotalTargetCapacity": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html#cfn-ec2-ec2fleet-targetcapacityspecificationrequest-totaltargetcapacity", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "OnDemandTargetCapacity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html#cfn-ec2-ec2fleet-targetcapacityspecificationrequest-ondemandtargetcapacity", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "SpotTargetCapacity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-targetcapacityspecificationrequest.html#cfn-ec2-ec2fleet-targetcapacityspecificationrequest-spottargetcapacity", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.Processor": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html", + "Properties": { + "Parameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html#cfn-kinesisfirehose-deliverystream-processor-parameters", + "DuplicatesAllowed": false, + "ItemType": "ProcessorParameter", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-processor.html#cfn-kinesisfirehose-deliverystream-processor-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.InputLambdaProcessor": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputlambdaprocessor.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputlambdaprocessor.html#cfn-kinesisanalyticsv2-application-inputlambdaprocessor-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.LicenseSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-licensespecification.html", + "Properties": { + "LicenseConfigurationArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-licensespecification.html#cfn-ec2-launchtemplate-licensespecification-licenseconfigurationarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.EC2TagFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilter.html#cfn-codedeploy-deploymentgroup-ec2tagfilter-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.CorsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html", + "Properties": { + "CorsRules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html#cfn-s3-bucket-cors-corsrule", + "DuplicatesAllowed": false, + "ItemType": "CorsRule", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.ReplicationDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html", + "Properties": { + "AccessControlTranslation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-accesscontroltranslation", + "Required": false, + "Type": "AccessControlTranslation", + "UpdateType": "Mutable" + }, + "Account": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-account", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Bucket": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationconfiguration-rules-destination-bucket", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "EncryptionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-encryptionconfiguration", + "Required": false, + "Type": "EncryptionConfiguration", + "UpdateType": "Mutable" + }, + "StorageClass": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationconfiguration-rules-destination-storageclass", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.AudioSelector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html", + "Properties": { + "SelectorSettings": { + "Type": "AudioSelectorSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html#cfn-medialive-channel-audioselector-selectorsettings", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselector.html#cfn-medialive-channel-audioselector-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.AudioLanguageSelection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html", + "Properties": { + "LanguageCode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html#cfn-medialive-channel-audiolanguageselection-languagecode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LanguageSelectionPolicy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiolanguageselection.html#cfn-medialive-channel-audiolanguageselection-languageselectionpolicy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SecurityGroup.Egress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html", + "Properties": { + "CidrIp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidrip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CidrIpv6": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidripv6", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DestinationPrefixListId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-destinationprefixlistid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DestinationSecurityGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-destsecgroupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "FromPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-fromport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "IpProtocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-ipprotocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ToPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-toport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisStreamsOutput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalyticsv2-applicationoutput-kinesisstreamsoutput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::DataCatalogEncryptionSettings.DataCatalogEncryptionSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html", + "Properties": { + "ConnectionPasswordEncryption": { + "Type": "ConnectionPasswordEncryption", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings-connectionpasswordencryption", + "UpdateType": "Mutable" + }, + "EncryptionAtRest": { + "Type": "EncryptionAtRest", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings-encryptionatrest", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.Channel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html", + "Properties": { + "ChannelName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html#cfn-iotanalytics-pipeline-channel-channelname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html#cfn-iotanalytics-pipeline-channel-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-channel.html#cfn-iotanalytics-pipeline-channel-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.KinesisAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html", + "Properties": { + "PartitionKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-partitionkey", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StreamName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kinesisaction.html#cfn-iot-topicrule-kinesisaction-streamname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSet.DeliveryOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-deliveryoptions.html", + "Properties": { + "SendingPoolName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-deliveryoptions.html#cfn-pinpointemail-configurationset-deliveryoptions-sendingpoolname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.PointInTimeRecoverySpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html", + "Properties": { + "PointInTimeRecoveryEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html#cfn-dynamodb-table-pointintimerecoveryspecification-pointintimerecoveryenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.AribSourceSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-aribsourcesettings.html", + "Properties": {} + }, + "AWS::IoTAnalytics::Datastore.ServiceManagedS3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-servicemanageds3.html", + "Properties": {} + }, + "AWS::AppMesh::Mesh.MeshSpec": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-meshspec.html", + "Properties": { + "EgressFilter": { + "Type": "EgressFilter", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-meshspec.html#cfn-appmesh-mesh-meshspec-egressfilter", + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::RobotApplication.SourceConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html", + "Properties": { + "S3Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-s3bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Architecture": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-architecture", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-robotapplication-sourceconfig.html#cfn-robomaker-robotapplication-sourceconfig-s3key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.FlinkApplicationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html", + "Properties": { + "CheckpointConfiguration": { + "Type": "CheckpointConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-checkpointconfiguration", + "UpdateType": "Mutable" + }, + "ParallelismConfiguration": { + "Type": "ParallelismConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-parallelismconfiguration", + "UpdateType": "Mutable" + }, + "MonitoringConfiguration": { + "Type": "MonitoringConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-flinkapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-flinkapplicationconfiguration-monitoringconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::Route.ParameterConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-route-parameterconstraints.html", + "Properties": { + "Required": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-route-parameterconstraints.html#cfn-apigatewayv2-route-parameterconstraints-required", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Layer.LifecycleEventConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html", + "Properties": { + "ShutdownEventConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration", + "Required": false, + "Type": "ShutdownEventConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.ClearTimer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-cleartimer.html", + "Properties": { + "TimerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-cleartimer.html#cfn-iotevents-detectormodel-cleartimer-timername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.AudioPidSelection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiopidselection.html", + "Properties": { + "Pid": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audiopidselection.html#cfn-medialive-channel-audiopidselection-pid", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Stack.RdsDbInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html", + "Properties": { + "DbPassword": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-dbpassword", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "DbUser": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-dbuser", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RdsDbInstanceArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-rdsdbinstancearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Budgets::Budget.CostTypes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html", + "Properties": { + "IncludeSupport": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includesupport", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeOtherSubscription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includeothersubscription", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeTax": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includetax", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeSubscription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includesubscription", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "UseBlended": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-useblended", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeUpfront": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includeupfront", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeDiscount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includediscount", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeCredit": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includecredit", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeRecurring": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includerecurring", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "UseAmortized": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-useamortized", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeRefund": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includerefund", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::ByteMatchSet.FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html", + "Properties": { + "Data": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-data", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html", + "Properties": { + "CloudwatchAlarm": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchalarm", + "Required": false, + "Type": "CloudwatchAlarmAction", + "UpdateType": "Mutable" + }, + "CloudwatchMetric": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-cloudwatchmetric", + "Required": false, + "Type": "CloudwatchMetricAction", + "UpdateType": "Mutable" + }, + "DynamoDB": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodb", + "Required": false, + "Type": "DynamoDBAction", + "UpdateType": "Mutable" + }, + "DynamoDBv2": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-dynamodbv2", + "Required": false, + "Type": "DynamoDBv2Action", + "UpdateType": "Mutable" + }, + "Elasticsearch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-elasticsearch", + "Required": false, + "Type": "ElasticsearchAction", + "UpdateType": "Mutable" + }, + "Firehose": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-firehose", + "Required": false, + "Type": "FirehoseAction", + "UpdateType": "Mutable" + }, + "IotAnalytics": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-iotanalytics", + "Required": false, + "Type": "IotAnalyticsAction", + "UpdateType": "Mutable" + }, + "Kinesis": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-kinesis", + "Required": false, + "Type": "KinesisAction", + "UpdateType": "Mutable" + }, + "Lambda": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-lambda", + "Required": false, + "Type": "LambdaAction", + "UpdateType": "Mutable" + }, + "Republish": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-republish", + "Required": false, + "Type": "RepublishAction", + "UpdateType": "Mutable" + }, + "S3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-s3", + "Required": false, + "Type": "S3Action", + "UpdateType": "Mutable" + }, + "Sns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sns", + "Required": false, + "Type": "SnsAction", + "UpdateType": "Mutable" + }, + "Sqs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-sqs", + "Required": false, + "Type": "SqsAction", + "UpdateType": "Mutable" + }, + "StepFunctions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-action.html#cfn-iot-topicrule-action-stepfunctions", + "Required": false, + "Type": "StepFunctionsAction", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.AccelerateConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html", + "Properties": { + "AccelerationStatus": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html#cfn-s3-bucket-accelerateconfiguration-accelerationstatus", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.Filter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html", + "Properties": { + "Filter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html#cfn-iotanalytics-pipeline-filter-filter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html#cfn-iotanalytics-pipeline-filter-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-filter.html#cfn-iotanalytics-pipeline-filter-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::ApplicationSettings.Limits": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html", + "Properties": { + "Daily": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html#cfn-pinpoint-applicationsettings-limits-daily", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MaximumDuration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html#cfn-pinpoint-applicationsettings-limits-maximumduration", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Total": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html#cfn-pinpoint-applicationsettings-limits-total", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MessagesPerSecond": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-limits.html#cfn-pinpoint-applicationsettings-limits-messagespersecond", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Trigger.Condition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html", + "Properties": { + "CrawlerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-crawlername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "State": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-state", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CrawlState": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-crawlstate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LogicalOperator": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-logicaloperator", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "JobName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-condition.html#cfn-glue-trigger-condition-jobname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.IotEventsDestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html", + "Properties": { + "InputName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html#cfn-iotanalytics-dataset-ioteventsdestinationconfiguration-inputname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-ioteventsdestinationconfiguration.html#cfn-iotanalytics-dataset-ioteventsdestinationconfiguration-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource.CSVMappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html", + "Properties": { + "RecordRowDelimiter": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-csvmappingparameters-recordrowdelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecordColumnDelimiter": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-csvmappingparameters-recordcolumndelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.DistributionConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html", + "Properties": { + "Logging": { + "Type": "Logging", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-logging", + "UpdateType": "Mutable" + }, + "Comment": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-comment", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefaultRootObject": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-defaultrootobject", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Origins": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-origins", + "ItemType": "Origin", + "UpdateType": "Mutable" + }, + "ViewerCertificate": { + "Type": "ViewerCertificate", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-viewercertificate", + "UpdateType": "Mutable" + }, + "PriceClass": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-priceclass", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefaultCacheBehavior": { + "Type": "DefaultCacheBehavior", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-defaultcachebehavior", + "UpdateType": "Mutable" + }, + "CustomErrorResponses": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-customerrorresponses", + "ItemType": "CustomErrorResponse", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Aliases": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-aliases", + "UpdateType": "Mutable" + }, + "IPV6Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-ipv6enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "WebACLId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-webaclid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HttpVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-httpversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Restrictions": { + "Type": "Restrictions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-restrictions", + "UpdateType": "Mutable" + }, + "CacheBehaviors": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-cachebehaviors", + "ItemType": "CacheBehavior", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.NoncurrentVersionTransition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html", + "Properties": { + "StorageClass": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-storageclass", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TransitionInDays": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-transitionindays", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.DvbSubSourceSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubsourcesettings.html", + "Properties": { + "Pid": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-dvbsubsourcesettings.html#cfn-medialive-channel-dvbsubsourcesettings-pid", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.CaptionSelectorSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html", + "Properties": { + "DvbSubSourceSettings": { + "Type": "DvbSubSourceSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-dvbsubsourcesettings", + "UpdateType": "Mutable" + }, + "Scte27SourceSettings": { + "Type": "Scte27SourceSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-scte27sourcesettings", + "UpdateType": "Mutable" + }, + "AribSourceSettings": { + "Type": "AribSourceSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-aribsourcesettings", + "UpdateType": "Mutable" + }, + "EmbeddedSourceSettings": { + "Type": "EmbeddedSourceSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-embeddedsourcesettings", + "UpdateType": "Mutable" + }, + "Scte20SourceSettings": { + "Type": "Scte20SourceSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-scte20sourcesettings", + "UpdateType": "Mutable" + }, + "TeletextSourceSettings": { + "Type": "TeletextSourceSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselectorsettings.html#cfn-medialive-channel-captionselectorsettings-teletextsourcesettings", + "UpdateType": "Mutable" + } + } + }, + "AWS::LakeFormation::Permissions.DataLakePrincipal": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-datalakeprincipal.html", + "Properties": { + "DataLakePrincipalIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-datalakeprincipal.html#cfn-lakeformation-permissions-datalakeprincipal-datalakeprincipalidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyEmailType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html", + "Properties": { + "TextBody": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-textbody", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HtmlBody": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-htmlbody", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Subject": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyemailtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyemailtype-subject", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Input.InputSourceRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html", + "Properties": { + "Username": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html#cfn-medialive-input-inputsourcerequest-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PasswordParam": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html#cfn-medialive-input-inputsourcerequest-passwordparam", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Url": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputsourcerequest.html#cfn-medialive-input-inputsourcerequest-url", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.VideoSelectorSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html", + "Properties": { + "VideoSelectorProgramId": { + "Type": "VideoSelectorProgramId", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html#cfn-medialive-channel-videoselectorsettings-videoselectorprogramid", + "UpdateType": "Mutable" + }, + "VideoSelectorPid": { + "Type": "VideoSelectorPid", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselectorsettings.html#cfn-medialive-channel-videoselectorsettings-videoselectorpid", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.KeyValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html#cfn-elasticmapreduce-cluster-keyvalue-key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html#cfn-elasticmapreduce-cluster-keyvalue-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudWatch::Alarm.MetricDataQuery": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html", + "Properties": { + "Expression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-expression", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Label": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-label", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricStat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-metricstat", + "Required": false, + "Type": "MetricStat", + "UpdateType": "Mutable" + }, + "ReturnData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html#cfn-cloudwatch-alarm-metricdataquery-returndata", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.LaunchTemplateOverrides": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html", + "Properties": { + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-availabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-instancetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SpotPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-spotprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-subnetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "WeightedCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateoverrides.html#cfn-ec2-spotfleet-launchtemplateoverrides-weightedcapacity", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.S3Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-s3action.html", + "Properties": { + "BucketName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-s3action.html#cfn-ses-receiptrule-s3action-bucketname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "KmsKeyArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-s3action.html#cfn-ses-receiptrule-s3action-kmskeyarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TopicArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-s3action.html#cfn-ses-receiptrule-s3action-topicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ObjectKeyPrefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-s3action.html#cfn-ses-receiptrule-s3action-objectkeyprefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.JSONMappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-jsonmappingparameters.html", + "Properties": { + "RecordRowPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-jsonmappingparameters.html#cfn-kinesisanalytics-application-jsonmappingparameters-recordrowpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.MappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html", + "Properties": { + "JSONMappingParameters": { + "Type": "JSONMappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters-jsonmappingparameters", + "UpdateType": "Mutable" + }, + "CSVMappingParameters": { + "Type": "CSVMappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-mappingparameters-csvmappingparameters", + "UpdateType": "Mutable" + } + } + }, + "AWS::LakeFormation::Permissions.TableResource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html", + "Properties": { + "DatabaseName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html#cfn-lakeformation-permissions-tableresource-databasename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-tableresource.html#cfn-lakeformation-permissions-tableresource-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Elasticsearch::Domain.SnapshotOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html", + "Properties": { + "AutomatedSnapshotStartHour": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html#cfn-elasticsearch-domain-snapshotoptions-automatedsnapshotstarthour", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Stage.AccessLogSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html", + "Properties": { + "DestinationArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-destinationarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Format": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-format", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::SubscriptionDefinition.SubscriptionDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html", + "Properties": { + "Subscriptions": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinition-subscriptiondefinitionversion-subscriptions", + "ItemType": "Subscription", + "UpdateType": "Immutable" + } + } + }, + "AWS::OpsWorks::Layer.LoadBasedAutoScaling": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html", + "Properties": { + "DownScaling": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-downscaling", + "Required": false, + "Type": "AutoScalingThresholds", + "UpdateType": "Mutable" + }, + "Enable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-enable", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "UpScaling": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-upscaling", + "Required": false, + "Type": "AutoScalingThresholds", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.Ulimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html", + "Properties": { + "SoftLimit": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html#cfn-batch-jobdefinition-ulimit-softlimit", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "HardLimit": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html#cfn-batch-jobdefinition-ulimit-hardlimit", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html#cfn-batch-jobdefinition-ulimit-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Transfer::User.SshPublicKey": { + "PrimitiveType": "String" + }, + "AWS::SES::ConfigurationSetEventDestination.DimensionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html", + "Properties": { + "DimensionValueSource": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-dimensionvaluesource", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefaultDimensionValue": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-defaultdimensionvalue", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DimensionName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-dimensionconfiguration.html#cfn-ses-configurationseteventdestination-dimensionconfiguration-dimensionname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.VolumesHost": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html", + "Properties": { + "SourcePath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html#cfn-batch-jobdefinition-volumeshost-sourcepath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Trigger.Predicate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html", + "Properties": { + "Logical": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html#cfn-glue-trigger-predicate-logical", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Conditions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-predicate.html#cfn-glue-trigger-predicate-conditions", + "ItemType": "Condition", + "UpdateType": "Mutable" + } + } + }, + "AWS::IAM::Group.Policy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html", + "Properties": { + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.TeletextSourceSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextsourcesettings.html", + "Properties": { + "PageNumber": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-teletextsourcesettings.html#cfn-medialive-channel-teletextsourcesettings-pagenumber", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::App.EnvironmentVariable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html#cfn-amplify-app-environmentvariable-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-environmentvariable.html#cfn-amplify-app-environmentvariable-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html", + "Properties": { + "ActionName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-actionname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ContainerAction": { + "Type": "ContainerAction", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-containeraction", + "UpdateType": "Mutable" + }, + "QueryAction": { + "Type": "QueryAction", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-action.html#cfn-iotanalytics-dataset-action-queryaction", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.Ebs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html", + "Properties": { + "SnapshotId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-snapshotid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VolumeType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-volumetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Encrypted": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-encrypted", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Iops": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-iops", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "VolumeSize": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-volumesize", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DeleteOnTermination": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-blockdevicemapping-ebs.html#cfn-ec2-launchtemplate-blockdevicemapping-ebs-deleteontermination", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Table.Order": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-order.html", + "Properties": { + "Column": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-order.html#cfn-glue-table-order-column", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SortOrder": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-order.html#cfn-glue-table-order-sortorder", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobQueue.ComputeEnvironmentOrder": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html", + "Properties": { + "ComputeEnvironment": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html#cfn-batch-jobqueue-computeenvironmentorder-computeenvironment", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Order": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-computeenvironmentorder.html#cfn-batch-jobqueue-computeenvironmentorder-order", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html", + "Properties": { + "Notify": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype-notify", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "EventAction": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoveractiontype-eventaction", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::Domain.SubDomainSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html", + "Properties": { + "Prefix": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html#cfn-amplify-domain-subdomainsetting-prefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BranchName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html#cfn-amplify-domain-subdomainsetting-branchname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.ElasticsearchRetryOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchretryoptions.html", + "Properties": { + "DurationInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchretryoptions.html#cfn-kinesisfirehose-deliverystream-elasticsearchretryoptions-durationinseconds", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.SSESpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html", + "Properties": { + "KMSMasterKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-kmsmasterkeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SSEEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-sseenabled", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "SSEType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-ssetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::RecordSetGroup.AliasTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html", + "Properties": { + "DNSName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-dnshostname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "EvaluateTargetHealth": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "HostedZoneId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-hostedzoneid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Alias.AliasRoutingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html", + "Properties": { + "AdditionalVersionWeights": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html#cfn-lambda-alias-aliasroutingconfiguration-additionalversionweights", + "DuplicatesAllowed": false, + "ItemType": "VersionWeight", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EC2Fleet.FleetLaunchTemplateOverridesRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html", + "Properties": { + "WeightedCapacity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-weightedcapacity", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "Priority": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-priority", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "AvailabilityZone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-availabilityzone", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SubnetId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-subnetid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstanceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-instancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MaxPrice": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateoverridesrequest-maxprice", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.AbortIncompleteMultipartUpload": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html", + "Properties": { + "DaysAfterInitiation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html#cfn-s3-bucket-abortincompletemultipartupload-daysafterinitiation", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::Branch.EnvironmentVariable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html#cfn-amplify-branch-environmentvariable-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-environmentvariable.html#cfn-amplify-branch-environmentvariable-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.LinuxParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html", + "Properties": { + "Devices": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-devices", + "ItemType": "Device", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.ContainerAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html", + "Properties": { + "Variables": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-variables", + "ItemType": "Variable", + "UpdateType": "Mutable" + }, + "ExecutionRoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-executionrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Image": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-image", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResourceConfiguration": { + "Type": "ResourceConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-containeraction.html#cfn-iotanalytics-dataset-containeraction-resourceconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.Input": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html", + "Properties": { + "NamePrefix": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-nameprefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InputSchema": { + "Type": "InputSchema", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputschema", + "UpdateType": "Mutable" + }, + "KinesisStreamsInput": { + "Type": "KinesisStreamsInput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-kinesisstreamsinput", + "UpdateType": "Mutable" + }, + "KinesisFirehoseInput": { + "Type": "KinesisFirehoseInput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-kinesisfirehoseinput", + "UpdateType": "Mutable" + }, + "InputProcessingConfiguration": { + "Type": "InputProcessingConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputprocessingconfiguration", + "UpdateType": "Mutable" + }, + "InputParallelism": { + "Type": "InputParallelism", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-input.html#cfn-kinesisanalyticsv2-application-input-inputparallelism", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Input.InputDestinationRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdestinationrequest.html", + "Properties": { + "StreamName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-inputdestinationrequest.html#cfn-medialive-input-inputdestinationrequest-streamname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.OutputArtifact": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.DataFormatConversionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-enabled", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "InputFormatConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-inputformatconfiguration", + "Required": true, + "Type": "InputFormatConfiguration", + "UpdateType": "Mutable" + }, + "OutputFormatConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-outputformatconfiguration", + "Required": true, + "Type": "OutputFormatConfiguration", + "UpdateType": "Mutable" + }, + "SchemaConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-schemaconfiguration", + "Required": true, + "Type": "SchemaConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.ApplicationSnapshotConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationsnapshotconfiguration.html", + "Properties": { + "SnapshotsEnabled": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationsnapshotconfiguration.html#cfn-kinesisanalyticsv2-application-applicationsnapshotconfiguration-snapshotsenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::FSx::FileSystem.WindowsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html", + "Properties": { + "SelfManagedActiveDirectoryConfiguration": { + "Type": "SelfManagedActiveDirectoryConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-selfmanagedactivedirectoryconfiguration", + "UpdateType": "Mutable" + }, + "WeeklyMaintenanceStartTime": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-weeklymaintenancestarttime", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ActiveDirectoryId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-activedirectoryid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ThroughputCapacity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-throughputcapacity", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "CopyTagsToBackups": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-copytagstobackups", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "DailyAutomaticBackupStartTime": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-dailyautomaticbackupstarttime", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AutomaticBackupRetentionDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-windowsconfiguration.html#cfn-fsx-filesystem-windowsconfiguration-automaticbackupretentiondays", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Partition.Column": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html", + "Properties": { + "Comment": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html#cfn-glue-partition-column-comment", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html#cfn-glue-partition-column-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-column.html#cfn-glue-partition-column-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::Service.AwsVpcConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html", + "Properties": { + "AssignPublicIp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-assignpublicip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-securitygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Subnets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-subnets", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::Branch.BasicAuthConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html", + "Properties": { + "Username": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html#cfn-amplify-branch-basicauthconfig-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EnableBasicAuth": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html#cfn-amplify-branch-basicauthconfig-enablebasicauth", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Password": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-branch-basicauthconfig.html#cfn-amplify-branch-basicauthconfig-password", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.KinesisFirehoseInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisfirehoseinput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-kinesisfirehoseinput.html#cfn-kinesisanalyticsv2-application-kinesisfirehoseinput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::IdentityPoolRoleAttachment.RoleMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AmbiguousRoleResolution": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-ambiguousroleresolution", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RulesConfiguration": { + "Type": "RulesConfigurationType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-rulesconfiguration", + "UpdateType": "Mutable" + }, + "IdentityProvider": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-identityprovider", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.S3LogsConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html", + "Properties": { + "Status": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-status", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EncryptionDisabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-encryptiondisabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-s3logsconfig.html#cfn-codebuild-project-s3logsconfig-location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagset.html", + "Properties": { + "OnPremisesTagSetList": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisestagset.html#cfn-codedeploy-deploymentgroup-onpremisestagset-onpremisestagsetlist", + "DuplicatesAllowed": false, + "ItemType": "OnPremisesTagSetListObject", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::HealthCheck.AlarmIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html#cfn-route53-healthcheck-alarmidentifier-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Region": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-alarmidentifier.html#cfn-route53-healthcheck-alarmidentifier-region", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::SimulationApplication.SimulationSoftwareSuite": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html", + "Properties": { + "Version": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite-version", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-simulationsoftwaresuite.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Backup::BackupSelection.BackupSelectionResourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html", + "Properties": { + "ListOfTags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-listoftags", + "ItemType": "ConditionResourceType", + "UpdateType": "Mutable" + }, + "SelectionName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-selectionname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IamRoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-iamrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Resources": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-backupselectionresourcetype.html#cfn-backup-backupselection-backupselectionresourcetype-resources", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion.LocalDeviceResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html", + "Properties": { + "SourcePath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-sourcepath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "GroupOwnerSetting": { + "Type": "GroupOwnerSetting", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localdeviceresourcedata.html#cfn-greengrass-resourcedefinitionversion-localdeviceresourcedata-groupownersetting", + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.GroupOwnerSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html", + "Properties": { + "AutoAddGroupOwner": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-autoaddgroupowner", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "GroupOwner": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-groupownersetting.html#cfn-greengrass-resourcedefinition-groupownersetting-groupowner", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoT::TopicRule.IotAnalyticsAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html", + "Properties": { + "ChannelName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-channelname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-iotanalyticsaction.html#cfn-iot-topicrule-iotanalyticsaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.Backend": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html", + "Properties": { + "VirtualService": { + "Type": "VirtualServiceBackend", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html#cfn-appmesh-virtualnode-backend-virtualservice", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.OriginCustomHeader": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html", + "Properties": { + "HeaderValue": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headervalue", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HeaderName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::GraphQLApi.UserPoolConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html", + "Properties": { + "AppIdClientRegex": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html#cfn-appsync-graphqlapi-userpoolconfig-appidclientregex", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UserPoolId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html#cfn-appsync-graphqlapi-userpoolconfig-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AwsRegion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html#cfn-appsync-graphqlapi-userpoolconfig-awsregion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefaultAction": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html#cfn-appsync-graphqlapi-userpoolconfig-defaultaction", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::Workteam.MemberDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-memberdefinition.html", + "Properties": { + "CognitoMemberDefinition": { + "Type": "CognitoMemberDefinition", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-memberdefinition.html#cfn-sagemaker-workteam-memberdefinition-cognitomemberdefinition", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.KMSEncryptionConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kmsencryptionconfig.html", + "Properties": { + "AWSKMSKeyARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kmsencryptionconfig.html#cfn-kinesisfirehose-deliverystream-kmsencryptionconfig-awskmskeyarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::GameLift::Build.S3Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html", + "Properties": { + "Bucket": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-bucket", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::Cluster.VolumeSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html", + "Properties": { + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SizeInGB": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-sizeingb", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html#cfn-elasticmapreduce-cluster-volumespecification-volumetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::CustomActionType.ConfigurationProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-key", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Queryable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-queryable", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Required": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-required", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "Secret": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-secret", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.SpotFleetMonitoring": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html#cfn-ec2-spotfleet-spotfleetmonitoring-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.EncryptionKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html", + "Properties": { + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.OnEnter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onenter.html", + "Properties": { + "Events": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onenter.html#cfn-iotevents-detectormodel-onenter-events", + "ItemType": "Event", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::DataSource.DynamoDBConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html", + "Properties": { + "TableName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-tablename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AwsRegion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-awsregion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UseCallerCredentials": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-usecallercredentials", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.HibernationOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-hibernationoptions.html", + "Properties": { + "Configured": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-hibernationoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-hibernationoptions-configured", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.PublicAccessBlockConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html", + "Properties": { + "BlockPublicAcls": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-blockpublicacls", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "BlockPublicPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-blockpublicpolicy", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "IgnorePublicAcls": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-ignorepublicacls", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "RestrictPublicBuckets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-restrictpublicbuckets", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.VolumeSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html", + "Properties": { + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SizeInGB": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-sizeingb", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-volumetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.HttpHeaderConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html", + "Properties": { + "HttpHeaderName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-httpheaderconfig-httpheadername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-httpheaderconfig-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::SqlInjectionMatchSet.SqlInjectionMatchTuple": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html", + "Properties": { + "TextTransformation": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-texttransformation", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FieldToMatch": { + "Type": "FieldToMatch", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-fieldtomatch", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::OptionGroup.OptionSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html#cfn-rds-optiongroup-optionconfigurations-optionsettings-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html#cfn-rds-optiongroup-optionconfigurations-optionsettings-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.Deployment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "IgnoreApplicationStopFailures": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-ignoreapplicationstopfailures", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Revision": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision", + "Required": true, + "Type": "RevisionLocation", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::ClientVpnEndpoint.CertificateAuthenticationRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-certificateauthenticationrequest.html", + "Properties": { + "ClientRootCertificateChainArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-certificateauthenticationrequest.html#cfn-ec2-clientvpnendpoint-certificateauthenticationrequest-clientrootcertificatechainarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSet.TrackingOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-trackingoptions.html", + "Properties": { + "CustomRedirectDomain": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationset-trackingoptions.html#cfn-pinpointemail-configurationset-trackingoptions-customredirectdomain", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::IdentityPoolRoleAttachment.MappingRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html", + "Properties": { + "MatchType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-matchtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Claim": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-claim", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::IdentityPool.CognitoStreams": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html", + "Properties": { + "StreamingStatus": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-streamingstatus", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StreamName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-streamname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.InputSchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html", + "Properties": { + "RecordEncoding": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordencoding", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecordColumns": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordcolumns", + "ItemType": "RecordColumn", + "UpdateType": "Mutable" + }, + "RecordFormat": { + "Type": "RecordFormat", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputschema.html#cfn-kinesisanalyticsv2-application-inputschema-recordformat", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Partition.PartitionInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html", + "Properties": { + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "StorageDescriptor": { + "Type": "StorageDescriptor", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-storagedescriptor", + "UpdateType": "Mutable" + }, + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-partitioninput.html#cfn-glue-partition-partitioninput-values", + "UpdateType": "Immutable" + } + } + }, + "AWS::CodeStar::GitHubRepository.S3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html", + "Properties": { + "ObjectVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html#cfn-codestar-githubrepository-s3-objectversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html#cfn-codestar-githubrepository-s3-bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codestar-githubrepository-s3.html#cfn-codestar-githubrepository-s3-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::Service.NetworkConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html", + "Properties": { + "AwsvpcConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html#cfn-ecs-service-networkconfiguration-awsvpcconfiguration", + "Required": false, + "Type": "AwsVpcConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationOutput.DestinationSchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-destinationschema.html", + "Properties": { + "RecordFormatType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-destinationschema.html#cfn-kinesisanalytics-applicationoutput-destinationschema-recordformattype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.Limits": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html", + "Properties": { + "Daily": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html#cfn-pinpoint-campaign-limits-daily", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MaximumDuration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html#cfn-pinpoint-campaign-limits-maximumduration", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Total": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html#cfn-pinpoint-campaign-limits-total", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MessagesPerSecond": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html#cfn-pinpoint-campaign-limits-messagespersecond", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.DefaultRetention": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html", + "Properties": { + "Days": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-days", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Mode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-mode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Years": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-years", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.InstanceFleetProvisioningSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html", + "Properties": { + "SpotSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-cluster-instancefleetprovisioningspecifications-spotspecification", + "Required": true, + "Type": "SpotProvisioningSpecification", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Datastore.RetentionPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html", + "Properties": { + "NumberOfDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html#cfn-iotanalytics-datastore-retentionperiod-numberofdays", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Unlimited": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-retentionperiod.html#cfn-iotanalytics-datastore-retentionperiod-unlimited", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSetEventDestination.CloudWatchDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-cloudwatchdestination.html", + "Properties": { + "DimensionConfigurations": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-cloudwatchdestination.html#cfn-pinpointemail-configurationseteventdestination-cloudwatchdestination-dimensionconfigurations", + "ItemType": "DimensionConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::DAX::Cluster.SSESpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html", + "Properties": { + "SSEEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html#cfn-dax-cluster-ssespecification-sseenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElastiCache::ReplicationGroup.NodeGroupConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html", + "Properties": { + "NodeGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-nodegroupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "PrimaryAvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-primaryavailabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ReplicaAvailabilityZones": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicaavailabilityzones", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "ReplicaCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicacount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Slots": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-slots", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::Table.Column": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html", + "Properties": { + "Comment": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html#cfn-glue-table-column-comment", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html#cfn-glue-table-column-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-column.html#cfn-glue-table-column-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DMS::Endpoint.DynamoDbSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-dynamodbsettings.html", + "Properties": { + "ServiceAccessRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-dynamodbsettings.html#cfn-dms-endpoint-dynamodbsettings-serviceaccessrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Channel.ChannelStorage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html", + "Properties": { + "CustomerManagedS3": { + "Type": "CustomerManagedS3", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html#cfn-iotanalytics-channel-channelstorage-customermanageds3", + "UpdateType": "Mutable" + }, + "ServiceManagedS3": { + "Type": "ServiceManagedS3", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-channelstorage.html#cfn-iotanalytics-channel-channelstorage-servicemanageds3", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.State": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html", + "Properties": { + "OnInput": { + "Type": "OnInput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-oninput", + "UpdateType": "Mutable" + }, + "OnExit": { + "Type": "OnExit", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-onexit", + "UpdateType": "Mutable" + }, + "StateName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-statename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "OnEnter": { + "Type": "OnEnter", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-state.html#cfn-iotevents-detectormodel-state-onenter", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowRunCommandParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html", + "Properties": { + "TimeoutSeconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-timeoutseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Comment": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-comment", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "OutputS3KeyPrefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-outputs3keyprefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "DocumentHashType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-documenthashtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServiceRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-servicerolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotificationConfig": { + "Type": "NotificationConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-notificationconfig", + "UpdateType": "Mutable" + }, + "OutputS3BucketName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-outputs3bucketname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DocumentHash": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowruncommandparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowruncommandparameters-documenthash", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::Group.GroupVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html", + "Properties": { + "LoggerDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-loggerdefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DeviceDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-devicedefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "FunctionDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-functiondefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CoreDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-coredefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResourceDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-resourcedefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ConnectorDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-connectordefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubscriptionDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-group-groupversion.html#cfn-greengrass-group-groupversion-subscriptiondefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::Segment.SetDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html", + "Properties": { + "DimensionType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html#cfn-pinpoint-segment-setdimension-dimensiontype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-setdimension.html#cfn-pinpoint-segment-setdimension-values", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.CustomizedLoadMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html", + "Properties": { + "MetricName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-metricname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Statistic": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-statistic", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Dimensions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-dimensions", + "ItemType": "MetricDimension", + "UpdateType": "Mutable" + }, + "Unit": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-unit", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Namespace": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-customizedloadmetricspecification-namespace", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::DataCatalogEncryptionSettings.EncryptionAtRest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html", + "Properties": { + "CatalogEncryptionMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html#cfn-glue-datacatalogencryptionsettings-encryptionatrest-catalogencryptionmode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SseAwsKmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-encryptionatrest.html#cfn-glue-datacatalogencryptionsettings-encryptionatrest-sseawskmskeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticBeanstalk::Application.MaxAgeRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html", + "Properties": { + "DeleteSourceFromS3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html#cfn-elasticbeanstalk-application-maxagerule-deletesourcefroms3", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html#cfn-elasticbeanstalk-application-maxagerule-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "MaxAgeInDays": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxagerule.html#cfn-elasticbeanstalk-application-maxagerule-maxageindays", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Backup::BackupPlan.BackupRuleResourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html", + "Properties": { + "CompletionWindowMinutes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-completionwindowminutes", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "ScheduleExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-scheduleexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecoveryPointTags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-recoverypointtags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Lifecycle": { + "Type": "LifecycleResourceType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-lifecycle", + "UpdateType": "Mutable" + }, + "TargetBackupVault": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-targetbackupvault", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StartWindowMinutes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-startwindowminutes", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "RuleName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupruleresourcetype.html#cfn-backup-backupplan-backupruleresourcetype-rulename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.AutoScalingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html", + "Properties": { + "Constraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-constraints", + "Required": true, + "Type": "ScalingConstraints", + "UpdateType": "Mutable" + }, + "Rules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-rules", + "DuplicatesAllowed": false, + "ItemType": "ScalingRule", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.Tmpfs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html", + "Properties": { + "ContainerPath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html#cfn-ecs-taskdefinition-tmpfs-containerpath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "MountOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html#cfn-ecs-taskdefinition-tmpfs-mountoptions", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Size": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html#cfn-ecs-taskdefinition-tmpfs-size", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.EbsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html", + "Properties": { + "EbsBlockDeviceConfigs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfigs", + "DuplicatesAllowed": false, + "ItemType": "EbsBlockDeviceConfig", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EbsOptimized": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsoptimized", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Deployment.AccessLogSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html", + "Properties": { + "DestinationArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html#cfn-apigateway-deployment-accesslogsetting-destinationarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Format": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html#cfn-apigateway-deployment-accesslogsetting-format", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.NetworkInputSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html", + "Properties": { + "ServerValidation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html#cfn-medialive-channel-networkinputsettings-servervalidation", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HlsInputSettings": { + "Type": "HlsInputSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-networkinputsettings.html#cfn-medialive-channel-networkinputsettings-hlsinputsettings", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.WebhookFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html", + "Properties": { + "Pattern": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html#cfn-codebuild-project-webhookfilter-pattern", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html#cfn-codebuild-project-webhookfilter-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ExcludeMatchedPattern": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-webhookfilter.html#cfn-codebuild-project-webhookfilter-excludematchedpattern", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::ClientVpnEndpoint.DirectoryServiceAuthenticationRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-directoryserviceauthenticationrequest.html", + "Properties": { + "DirectoryId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-directoryserviceauthenticationrequest.html#cfn-ec2-clientvpnendpoint-directoryserviceauthenticationrequest-directoryid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EFS::FileSystem.ElasticFileSystemTag": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html#cfn-efs-filesystem-filesystemtags-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html#cfn-efs-filesystem-filesystemtags-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.OutputFormatConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-outputformatconfiguration.html", + "Properties": { + "Serializer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-outputformatconfiguration.html#cfn-kinesisfirehose-deliverystream-outputformatconfiguration-serializer", + "Required": true, + "Type": "Serializer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.StringAttributeConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html", + "Properties": { + "MinLength": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-minlength", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MaxLength": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-maxlength", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinitionVersion.Environment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html", + "Properties": { + "Variables": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-variables", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "Execution": { + "Type": "Execution", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-execution", + "UpdateType": "Immutable" + }, + "ResourceAccessPolicies": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-resourceaccesspolicies", + "ItemType": "ResourceAccessPolicy", + "UpdateType": "Immutable" + }, + "AccessSysfs": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-environment.html#cfn-greengrass-functiondefinitionversion-environment-accesssysfs", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::Crawler.SchemaChangePolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html", + "Properties": { + "UpdateBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html#cfn-glue-crawler-schemachangepolicy-updatebehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DeleteBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-schemachangepolicy.html#cfn-glue-crawler-schemachangepolicy-deletebehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.PortMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html", + "Properties": { + "Port": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-port", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Protocol": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html#cfn-appmesh-virtualnode-portmapping-protocol", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.Artifacts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html", + "Properties": { + "Path": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-path", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ArtifactIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-artifactidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "OverrideArtifactName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-overrideartifactname", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Packaging": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-packaging", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EncryptionDisabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-encryptiondisabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NamespaceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-namespacetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::Fleet.ComputeCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-computecapacity.html", + "Properties": { + "DesiredInstances": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-computecapacity.html#cfn-appstream-fleet-computecapacity-desiredinstances", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.VerificationMessageTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html", + "Properties": { + "EmailMessageByLink": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-emailmessagebylink", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EmailMessage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-emailmessage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SmsMessage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-smsmessage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EmailSubject": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-emailsubject", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefaultEmailOption": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-defaultemailoption", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EmailSubjectByLink": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html#cfn-cognito-userpool-verificationmessagetemplate-emailsubjectbylink", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.TimeToLiveSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html", + "Properties": { + "AttributeName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-attributename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-enabled", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.LoadBalancerInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html", + "Properties": { + "ElbInfoList": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo-elbinfolist", + "DuplicatesAllowed": false, + "ItemType": "ELBInfo", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TargetGroupInfoList": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-loadbalancerinfo.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo-targetgroupinfolist", + "DuplicatesAllowed": false, + "ItemType": "TargetGroupInfo", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.RecordColumn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html", + "Properties": { + "Mapping": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-mapping", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SqlType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-sqltype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordcolumn.html#cfn-kinesisanalyticsv2-application-recordcolumn-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Budgets::Budget.NotificationWithSubscribers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html", + "Properties": { + "Subscribers": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-subscribers", + "ItemType": "Subscriber", + "UpdateType": "Mutable" + }, + "Notification": { + "Type": "Notification", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-notification", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.RevisionLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html", + "Properties": { + "GitHubLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation", + "Required": false, + "Type": "GitHubLocation", + "UpdateType": "Mutable" + }, + "RevisionType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-revisiontype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "S3Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location", + "Required": false, + "Type": "S3Location", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.NotificationFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html", + "Properties": { + "S3Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key", + "Required": true, + "Type": "S3KeyFilter", + "UpdateType": "Mutable" + } + } + }, + "AWS::DataPipeline::Pipeline.ParameterAttribute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html#cfn-datapipeline-pipeline-parameterobjects-attribtues-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StringValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html#cfn-datapipeline-pipeline-parameterobjects-attribtues-stringvalue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::Rule.SqsParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-sqsparameters.html", + "Properties": { + "MessageGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-sqsparameters.html#cfn-events-rule-sqsparameters-messagegroupid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Input.MediaConnectFlowRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-mediaconnectflowrequest.html", + "Properties": { + "FlowArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-input-mediaconnectflowrequest.html#cfn-medialive-input-mediaconnectflowrequest-flowarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceCatalog::CloudFormationProduct.ProvisioningArtifactProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DisableTemplateValidation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-disabletemplatevalidation", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Info": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-info", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactproperties-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.ElasticsearchDestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html", + "Properties": { + "BufferingHints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-bufferinghints", + "Required": true, + "Type": "ElasticsearchBufferingHints", + "UpdateType": "Mutable" + }, + "CloudWatchLoggingOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-cloudwatchloggingoptions", + "Required": false, + "Type": "CloudWatchLoggingOptions", + "UpdateType": "Mutable" + }, + "DomainARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-domainarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "IndexName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-indexname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "IndexRotationPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-indexrotationperiod", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ProcessingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-processingconfiguration", + "Required": false, + "Type": "ProcessingConfiguration", + "UpdateType": "Mutable" + }, + "RetryOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-retryoptions", + "Required": true, + "Type": "ElasticsearchRetryOptions", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3BackupMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-s3backupmode", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-s3configuration", + "Required": true, + "Type": "S3DestinationConfiguration", + "UpdateType": "Mutable" + }, + "TypeName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration-typename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::DataSource.AuthorizationConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html", + "Properties": { + "AwsIamConfig": { + "Type": "AwsIamConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-awsiamconfig", + "UpdateType": "Mutable" + }, + "AuthorizationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-authorizationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SecurityGroup.Ingress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html", + "Properties": { + "CidrIp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidrip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CidrIpv6": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidripv6", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "FromPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-fromport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "IpProtocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-ipprotocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SourcePrefixListId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-securitygroup-ingress-sourceprefixlistid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SourceSecurityGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SourceSecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SourceSecurityGroupOwnerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupownerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ToPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-toport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.LambdaConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html", + "Properties": { + "Event": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-event", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Filter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-filter", + "Required": false, + "Type": "NotificationFilter", + "UpdateType": "Mutable" + }, + "Function": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-function", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource.S3ReferenceDataSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html", + "Properties": { + "BucketARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-bucketarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FileKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-filekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ReferenceRoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-s3referencedatasource-referencerolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.NodeProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html", + "Properties": { + "MainNode": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-mainnode", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "NodeRangeProperties": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-noderangeproperties", + "ItemType": "NodeRangeProperty", + "UpdateType": "Mutable" + }, + "NumNodes": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html#cfn-batch-jobdefinition-nodeproperties-numnodes", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualService.VirtualServiceSpec": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualservicespec.html", + "Properties": { + "Provider": { + "Type": "VirtualServiceProvider", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualservicespec.html#cfn-appmesh-virtualservice-virtualservicespec-provider", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::Rule.Predicate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html", + "Properties": { + "DataId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-dataid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Negated": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-negated", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.ReplicationRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html", + "Properties": { + "Destination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-destination", + "Required": true, + "Type": "ReplicationDestination", + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-id", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Prefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-prefix", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SourceSelectionCriteria": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-sourceselectioncriteria", + "Required": false, + "Type": "SourceSelectionCriteria", + "UpdateType": "Mutable" + }, + "Status": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-status", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualService.VirtualRouterServiceProvider": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualrouterserviceprovider.html", + "Properties": { + "VirtualRouterName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualrouterserviceprovider.html#cfn-appmesh-virtualservice-virtualrouterserviceprovider-virtualroutername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.LaunchTemplateData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html", + "Properties": { + "SecurityGroups": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-securitygroups", + "UpdateType": "Mutable" + }, + "TagSpecifications": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-tagspecifications", + "ItemType": "TagSpecification", + "UpdateType": "Mutable" + }, + "UserData": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-userdata", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BlockDeviceMappings": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-blockdevicemappings", + "ItemType": "BlockDeviceMapping", + "UpdateType": "Mutable" + }, + "IamInstanceProfile": { + "Type": "IamInstanceProfile", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-iaminstanceprofile", + "UpdateType": "Mutable" + }, + "KernelId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-kernelid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EbsOptimized": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-ebsoptimized", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ElasticGpuSpecifications": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-elasticgpuspecifications", + "ItemType": "ElasticGpuSpecification", + "UpdateType": "Mutable" + }, + "ElasticInferenceAccelerators": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-elasticinferenceaccelerators", + "ItemType": "LaunchTemplateElasticInferenceAccelerator", + "UpdateType": "Mutable" + }, + "Placement": { + "Type": "Placement", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-placement", + "UpdateType": "Mutable" + }, + "NetworkInterfaces": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-networkinterfaces", + "ItemType": "NetworkInterface", + "UpdateType": "Mutable" + }, + "ImageId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-imageid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstanceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-instancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Monitoring": { + "Type": "Monitoring", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-monitoring", + "UpdateType": "Mutable" + }, + "HibernationOptions": { + "Type": "HibernationOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-hibernationoptions", + "UpdateType": "Mutable" + }, + "LicenseSpecifications": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-licensespecifications", + "ItemType": "LicenseSpecification", + "UpdateType": "Mutable" + }, + "InstanceInitiatedShutdownBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-instanceinitiatedshutdownbehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CpuOptions": { + "Type": "CpuOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-cpuoptions", + "UpdateType": "Mutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-securitygroupids", + "UpdateType": "Mutable" + }, + "KeyName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-keyname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DisableApiTermination": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-disableapitermination", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "InstanceMarketOptions": { + "Type": "InstanceMarketOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions", + "UpdateType": "Mutable" + }, + "RamDiskId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-ramdiskid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CapacityReservationSpecification": { + "Type": "CapacityReservationSpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification", + "UpdateType": "Mutable" + }, + "CreditSpecification": { + "Type": "CreditSpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-creditspecification", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsRiskConfigurationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html", + "Properties": { + "Actions": { + "Type": "CompromisedCredentialsActionsType", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype-actions", + "UpdateType": "Mutable" + }, + "EventFilter": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfigurationtype-eventfilter", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.ClassicLoadBalancer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancer.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancer.html#cfn-ec2-spotfleet-classicloadbalancer-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.ParallelismConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html", + "Properties": { + "ConfigurationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html#cfn-kinesisanalyticsv2-application-parallelismconfiguration-configurationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ParallelismPerKPU": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html#cfn-kinesisanalyticsv2-application-parallelismconfiguration-parallelismperkpu", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "AutoScalingEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html#cfn-kinesisanalyticsv2-application-parallelismconfiguration-autoscalingenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Parallelism": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-parallelismconfiguration.html#cfn-kinesisanalyticsv2-application-parallelismconfiguration-parallelism", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinitionVersion.DefaultConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html", + "Properties": { + "Execution": { + "Type": "Execution", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-defaultconfig.html#cfn-greengrass-functiondefinitionversion-defaultconfig-execution", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Classifier.CsvClassifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html", + "Properties": { + "QuoteSymbol": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-quotesymbol", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ContainsHeader": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-containsheader", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Delimiter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-delimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Header": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-header", + "UpdateType": "Mutable" + }, + "AllowSingleColumn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-allowsinglecolumn", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DisableValueTrimming": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-disablevaluetrimming", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-csvclassifier.html#cfn-glue-classifier-csvclassifier-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ECS::TaskDefinition.ResourceRequirement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html", + "Properties": { + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html#cfn-ecs-taskdefinition-resourcerequirement-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html#cfn-ecs-taskdefinition-resourcerequirement-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::Listener.AuthenticateOidcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html", + "Properties": { + "AuthenticationRequestExtraParams": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-authenticationrequestextraparams", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "AuthorizationEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-authorizationendpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ClientId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-clientid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ClientSecret": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-clientsecret", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Issuer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-issuer", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "OnUnauthenticatedRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-onunauthenticatedrequest", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Scope": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-scope", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SessionCookieName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-sessioncookiename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SessionTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-sessiontimeout", + "PrimitiveType": "Long", + "Required": false, + "UpdateType": "Mutable" + }, + "TokenEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-tokenendpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "UserInfoEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-authenticateoidcconfig.html#cfn-elasticloadbalancingv2-listener-authenticateoidcconfig-userinfoendpoint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.WorkmailAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html", + "Properties": { + "TopicArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html#cfn-ses-receiptrule-workmailaction-topicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "OrganizationArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-workmailaction.html#cfn-ses-receiptrule-workmailaction-organizationarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Elasticsearch::Domain.VPCOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html", + "Properties": { + "SecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-securitygroupids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-subnetids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer.HealthCheck": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html", + "Properties": { + "HealthyThreshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-healthythreshold", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Interval": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-interval", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Target": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-target", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Timeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-timeout", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "UnhealthyThreshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-unhealthythreshold", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.LaunchTemplateConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html", + "Properties": { + "LaunchTemplateSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html#cfn-ec2-spotfleet-launchtemplateconfig-launchtemplatespecification", + "Required": false, + "Type": "FleetLaunchTemplateSpecification", + "UpdateType": "Mutable" + }, + "Overrides": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-launchtemplateconfig.html#cfn-ec2-spotfleet-launchtemplateconfig-overrides", + "DuplicatesAllowed": false, + "ItemType": "LaunchTemplateOverrides", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.ElasticGpuSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html", + "Properties": { + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html#cfn-ec2-instance-elasticgpuspecification-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.TriggerConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html", + "Properties": { + "TriggerEvents": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggerevents", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TriggerName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TriggerTargetArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggertargetarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.VirtualServiceBackend": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html", + "Properties": { + "VirtualServiceName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html#cfn-appmesh-virtualnode-virtualservicebackend-virtualservicename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::LakeFormation::Permissions.Resource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html", + "Properties": { + "TableResource": { + "Type": "TableResource", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html#cfn-lakeformation-permissions-resource-tableresource", + "UpdateType": "Mutable" + }, + "DatabaseResource": { + "Type": "DatabaseResource", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-permissions-resource.html#cfn-lakeformation-permissions-resource-databaseresource", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.CSVMappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html", + "Properties": { + "RecordRowDelimiter": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html#cfn-kinesisanalyticsv2-application-csvmappingparameters-recordrowdelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecordColumnDelimiter": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-csvmappingparameters.html#cfn-kinesisanalyticsv2-application-csvmappingparameters-recordcolumndelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DataPipeline::Pipeline.PipelineTag": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html#cfn-datapipeline-pipeline-pipelinetags-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html#cfn-datapipeline-pipeline-pipelinetags-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.MappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html", + "Properties": { + "JSONMappingParameters": { + "Type": "JSONMappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html#cfn-kinesisanalytics-application-mappingparameters-jsonmappingparameters", + "UpdateType": "Mutable" + }, + "CSVMappingParameters": { + "Type": "CSVMappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-mappingparameters.html#cfn-kinesisanalytics-application-mappingparameters-csvmappingparameters", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::DomainName.DomainNameConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html", + "Properties": { + "EndpointType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-endpointtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CertificateName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CertificateArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.CustomOriginConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html", + "Properties": { + "OriginReadTimeout": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originreadtimeout", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "HTTPSPort": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-httpsport", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "OriginKeepaliveTimeout": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originkeepalivetimeout", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "OriginSSLProtocols": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originsslprotocols", + "UpdateType": "Mutable" + }, + "HTTPPort": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-httpport", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "OriginProtocolPolicy": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originprotocolpolicy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.MonitoringConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html", + "Properties": { + "ConfigurationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-configurationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MetricsLevel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-metricslevel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LogLevel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-monitoringconfiguration.html#cfn-kinesisanalyticsv2-application-monitoringconfiguration-loglevel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::NetworkAclEntry.Icmp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html", + "Properties": { + "Code": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html#cfn-ec2-networkaclentry-icmp-code", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html#cfn-ec2-networkaclentry-icmp-type", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.UserPoolAddOns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html", + "Properties": { + "AdvancedSecurityMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html#cfn-cognito-userpool-userpooladdons-advancedsecuritymode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.AttributeDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html", + "Properties": { + "AttributeName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "AttributeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename-attributetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::CloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html", + "Properties": { + "Comment": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig-comment", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.Activity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html", + "Properties": { + "SelectAttributes": { + "Type": "SelectAttributes", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-selectattributes", + "UpdateType": "Mutable" + }, + "Datastore": { + "Type": "Datastore", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-datastore", + "UpdateType": "Mutable" + }, + "Filter": { + "Type": "Filter", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-filter", + "UpdateType": "Mutable" + }, + "AddAttributes": { + "Type": "AddAttributes", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-addattributes", + "UpdateType": "Mutable" + }, + "Channel": { + "Type": "Channel", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-channel", + "UpdateType": "Mutable" + }, + "DeviceShadowEnrich": { + "Type": "DeviceShadowEnrich", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-deviceshadowenrich", + "UpdateType": "Mutable" + }, + "Math": { + "Type": "Math", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-math", + "UpdateType": "Mutable" + }, + "Lambda": { + "Type": "Lambda", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-lambda", + "UpdateType": "Mutable" + }, + "DeviceRegistryEnrich": { + "Type": "DeviceRegistryEnrich", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-deviceregistryenrich", + "UpdateType": "Mutable" + }, + "RemoveAttributes": { + "Type": "RemoveAttributes", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-activity.html#cfn-iotanalytics-pipeline-activity-removeattributes", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.MixedInstancesPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html", + "Properties": { + "InstancesDistribution": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html#cfn-as-mixedinstancespolicy-instancesdistribution", + "Required": false, + "Type": "InstancesDistribution", + "UpdateType": "Mutable" + }, + "LaunchTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-group-mixedinstancespolicy.html#cfn-as-mixedinstancespolicy-launchtemplate", + "Required": true, + "Type": "LaunchTemplate", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::EndpointConfig.ProductionVariant": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html", + "Properties": { + "ModelName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html#cfn-sagemaker-endpointconfig-productionvariant-modelname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "VariantName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html#cfn-sagemaker-endpointconfig-productionvariant-variantname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InitialInstanceCount": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html#cfn-sagemaker-endpointconfig-productionvariant-initialinstancecount", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html#cfn-sagemaker-endpointconfig-productionvariant-instancetype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AcceleratorType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html#cfn-sagemaker-endpointconfig-productionvariant-acceleratortype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InitialVariantWeight": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html#cfn-sagemaker-endpointconfig-productionvariant-initialvariantweight", + "PrimitiveType": "Double", + "UpdateType": "Immutable" + } + } + }, + "AWS::Route53Resolver::ResolverEndpoint.IpAddressRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html", + "Properties": { + "Ip": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html#cfn-route53resolver-resolverendpoint-ipaddressrequest-ip", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SubnetId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html#cfn-route53resolver-resolverendpoint-ipaddressrequest-subnetid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.StopAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html", + "Properties": { + "Scope": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html#cfn-ses-receiptrule-stopaction-scope", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TopicArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-stopaction.html#cfn-ses-receiptrule-stopaction-topicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.InstanceMarketOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html", + "Properties": { + "SpotOptions": { + "Type": "SpotOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-spotoptions", + "UpdateType": "Mutable" + }, + "MarketType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-instancemarketoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-instancemarketoptions-markettype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.ActionDeclaration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html", + "Properties": { + "ActionTypeId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid", + "Required": true, + "Type": "ActionTypeId", + "UpdateType": "Mutable" + }, + "Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-configuration", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "InputArtifacts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts", + "DuplicatesAllowed": false, + "ItemType": "InputArtifact", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "OutputArtifacts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts", + "DuplicatesAllowed": false, + "ItemType": "OutputArtifact", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Region": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-region", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-rolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RunOrder": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-runorder", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.RetryStrategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html", + "Properties": { + "Attempts": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html#cfn-batch-jobdefinition-retrystrategy-attempts", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html", + "Properties": { + "Classification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-classification", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ConfigurationProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurationproperties", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Immutable" + }, + "Configurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurations", + "DuplicatesAllowed": false, + "ItemType": "Configuration", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::ClientVpnEndpoint.TagSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html", + "Properties": { + "ResourceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html#cfn-ec2-clientvpnendpoint-tagspecification-resourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-tagspecification.html#cfn-ec2-clientvpnendpoint-tagspecification-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Redshift::ClusterParameterGroup.Parameter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html", + "Properties": { + "ParameterName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametername", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ParameterValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametervalue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceFleetConfig.VolumeSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html", + "Properties": { + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "SizeInGB": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-sizeingb", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Immutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-volumespecification.html#cfn-elasticmapreduce-instancefleetconfig-volumespecification-volumetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::Cluster.InstanceGroupConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html", + "Properties": { + "AutoScalingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-autoscalingpolicy", + "Required": false, + "Type": "AutoScalingPolicy", + "UpdateType": "Mutable" + }, + "BidPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-bidprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Configurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-configurations", + "DuplicatesAllowed": false, + "ItemType": "Configuration", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EbsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-ebsconfiguration", + "Required": false, + "Type": "EbsConfiguration", + "UpdateType": "Immutable" + }, + "InstanceCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-instancecount", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Market": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-market", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Redshift::Cluster.LoggingProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html", + "Properties": { + "BucketName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-bucketname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3KeyPrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-s3keyprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.CreditSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-creditspecification.html", + "Properties": { + "CpuCredits": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-creditspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-creditspecification-cpucredits", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53Resolver::ResolverRule.TargetAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html", + "Properties": { + "Ip": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Port": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-port", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.Scte20SourceSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html", + "Properties": { + "Source608ChannelNumber": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html#cfn-medialive-channel-scte20sourcesettings-source608channelnumber", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Convert608To708": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-scte20sourcesettings.html#cfn-medialive-channel-scte20sourcesettings-convert608to708", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::SimulationApplication.RobotSoftwareSuite": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html", + "Properties": { + "Version": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html#cfn-robomaker-simulationapplication-robotsoftwaresuite-version", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-robotsoftwaresuite.html#cfn-robomaker-simulationapplication-robotsoftwaresuite-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.ServerSideEncryptionRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html", + "Properties": { + "ServerSideEncryptionByDefault": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html#cfn-s3-bucket-serversideencryptionrule-serversideencryptionbydefault", + "Required": false, + "Type": "ServerSideEncryptionByDefault", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::WebACL.Rule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html", + "Properties": { + "Action": { + "Type": "Action", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-action", + "UpdateType": "Mutable" + }, + "Priority": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-priority", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "RuleId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-ruleid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::Association.InstanceAssociationOutputLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-instanceassociationoutputlocation.html", + "Properties": { + "S3Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-instanceassociationoutputlocation.html#cfn-ssm-association-instanceassociationoutputlocation-s3location", + "Required": false, + "Type": "S3OutputLocation", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Partition.StorageDescriptor": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html", + "Properties": { + "StoredAsSubDirectories": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-storedassubdirectories", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "BucketColumns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-bucketcolumns", + "UpdateType": "Mutable" + }, + "SkewedInfo": { + "Type": "SkewedInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-skewedinfo", + "UpdateType": "Mutable" + }, + "InputFormat": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-inputformat", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NumberOfBuckets": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-numberofbuckets", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "OutputFormat": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-outputformat", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Columns": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-columns", + "ItemType": "Column", + "UpdateType": "Mutable" + }, + "SerdeInfo": { + "Type": "SerdeInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-serdeinfo", + "UpdateType": "Mutable" + }, + "SortColumns": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-sortcolumns", + "ItemType": "Order", + "UpdateType": "Mutable" + }, + "Compressed": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-compressed", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-storagedescriptor.html#cfn-glue-partition-storagedescriptor-location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Trigger.Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html", + "Properties": { + "NotificationProperty": { + "Type": "NotificationProperty", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-notificationproperty", + "UpdateType": "Mutable" + }, + "CrawlerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-crawlername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Timeout": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-timeout", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "JobName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-jobname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Arguments": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-arguments", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "SecurityConfiguration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-action.html#cfn-glue-trigger-action-securityconfiguration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.NetworkInterface": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html", + "Properties": { + "AssociatePublicIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-associatepubip", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DeleteOnTermination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-delete", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DeviceIndex": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-deviceindex", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "GroupSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-groupset", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Ipv6AddressCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#cfn-ec2-instance-networkinterface-ipv6addresscount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Ipv6Addresses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#cfn-ec2-instance-networkinterface-ipv6addresses", + "DuplicatesAllowed": true, + "ItemType": "InstanceIpv6Address", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "NetworkInterfaceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-network-iface", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PrivateIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-privateipaddress", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PrivateIpAddresses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-privateipaddresses", + "DuplicatesAllowed": true, + "ItemType": "PrivateIpAddressSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SecondaryPrivateIpAddressCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-secondprivateip", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-subnetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.RecordFormat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html", + "Properties": { + "MappingParameters": { + "Type": "MappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html#cfn-kinesisanalyticsv2-application-recordformat-mappingparameters", + "UpdateType": "Mutable" + }, + "RecordFormatType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-recordformat.html#cfn-kinesisanalyticsv2-application-recordformat-recordformattype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.ApplicationSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html", + "Properties": { + "CloudFormationStackARN": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html#cfn-autoscalingplans-scalingplan-applicationsource-cloudformationstackarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TagFilters": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html#cfn-autoscalingplans-scalingplan-applicationsource-tagfilters", + "ItemType": "TagFilter", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.IamInstanceProfileSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html", + "Properties": { + "Arn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html#cfn-ec2-spotfleet-iaminstanceprofilespecification-arn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::ScalingPolicy.MetricDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html#cfn-autoscaling-scalingpolicy-metricdimension-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-metricdimension.html#cfn-autoscaling-scalingpolicy-metricdimension-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.Event": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html", + "Properties": { + "Condition": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html#cfn-iotevents-detectormodel-event-condition", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Actions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html#cfn-iotevents-detectormodel-event-actions", + "ItemType": "Action", + "UpdateType": "Mutable" + }, + "EventName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-event.html#cfn-iotevents-detectormodel-event-eventname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.InstanceNetworkInterfaceSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html", + "Properties": { + "AssociatePublicIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-associatepublicipaddress", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DeleteOnTermination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-deleteontermination", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DeviceIndex": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-deviceindex", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Groups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-groups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Ipv6AddressCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-ipv6addresscount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Ipv6Addresses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-ipv6addresses", + "DuplicatesAllowed": false, + "ItemType": "InstanceIpv6Address", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "NetworkInterfaceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-networkinterfaceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PrivateIpAddresses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-privateipaddresses", + "DuplicatesAllowed": false, + "ItemType": "PrivateIpAddressSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SecondaryPrivateIpAddressCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-secondaryprivateipaddresscount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-subnetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.DockerVolumeConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html", + "Properties": { + "Autoprovision": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-autoprovision", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Driver": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-driver", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DriverOpts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-driveropts", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Immutable" + }, + "Labels": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-labels", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Immutable" + }, + "Scope": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-scope", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::WAFRegional::IPSet.IPSetDescriptor": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.ContainerDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html", + "Properties": { + "Command": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-command", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Cpu": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-cpu", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "DependsOn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dependson", + "DuplicatesAllowed": false, + "ItemType": "ContainerDependency", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "DisableNetworking": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-disablenetworking", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "DnsSearchDomains": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dnssearchdomains", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "DnsServers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dnsservers", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "DockerLabels": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dockerlabels", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Immutable" + }, + "DockerSecurityOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dockersecurityoptions", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EntryPoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-entrypoint", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Environment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-environment", + "DuplicatesAllowed": false, + "ItemType": "KeyValuePair", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Essential": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-essential", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "ExtraHosts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-extrahosts", + "DuplicatesAllowed": false, + "ItemType": "HostEntry", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "HealthCheck": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-healthcheck", + "Required": false, + "Type": "HealthCheck", + "UpdateType": "Immutable" + }, + "Hostname": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-hostname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Image": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-image", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Interactive": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-interactive", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Links": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-links", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "LinuxParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-linuxparameters", + "Required": false, + "Type": "LinuxParameters", + "UpdateType": "Immutable" + }, + "LogConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration", + "Required": false, + "Type": "LogConfiguration", + "UpdateType": "Immutable" + }, + "Memory": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-memory", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "MemoryReservation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-memoryreservation", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "MountPoints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints", + "DuplicatesAllowed": false, + "ItemType": "MountPoint", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PortMappings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-portmappings", + "DuplicatesAllowed": false, + "ItemType": "PortMapping", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Privileged": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-privileged", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "PseudoTerminal": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-pseudoterminal", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "ReadonlyRootFilesystem": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-readonlyrootfilesystem", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "RepositoryCredentials": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-repositorycredentials", + "Required": false, + "Type": "RepositoryCredentials", + "UpdateType": "Immutable" + }, + "ResourceRequirements": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-resourcerequirements", + "DuplicatesAllowed": false, + "ItemType": "ResourceRequirement", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Secrets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-secrets", + "DuplicatesAllowed": false, + "ItemType": "Secret", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "StartTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-starttimeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "StopTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-stoptimeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "SystemControls": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-systemcontrols", + "DuplicatesAllowed": false, + "ItemType": "SystemControl", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Ulimits": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-ulimits", + "DuplicatesAllowed": false, + "ItemType": "Ulimit", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "User": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-user", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "VolumesFrom": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom", + "DuplicatesAllowed": false, + "ItemType": "VolumeFrom", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "WorkingDirectory": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-workingdirectory", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowLambdaParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html", + "Properties": { + "ClientContext": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-clientcontext", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Qualifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-qualifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Payload": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowlambdaparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowlambdaparameters-payload", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.ScalingInstruction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html", + "Properties": { + "DisableDynamicScaling": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-disabledynamicscaling", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ServiceNamespace": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-servicenamespace", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PredictiveScalingMaxCapacityBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predictivescalingmaxcapacitybehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ScalableDimension": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-scalabledimension", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ScalingPolicyUpdateBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-scalingpolicyupdatebehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MinCapacity": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-mincapacity", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TargetTrackingConfigurations": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-targettrackingconfigurations", + "ItemType": "TargetTrackingConfiguration", + "UpdateType": "Mutable" + }, + "PredictiveScalingMaxCapacityBuffer": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predictivescalingmaxcapacitybuffer", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "CustomizedLoadMetricSpecification": { + "Type": "CustomizedLoadMetricSpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-customizedloadmetricspecification", + "UpdateType": "Mutable" + }, + "PredefinedLoadMetricSpecification": { + "Type": "PredefinedLoadMetricSpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predefinedloadmetricspecification", + "UpdateType": "Mutable" + }, + "ResourceId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-resourceid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ScheduledActionBufferTime": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-scheduledactionbuffertime", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MaxCapacity": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-maxcapacity", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "PredictiveScalingMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html#cfn-autoscalingplans-scalingplan-scalinginstruction-predictivescalingmode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.LocalDeviceResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html", + "Properties": { + "SourcePath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-sourcepath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "GroupOwnerSetting": { + "Type": "GroupOwnerSetting", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localdeviceresourcedata.html#cfn-greengrass-resourcedefinition-localdeviceresourcedata-groupownersetting", + "UpdateType": "Immutable" + } + } + }, + "Alexa::ASK::Skill.Overrides": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html", + "Properties": { + "Manifest": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html#cfn-ask-skill-overrides-manifest", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::SqlInjectionMatchSet.FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html", + "Properties": { + "Data": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::DataPipeline::Pipeline.ParameterObject": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html", + "Properties": { + "Attributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html#cfn-datapipeline-pipeline-parameterobjects-attributes", + "DuplicatesAllowed": true, + "ItemType": "ParameterAttribute", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html#cfn-datapipeline-pipeline-parameterobjects-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.StageDeclaration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html", + "Properties": { + "Actions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-actions", + "DuplicatesAllowed": false, + "ItemType": "ActionDeclaration", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Blockers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-blockers", + "DuplicatesAllowed": false, + "ItemType": "BlockerDeclaration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.ScalingConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html", + "Properties": { + "MaxCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-maxcapacity", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "MinCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-mincapacity", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.MetricDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::ClientVpnEndpoint.ClientAuthenticationRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html", + "Properties": { + "MutualAuthentication": { + "Type": "CertificateAuthenticationRequest", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-mutualauthentication", + "UpdateType": "Mutable" + }, + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ActiveDirectory": { + "Type": "DirectoryServiceAuthenticationRequest", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientauthenticationrequest.html#cfn-ec2-clientvpnendpoint-clientauthenticationrequest-activedirectory", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Method.MethodResponse": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html", + "Properties": { + "ResponseModels": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-responsemodels", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "ResponseParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-responseparameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "Boolean", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "StatusCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-statuscode", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticBeanstalk::ConfigurationTemplate.SourceConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html", + "Properties": { + "ApplicationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration-applicationname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TemplateName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-sourceconfiguration.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration-templatename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::Listener.RedirectConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html", + "Properties": { + "Host": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-host", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-path", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-port", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-protocol", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Query": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-query", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StatusCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-redirectconfig.html#cfn-elasticloadbalancingv2-listener-redirectconfig-statuscode", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ConnectorDefinition.ConnectorDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html", + "Properties": { + "Connectors": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connectordefinitionversion.html#cfn-greengrass-connectordefinition-connectordefinitionversion-connectors", + "ItemType": "Connector", + "UpdateType": "Immutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.NotificationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html", + "Properties": { + "NotificationTypes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-as-group-notificationconfigurations-notificationtypes", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TopicARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-autoscaling-autoscalinggroup-notificationconfigurations-topicarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationOutput.KinesisStreamsOutput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisstreamsoutput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-kinesisstreamsoutput.html#cfn-kinesisanalytics-applicationoutput-kinesisstreamsoutput-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.Groups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html", + "Properties": { + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-sourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Dimensions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-dimensions", + "ItemType": "SegmentDimensions", + "UpdateType": "Mutable" + }, + "SourceSegments": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups-groups.html#cfn-pinpoint-segment-segmentgroups-groups-sourcesegments", + "ItemType": "SourceSegments", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinitionVersion.Function": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html", + "Properties": { + "FunctionArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "FunctionConfiguration": { + "Type": "FunctionConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-functionconfiguration", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-function.html#cfn-greengrass-functiondefinitionversion-function-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::LaunchTemplate.Monitoring": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-monitoring.html", + "Properties": { + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-monitoring.html#cfn-ec2-launchtemplate-launchtemplatedata-monitoring-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Member.NetworkFabricConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkfabricconfiguration.html", + "Properties": { + "Edition": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-networkfabricconfiguration.html#cfn-managedblockchain-member-networkfabricconfiguration-edition", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Partition.Order": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-order.html", + "Properties": { + "Column": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-order.html#cfn-glue-partition-order-column", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SortOrder": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-order.html#cfn-glue-partition-order-sortorder", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceDiscovery::Service.DnsConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html", + "Properties": { + "DnsRecords": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-dnsrecords", + "ItemType": "DnsRecord", + "UpdateType": "Mutable" + }, + "RoutingPolicy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-routingpolicy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NamespaceId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsconfig.html#cfn-servicediscovery-service-dnsconfig-namespaceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::Method.Integration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html", + "Properties": { + "CacheKeyParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-cachekeyparameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "CacheNamespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-cachenamespace", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ConnectionId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-connectionid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ConnectionType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-connectiontype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ContentHandling": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-contenthandling", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Credentials": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-credentials", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "IntegrationHttpMethod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-integrationhttpmethod", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "IntegrationResponses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-integrationresponses", + "DuplicatesAllowed": false, + "ItemType": "IntegrationResponse", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PassthroughBehavior": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-passthroughbehavior", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RequestParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-requestparameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "RequestTemplates": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-requesttemplates", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "TimeoutInMillis": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-timeoutinmillis", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Uri": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-uri", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationOutput.DestinationSchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-destinationschema.html", + "Properties": { + "RecordFormatType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-destinationschema.html#cfn-kinesisanalyticsv2-applicationoutput-destinationschema-recordformattype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.Timeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html", + "Properties": { + "AttemptDurationSeconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html#cfn-batch-jobdefinition-timeout-attemptdurationseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.RepublishAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html", + "Properties": { + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Topic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishaction.html#cfn-iot-topicrule-republishaction-topic", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Backup::BackupSelection.ConditionResourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html", + "Properties": { + "ConditionValue": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditionvalue", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ConditionKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditionkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ConditionType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupselection-conditionresourcetype.html#cfn-backup-backupselection-conditionresourcetype-conditiontype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Table.SkewedInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html", + "Properties": { + "SkewedColumnNames": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html#cfn-glue-table-skewedinfo-skewedcolumnnames", + "UpdateType": "Mutable" + }, + "SkewedColumnValues": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html#cfn-glue-table-skewedinfo-skewedcolumnvalues", + "UpdateType": "Mutable" + }, + "SkewedColumnValueLocationMaps": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-skewedinfo.html#cfn-glue-table-skewedinfo-skewedcolumnvaluelocationmaps", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceDiscovery::Service.DnsRecord": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html#cfn-servicediscovery-service-dnsrecord-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TTL": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-dnsrecord.html#cfn-servicediscovery-service-dnsrecord-ttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::DeviceDefinition.Device": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html", + "Properties": { + "SyncShadow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-syncshadow", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "ThingArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-thingarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CertificateArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-device.html#cfn-greengrass-devicedefinition-device-certificatearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Config::ConfigRule.Scope": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html", + "Properties": { + "ComplianceResourceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-complianceresourceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ComplianceResourceTypes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-complianceresourcetypes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TagKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-tagkey", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TagValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-tagvalue", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::OrganizationConfigRule.OrganizationManagedRuleMetadata": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html", + "Properties": { + "TagKeyScope": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-tagkeyscope", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TagValueScope": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-tagvaluescope", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResourceIdScope": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-resourceidscope", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RuleIdentifier": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-ruleidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResourceTypesScope": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-resourcetypesscope", + "UpdateType": "Mutable" + }, + "MaximumExecutionFrequency": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-maximumexecutionfrequency", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InputParameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-inputparameters", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::XssMatchSet.FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html", + "Properties": { + "Data": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-data", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.ForwardedValues": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html", + "Properties": { + "Cookies": { + "Type": "Cookies", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-cookies", + "UpdateType": "Mutable" + }, + "Headers": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-headers", + "UpdateType": "Mutable" + }, + "QueryString": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-querystring", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "QueryStringCacheKeys": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-querystringcachekeys", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Method.IntegrationResponse": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html", + "Properties": { + "ContentHandling": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integrationresponse-contenthandling", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ResponseParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-responseparameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "ResponseTemplates": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-responsetemplates", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "SelectionPattern": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-selectionpattern", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StatusCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-statuscode", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::DeviceDefinition.DeviceDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html", + "Properties": { + "Devices": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-devicedefinition-devicedefinitionversion.html#cfn-greengrass-devicedefinition-devicedefinitionversion-devices", + "ItemType": "Device", + "UpdateType": "Immutable" + } + } + }, + "AWS::Budgets::Budget.Subscriber": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html", + "Properties": { + "SubscriptionType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html#cfn-budgets-budget-subscriber-subscriptiontype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Address": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html#cfn-budgets-budget-subscriber-address", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.ScalingAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html", + "Properties": { + "Market": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-market", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SimpleScalingPolicyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-simplescalingpolicyconfiguration", + "Required": true, + "Type": "SimpleScalingPolicyConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsActionsType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype.html", + "Properties": { + "EventAction": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsactionstype-eventaction", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.KeyValuePair": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::SpotFleet.SpotFleetLaunchSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html", + "Properties": { + "BlockDeviceMappings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-blockdevicemappings", + "DuplicatesAllowed": false, + "ItemType": "BlockDeviceMapping", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EbsOptimized": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-ebsoptimized", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "IamInstanceProfile": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-iaminstanceprofile", + "Required": false, + "Type": "IamInstanceProfileSpecification", + "UpdateType": "Mutable" + }, + "ImageId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-imageid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "KernelId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-kernelid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "KeyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-keyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Monitoring": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-monitoring", + "Required": false, + "Type": "SpotFleetMonitoring", + "UpdateType": "Mutable" + }, + "NetworkInterfaces": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-networkinterfaces", + "DuplicatesAllowed": false, + "ItemType": "InstanceNetworkInterfaceSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Placement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-placement", + "Required": false, + "Type": "SpotPlacement", + "UpdateType": "Mutable" + }, + "RamdiskId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-ramdiskid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-securitygroups", + "DuplicatesAllowed": false, + "ItemType": "GroupIdentifier", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SpotPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-spotprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-subnetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TagSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-tagspecifications", + "DuplicatesAllowed": false, + "ItemType": "SpotFleetTagSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "UserData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-userdata", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "WeightedCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-weightedcapacity", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::CustomActionType.Settings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html", + "Properties": { + "EntityUrlTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-entityurltemplate", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ExecutionUrlTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-executionurltemplate", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RevisionUrlTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-revisionurltemplate", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ThirdPartyConfigurationUrl": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-thirdpartyconfigurationurl", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.AnalyticsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html", + "Properties": { + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Prefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-prefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StorageClassAnalysis": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-storageclassanalysis", + "Required": true, + "Type": "StorageClassAnalysis", + "UpdateType": "Mutable" + }, + "TagFilters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-tagfilters", + "DuplicatesAllowed": false, + "ItemType": "TagFilter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Budgets::Budget.Notification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html", + "Properties": { + "ComparisonOperator": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-comparisonoperator", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotificationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-notificationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Threshold": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-threshold", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "ThresholdType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-thresholdtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.TargetTrackingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html", + "Properties": { + "ScaleOutCooldown": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-scaleoutcooldown", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TargetValue": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-targetvalue", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "PredefinedScalingMetricSpecification": { + "Type": "PredefinedScalingMetricSpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-predefinedscalingmetricspecification", + "UpdateType": "Mutable" + }, + "DisableScaleIn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-disablescalein", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ScaleInCooldown": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-scaleincooldown", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "EstimatedInstanceWarmup": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-estimatedinstancewarmup", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "CustomizedScalingMetricSpecification": { + "Type": "CustomizedScalingMetricSpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html#cfn-autoscalingplans-scalingplan-targettrackingconfiguration-customizedscalingmetricspecification", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.AudioSelectorSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html", + "Properties": { + "AudioPidSelection": { + "Type": "AudioPidSelection", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiopidselection", + "UpdateType": "Mutable" + }, + "AudioLanguageSelection": { + "Type": "AudioLanguageSelection", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-audioselectorsettings.html#cfn-medialive-channel-audioselectorsettings-audiolanguageselection", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.JSONMappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-jsonmappingparameters.html", + "Properties": { + "RecordRowPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-jsonmappingparameters.html#cfn-kinesisanalyticsv2-application-jsonmappingparameters-recordrowpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::GameLift::Alias.RoutingStrategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html", + "Properties": { + "FleetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-fleetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Message": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-message", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::Resolver.PipelineConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-pipelineconfig.html", + "Properties": { + "Functions": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-pipelineconfig.html#cfn-appsync-resolver-pipelineconfig-functions", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.HttpRouteHeader": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html", + "Properties": { + "Invert": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-invert", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Match": { + "Type": "HeaderMatchMethod", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-match", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.ClassicLoadBalancersConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html", + "Properties": { + "ClassicLoadBalancers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html#cfn-ec2-spotfleet-classicloadbalancersconfig-classicloadbalancers", + "DuplicatesAllowed": false, + "ItemType": "ClassicLoadBalancer", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask.NotificationConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html", + "Properties": { + "NotificationArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotificationType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotificationEvents": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-notificationconfig.html#cfn-ssm-maintenancewindowtask-notificationconfig-notificationevents", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceFleetConfig.Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html", + "Properties": { + "Classification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-classification", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ConfigurationProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurationproperties", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Immutable" + }, + "Configurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-configuration.html#cfn-elasticmapreduce-instancefleetconfig-configuration-configurations", + "DuplicatesAllowed": false, + "ItemType": "Configuration", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.CodeContent": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html", + "Properties": { + "ZipFileContent": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-zipfilecontent", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3ContentLocation": { + "Type": "S3ContentLocation", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-s3contentlocation", + "UpdateType": "Mutable" + }, + "TextContent": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-codecontent.html#cfn-kinesisanalyticsv2-application-codecontent-textcontent", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.SchemaConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html", + "Properties": { + "CatalogId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-catalogid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-databasename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Region": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-region", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TableName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-tablename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "VersionId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-versionid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolUser.AttributeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Table.StorageDescriptor": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html", + "Properties": { + "StoredAsSubDirectories": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-storedassubdirectories", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "BucketColumns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-bucketcolumns", + "UpdateType": "Mutable" + }, + "SkewedInfo": { + "Type": "SkewedInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-skewedinfo", + "UpdateType": "Mutable" + }, + "InputFormat": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-inputformat", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NumberOfBuckets": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-numberofbuckets", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "OutputFormat": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-outputformat", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Columns": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-columns", + "ItemType": "Column", + "UpdateType": "Mutable" + }, + "SerdeInfo": { + "Type": "SerdeInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-serdeinfo", + "UpdateType": "Mutable" + }, + "SortColumns": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-sortcolumns", + "ItemType": "Order", + "UpdateType": "Mutable" + }, + "Compressed": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-compressed", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-storagedescriptor.html#cfn-glue-table-storagedescriptor-location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IAM::User.LoginProfile": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html", + "Properties": { + "Password": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html#cfn-iam-user-loginprofile-password", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "PasswordResetRequired": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html#cfn-iam-user-loginprofile-passwordresetrequired", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.SourceSelectionCriteria": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html", + "Properties": { + "SseKmsEncryptedObjects": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html#cfn-s3-bucket-sourceselectioncriteria-ssekmsencryptedobjects", + "Required": true, + "Type": "SseKmsEncryptedObjects", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::SubscriptionDefinition.Subscription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html", + "Properties": { + "Target": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-target", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Source": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-source", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Subject": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinition-subscription.html#cfn-greengrass-subscriptiondefinition-subscription-subject", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::Stage.MethodSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html", + "Properties": { + "CacheDataEncrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachedataencrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheTtlInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachettlinseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "CachingEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachingenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DataTraceEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-datatraceenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "HttpMethod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-httpmethod", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LoggingLevel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-logginglevel", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricsEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-metricsenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "ResourcePath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-resourcepath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ThrottlingBurstLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-throttlingburstlimit", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ThrottlingRateLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-throttlingratelimit", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.ResourceDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html", + "Properties": { + "Resources": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedefinitionversion.html#cfn-greengrass-resourcedefinition-resourcedefinitionversion-resources", + "ItemType": "ResourceInstance", + "UpdateType": "Immutable" + } + } + }, + "AWS::DynamoDB::Table.ProvisionedThroughput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html", + "Properties": { + "ReadCapacityUnits": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-readcapacityunits", + "PrimitiveType": "Long", + "Required": true, + "UpdateType": "Mutable" + }, + "WriteCapacityUnits": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-writecapacityunits", + "PrimitiveType": "Long", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Stack.Source": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html", + "Properties": { + "Password": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-password", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Revision": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-revision", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SshKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-sshkey", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Url": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-url", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Username": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-username", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.Placement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html", + "Properties": { + "GroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-groupname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tenancy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-tenancy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AvailabilityZone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-availabilityzone", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Affinity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-affinity", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HostId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-placement.html#cfn-ec2-launchtemplate-launchtemplatedata-placement-hostid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer.ConnectionSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html", + "Properties": { + "IdleTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html#cfn-elb-connectionsettings-idletimeout", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.HttpRequestMethodConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html", + "Properties": { + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html#cfn-elasticloadbalancingv2-listenerrule-httprequestmethodconfig-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.LoggingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html", + "Properties": { + "DestinationBucketName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-destinationbucketname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LogFilePrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-logfileprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.StorageClassAnalysis": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html", + "Properties": { + "DataExport": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html#cfn-s3-bucket-storageclassanalysis-dataexport", + "Required": false, + "Type": "DataExport", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.RoutingRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html", + "Properties": { + "RedirectRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-redirectrule", + "Required": true, + "Type": "RedirectRule", + "UpdateType": "Mutable" + }, + "RoutingRuleCondition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition", + "Required": false, + "Type": "RoutingRuleCondition", + "UpdateType": "Mutable" + } + } + }, + "AWS::Transfer::Server.IdentityProviderDetails": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html", + "Properties": { + "InvocationRole": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html#cfn-transfer-server-identityproviderdetails-invocationrole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Url": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-identityproviderdetails.html#cfn-transfer-server-identityproviderdetails-url", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyConfigurationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html", + "Properties": { + "BlockEmail": { + "Type": "NotifyEmailType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-blockemail", + "UpdateType": "Mutable" + }, + "ReplyTo": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-replyto", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-sourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NoActionEmail": { + "Type": "NotifyEmailType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-noactionemail", + "UpdateType": "Mutable" + }, + "From": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-from", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MfaEmail": { + "Type": "NotifyEmailType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-mfaemail", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::LoggerDefinition.Logger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html", + "Properties": { + "Space": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-space", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-type", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Level": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-level", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Component": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-logger.html#cfn-greengrass-loggerdefinition-logger-component", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::Cluster.KerberosAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html", + "Properties": { + "ADDomainJoinPassword": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-addomainjoinpassword", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ADDomainJoinUser": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-addomainjoinuser", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CrossRealmTrustPrincipalPassword": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-crossrealmtrustprincipalpassword", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "KdcAdminPassword": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-kdcadminpassword", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Realm": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html#cfn-elasticmapreduce-cluster-kerberosattributes-realm", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::RecordSet.GeoLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html", + "Properties": { + "ContinentCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-continentcode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CountryCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-countrycode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SubdivisionCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-subdivisioncode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.AttributeDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html", + "Properties": { + "AttributeType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html#cfn-pinpoint-campaign-attributedimension-attributetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html#cfn-pinpoint-campaign-attributedimension-values", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Trigger.NotificationProperty": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-notificationproperty.html", + "Properties": { + "NotifyDelayAfter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-trigger-notificationproperty.html#cfn-glue-trigger-notificationproperty-notifydelayafter", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.SplunkRetryOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkretryoptions.html", + "Properties": { + "DurationInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-splunkretryoptions.html#cfn-kinesisfirehose-deliverystream-splunkretryoptions-durationinseconds", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.MessageConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html", + "Properties": { + "APNSMessage": { + "Type": "Message", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-apnsmessage", + "UpdateType": "Mutable" + }, + "BaiduMessage": { + "Type": "Message", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-baidumessage", + "UpdateType": "Mutable" + }, + "DefaultMessage": { + "Type": "Message", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-defaultmessage", + "UpdateType": "Mutable" + }, + "EmailMessage": { + "Type": "CampaignEmailMessage", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-emailmessage", + "UpdateType": "Mutable" + }, + "GCMMessage": { + "Type": "Message", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-gcmmessage", + "UpdateType": "Mutable" + }, + "SMSMessage": { + "Type": "CampaignSmsMessage", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-smsmessage", + "UpdateType": "Mutable" + }, + "ADMMessage": { + "Type": "Message", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html#cfn-pinpoint-campaign-messageconfiguration-admmessage", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html", + "Properties": { + "PredefinedMetricType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-autoscaling-scalingpolicy-predefinedmetricspecification-predefinedmetrictype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ResourceLabel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-predefinedmetricspecification.html#cfn-autoscaling-scalingpolicy-predefinedmetricspecification-resourcelabel", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::LayerVersion.Content": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html", + "Properties": { + "S3ObjectVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3objectversion", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "S3Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3bucket", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "S3Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3key", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.QueryAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html", + "Properties": { + "Filters": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html#cfn-iotanalytics-dataset-queryaction-filters", + "ItemType": "Filter", + "UpdateType": "Mutable" + }, + "SqlQuery": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-queryaction.html#cfn-iotanalytics-dataset-queryaction-sqlquery", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::Association.Target": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html#cfn-ssm-association-target-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html#cfn-ssm-association-target-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::DomainName.EndpointConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-endpointconfiguration.html", + "Properties": { + "Types": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-endpointconfiguration.html#cfn-apigateway-domainname-endpointconfiguration-types", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::CoreDefinition.CoreDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html", + "Properties": { + "Cores": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-coredefinition-coredefinitionversion.html#cfn-greengrass-coredefinition-coredefinitionversion-cores", + "ItemType": "Core", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalingPolicy.StepAdjustment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html", + "Properties": { + "MetricIntervalLowerBound": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-metricintervallowerbound", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricIntervalUpperBound": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-metricintervalupperbound", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "ScalingAdjustment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-scalingadjustment", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.QuietTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html", + "Properties": { + "Start": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html#cfn-pinpoint-campaign-schedule-quiettime-start", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "End": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html#cfn-pinpoint-campaign-schedule-quiettime-end", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.StageTransition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html", + "Properties": { + "Reason": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-reason", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StageName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-stagename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.Deserializer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html", + "Properties": { + "HiveJsonSerDe": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html#cfn-kinesisfirehose-deliverystream-deserializer-hivejsonserde", + "Required": false, + "Type": "HiveJsonSerDe", + "UpdateType": "Mutable" + }, + "OpenXJsonSerDe": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-deserializer.html#cfn-kinesisfirehose-deliverystream-deserializer-openxjsonserde", + "Required": false, + "Type": "OpenXJsonSerDe", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowAutomationParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html", + "Properties": { + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowautomationparameters-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "DocumentVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowautomationparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowautomationparameters-documentversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.StepFunctionsAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html", + "Properties": { + "ExecutionNamePrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-executionnameprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StateMachineName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-stepfunctionsaction.html#cfn-iot-topicrule-stepfunctionsaction-statemachinename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.SpotFleetRequestConfigData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html", + "Properties": { + "AllocationStrategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-allocationstrategy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ExcessCapacityTerminationPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-excesscapacityterminationpolicy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "IamFleetRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-iamfleetrole", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "InstanceInterruptionBehavior": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-instanceinterruptionbehavior", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LaunchSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications", + "DuplicatesAllowed": false, + "ItemType": "SpotFleetLaunchSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "LaunchTemplateConfigs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-launchtemplateconfigs", + "DuplicatesAllowed": false, + "ItemType": "LaunchTemplateConfig", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "LoadBalancersConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-loadbalancersconfig", + "Required": false, + "Type": "LoadBalancersConfig", + "UpdateType": "Immutable" + }, + "ReplaceUnhealthyInstances": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-replaceunhealthyinstances", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "SpotPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-spotprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "TargetCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-targetcapacity", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "TerminateInstancesWithExpiration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-terminateinstanceswithexpiration", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ValidFrom": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-validfrom", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ValidUntil": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-validuntil", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTAnalytics::Channel.CustomerManagedS3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html", + "Properties": { + "Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html#cfn-iotanalytics-channel-customermanageds3-bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html#cfn-iotanalytics-channel-customermanageds3-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "KeyPrefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-customermanageds3.html#cfn-iotanalytics-channel-customermanageds3-keyprefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion.S3MachineLearningModelResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html", + "Properties": { + "DestinationPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-destinationpath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "S3Uri": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata.html#cfn-greengrass-resourcedefinitionversion-s3machinelearningmodelresourcedata-s3uri", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppSync::GraphQLApi.OpenIDConnectConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html", + "Properties": { + "Issuer": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html#cfn-appsync-graphqlapi-openidconnectconfig-issuer", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ClientId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html#cfn-appsync-graphqlapi-openidconnectconfig-clientid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html#cfn-appsync-graphqlapi-openidconnectconfig-authttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "IatTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html#cfn-appsync-graphqlapi-openidconnectconfig-iatttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.SimpleScalingPolicyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html", + "Properties": { + "AdjustmentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-adjustmenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CoolDown": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-cooldown", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ScalingAdjustment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-scalingadjustment", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTThingsGraph::FlowTemplate.DefinitionDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html", + "Properties": { + "Language": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html#cfn-iotthingsgraph-flowtemplate-definitiondocument-language", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Text": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotthingsgraph-flowtemplate-definitiondocument.html#cfn-iotthingsgraph-flowtemplate-definitiondocument-text", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DLM::LifecyclePolicy.CreateRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html", + "Properties": { + "IntervalUnit": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-intervalunit", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Times": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-times", + "UpdateType": "Mutable" + }, + "Interval": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-interval", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::GraphQLApi.LogConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html", + "Properties": { + "CloudWatchLogsRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html#cfn-appsync-graphqlapi-logconfig-cloudwatchlogsrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ExcludeVerboseContent": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html#cfn-appsync-graphqlapi-logconfig-excludeverbosecontent", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "FieldLogLevel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html#cfn-appsync-graphqlapi-logconfig-fieldloglevel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationOutput.Output": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html", + "Properties": { + "DestinationSchema": { + "Type": "DestinationSchema", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-destinationschema", + "UpdateType": "Mutable" + }, + "LambdaOutput": { + "Type": "LambdaOutput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-lambdaoutput", + "UpdateType": "Mutable" + }, + "KinesisFirehoseOutput": { + "Type": "KinesisFirehoseOutput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-kinesisfirehoseoutput", + "UpdateType": "Mutable" + }, + "KinesisStreamsOutput": { + "Type": "KinesisStreamsOutput", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-kinesisstreamsoutput", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationoutput-output.html#cfn-kinesisanalyticsv2-applicationoutput-output-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.SimpleScalingPolicyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html", + "Properties": { + "AdjustmentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-adjustmenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CoolDown": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-cooldown", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ScalingAdjustment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-scalingadjustment", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition.DefaultConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html", + "Properties": { + "Execution": { + "Type": "Execution", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-defaultconfig.html#cfn-greengrass-functiondefinition-defaultconfig-execution", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.CapacityReservationSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html", + "Properties": { + "CapacityReservationPreference": { + "Type": "CapacityReservationPreference", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification-capacityreservationpreference", + "UpdateType": "Mutable" + }, + "CapacityReservationTarget": { + "Type": "CapacityReservationTarget", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification.html#cfn-ec2-launchtemplate-launchtemplatedata-capacityreservationspecification-capacityreservationtarget", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.EncryptionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html", + "Properties": { + "ReplicaKmsKeyID": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html#cfn-s3-bucket-encryptionconfiguration-replicakmskeyid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Stack.ChefConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html", + "Properties": { + "BerkshelfVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ManageBerkshelf": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::Listener.FixedResponseConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html", + "Properties": { + "ContentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-contenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MessageBody": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-messagebody", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StatusCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-fixedresponseconfig.html#cfn-elasticloadbalancingv2-listener-fixedresponseconfig-statuscode", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::Rule.Target": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html", + "Properties": { + "Arn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-arn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "EcsParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-ecsparameters", + "Required": false, + "Type": "EcsParameters", + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Input": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InputPath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InputTransformer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputtransformer", + "Required": false, + "Type": "InputTransformer", + "UpdateType": "Mutable" + }, + "KinesisParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-kinesisparameters", + "Required": false, + "Type": "KinesisParameters", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-rolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RunCommandParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-runcommandparameters", + "Required": false, + "Type": "RunCommandParameters", + "UpdateType": "Mutable" + }, + "SqsParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-sqsparameters", + "Required": false, + "Type": "SqsParameters", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.Behavior": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior.html", + "Properties": { + "Recency": { + "Type": "Recency", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-behavior.html#cfn-pinpoint-segment-segmentdimensions-behavior-recency", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.KinesisStreamsInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html#cfn-kinesisanalytics-application-kinesisstreamsinput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisstreamsinput.html#cfn-kinesisanalytics-application-kinesisstreamsinput-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::SimulationApplication.SourceConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html", + "Properties": { + "S3Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-s3bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Architecture": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-architecture", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-robomaker-simulationapplication-sourceconfig.html#cfn-robomaker-simulationapplication-sourceconfig-s3key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.RegistryCredential": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html", + "Properties": { + "Credential": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html#cfn-codebuild-project-registrycredential-credential", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CredentialProvider": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-registrycredential.html#cfn-codebuild-project-registrycredential-credentialprovider", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::RemediationConfiguration.SsmControls": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html", + "Properties": { + "ErrorPercentage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html#cfn-config-remediationconfiguration-ssmcontrols-errorpercentage", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ConcurrentExecutionRatePercentage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-ssmcontrols.html#cfn-config-remediationconfiguration-ssmcontrols-concurrentexecutionratepercentage", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::EFS::FileSystem.LifecyclePolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticfilesystem-filesystem-lifecyclepolicy.html", + "Properties": { + "TransitionToIA": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticfilesystem-filesystem-lifecyclepolicy.html#cfn-elasticfilesystem-filesystem-lifecyclepolicy-transitiontoia", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::Input.Attribute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-attribute.html", + "Properties": { + "JsonPath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-attribute.html#cfn-iotevents-input-attribute-jsonpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.Sns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html", + "Properties": { + "TargetArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sns.html#cfn-iotevents-detectormodel-sns-targetarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MSK::Cluster.StorageInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-storageinfo.html", + "Properties": { + "EBSStorageInfo": { + "Type": "EBSStorageInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-storageinfo.html#cfn-msk-cluster-storageinfo-ebsstorageinfo", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppSync::DataSource.RdsHttpEndpointConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html", + "Properties": { + "AwsRegion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-awsregion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Schema": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-schema", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-databasename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DbClusterIdentifier": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-dbclusteridentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AwsSecretStoreArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-awssecretstorearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSetEventDestination.KinesisFirehoseDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html", + "Properties": { + "DeliveryStreamArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html#cfn-pinpointemail-configurationseteventdestination-kinesisfirehosedestination-deliverystreamarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IamRoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-kinesisfirehosedestination.html#cfn-pinpointemail-configurationseteventdestination-kinesisfirehosedestination-iamrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MSK::Cluster.EncryptionAtRest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionatrest.html", + "Properties": { + "DataVolumeKMSKeyId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionatrest.html#cfn-msk-cluster-encryptionatrest-datavolumekmskeyid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.OnExit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onexit.html", + "Properties": { + "Events": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-onexit.html#cfn-iotevents-detectormodel-onexit-events", + "ItemType": "Event", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeCommit::Repository.RepositoryTrigger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html", + "Properties": { + "Events": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-events", + "UpdateType": "Mutable" + }, + "Branches": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-branches", + "UpdateType": "Mutable" + }, + "CustomData": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-customdata", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DestinationArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-destinationarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::RecordSet.AliasTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html", + "Properties": { + "DNSName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-dnshostname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "EvaluateTargetHealth": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "HostedZoneId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-hostedzoneid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::Broker.User": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html", + "Properties": { + "Username": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html#cfn-amazonmq-broker-user-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Groups": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html#cfn-amazonmq-broker-user-groups", + "UpdateType": "Mutable" + }, + "ConsoleAccess": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html#cfn-amazonmq-broker-user-consoleaccess", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Password": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html#cfn-amazonmq-broker-user-password", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.CampaignHook": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html", + "Properties": { + "Mode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html#cfn-pinpoint-campaign-campaignhook-mode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "WebUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html#cfn-pinpoint-campaign-campaignhook-weburl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LambdaFunctionName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html#cfn-pinpoint-campaign-campaignhook-lambdafunctionname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::App.CustomRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html", + "Properties": { + "Condition": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html#cfn-amplify-app-customrule-condition", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Status": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html#cfn-amplify-app-customrule-status", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Target": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html#cfn-amplify-app-customrule-target", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Source": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-customrule.html#cfn-amplify-app-customrule-source", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::ByteMatchSet.ByteMatchTuple": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html", + "Properties": { + "FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch", + "Required": true, + "Type": "FieldToMatch", + "UpdateType": "Mutable" + }, + "PositionalConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-positionalconstraint", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TargetString": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-targetstring", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TargetStringBase64": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-targetstringbase64", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TextTransformation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-texttransformation", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRuleDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html", + "Properties": { + "IotEventsDestinationConfiguration": { + "Type": "IotEventsDestinationConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html#cfn-iotanalytics-dataset-datasetcontentdeliveryruledestination-ioteventsdestinationconfiguration", + "UpdateType": "Mutable" + }, + "S3DestinationConfiguration": { + "Type": "S3DestinationConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-datasetcontentdeliveryruledestination.html#cfn-iotanalytics-dataset-datasetcontentdeliveryruledestination-s3destinationconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html", + "Properties": { + "CustomizedMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-customizedmetricspecification", + "Required": false, + "Type": "CustomizedMetricSpecification", + "UpdateType": "Mutable" + }, + "DisableScaleIn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-disablescalein", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "PredefinedMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-predefinedmetricspecification", + "Required": false, + "Type": "PredefinedMetricSpecification", + "UpdateType": "Mutable" + }, + "TargetValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingconfiguration.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration-targetvalue", + "PrimitiveType": "Double", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::Identity.Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html#cfn-pinpointemail-identity-tags-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-tags.html#cfn-pinpointemail-identity-tags-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.MountPoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html", + "Properties": { + "ContainerPath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-containerpath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ReadOnly": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-readonly", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceVolume": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-sourcevolume", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.Math": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html", + "Properties": { + "Attribute": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html#cfn-iotanalytics-pipeline-math-attribute", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html#cfn-iotanalytics-pipeline-math-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Math": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html#cfn-iotanalytics-pipeline-math-math", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-math.html#cfn-iotanalytics-pipeline-math-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.Application": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html", + "Properties": { + "AdditionalInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-additionalinfo", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Args": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-args", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html#cfn-elasticmapreduce-cluster-application-version", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.HttpRouteMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html", + "Properties": { + "Scheme": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-scheme", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Headers": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-headers", + "ItemType": "HttpRouteHeader", + "UpdateType": "Mutable" + }, + "Prefix": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-prefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Method": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-method", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html", + "Properties": { + "KinesisStreamARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration-kinesisstreamarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::SecurityConfiguration.EncryptionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html", + "Properties": { + "S3Encryptions": { + "Type": "S3Encryptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-s3encryptions", + "UpdateType": "Mutable" + }, + "CloudWatchEncryption": { + "Type": "CloudWatchEncryption", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-cloudwatchencryption", + "UpdateType": "Mutable" + }, + "JobBookmarksEncryption": { + "Type": "JobBookmarksEncryption", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-encryptionconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration-jobbookmarksencryption", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.RemoveAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html", + "Properties": { + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Attributes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-attributes", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-removeattributes.html#cfn-iotanalytics-pipeline-removeattributes-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Classifier.XMLClassifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html", + "Properties": { + "RowTag": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html#cfn-glue-classifier-xmlclassifier-rowtag", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Classification": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html#cfn-glue-classifier-xmlclassifier-classification", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-xmlclassifier.html#cfn-glue-classifier-xmlclassifier-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSetEventDestination.EventDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html", + "Properties": { + "SnsDestination": { + "Type": "SnsDestination", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-snsdestination", + "UpdateType": "Mutable" + }, + "CloudWatchDestination": { + "Type": "CloudWatchDestination", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-cloudwatchdestination", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "MatchingEventTypes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-matchingeventtypes", + "UpdateType": "Mutable" + }, + "PinpointDestination": { + "Type": "PinpointDestination", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-pinpointdestination", + "UpdateType": "Mutable" + }, + "KinesisFirehoseDestination": { + "Type": "KinesisFirehoseDestination", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-configurationseteventdestination-eventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination-kinesisfirehosedestination", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask.TaskInvocationParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html", + "Properties": { + "MaintenanceWindowRunCommandParameters": { + "Type": "MaintenanceWindowRunCommandParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowruncommandparameters", + "UpdateType": "Mutable" + }, + "MaintenanceWindowAutomationParameters": { + "Type": "MaintenanceWindowAutomationParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowautomationparameters", + "UpdateType": "Mutable" + }, + "MaintenanceWindowStepFunctionsParameters": { + "Type": "MaintenanceWindowStepFunctionsParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowstepfunctionsparameters", + "UpdateType": "Mutable" + }, + "MaintenanceWindowLambdaParameters": { + "Type": "MaintenanceWindowLambdaParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-taskinvocationparameters.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters-maintenancewindowlambdaparameters", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::DataSource.LambdaConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html", + "Properties": { + "LambdaFunctionArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html#cfn-appsync-datasource-lambdaconfig-lambdafunctionarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource.MappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html", + "Properties": { + "JSONMappingParameters": { + "Type": "JSONMappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-mappingparameters-jsonmappingparameters", + "UpdateType": "Mutable" + }, + "CSVMappingParameters": { + "Type": "CSVMappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-mappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-mappingparameters-csvmappingparameters", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.EC2TagSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagset.html", + "Properties": { + "Ec2TagSetList": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagset.html#cfn-codedeploy-deploymentgroup-ec2tagset-ec2tagsetlist", + "DuplicatesAllowed": false, + "ItemType": "EC2TagSetListObject", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::RouteResponse.ParameterConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-routeresponse-parameterconstraints.html", + "Properties": { + "Required": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-routeresponse-parameterconstraints.html#cfn-apigatewayv2-routeresponse-parameterconstraints-required", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.GlobalSecondaryIndex": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html", + "Properties": { + "IndexName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-indexname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "KeySchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-keyschema", + "DuplicatesAllowed": false, + "ItemType": "KeySchema", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Projection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-projection", + "Required": true, + "Type": "Projection", + "UpdateType": "Mutable" + }, + "ProvisionedThroughput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-provisionedthroughput", + "Required": false, + "Type": "ProvisionedThroughput", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.MetricDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html#cfn-autoscalingplans-scalingplan-metricdimension-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html#cfn-autoscalingplans-scalingplan-metricdimension-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.LocalVolumeResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html", + "Properties": { + "SourcePath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-sourcepath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DestinationPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-destinationpath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "GroupOwnerSetting": { + "Type": "GroupOwnerSetting", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-localvolumeresourcedata.html#cfn-greengrass-resourcedefinition-localvolumeresourcedata-groupownersetting", + "UpdateType": "Immutable" + } + } + }, + "AWS::S3::Bucket.RedirectRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html", + "Properties": { + "HostName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-hostname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HttpRedirectCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-httpredirectcode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-protocol", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ReplaceKeyPrefixWith": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-replacekeyprefixwith", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ReplaceKeyWith": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-replacekeywith", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::EventBusPolicy.Condition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html", + "Properties": { + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html#cfn-events-eventbuspolicy-condition-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html#cfn-events-eventbuspolicy-condition-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbuspolicy-condition.html#cfn-events-eventbuspolicy-condition-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.ScalingRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html", + "Properties": { + "Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-action", + "Required": true, + "Type": "ScalingAction", + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Trigger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-trigger", + "Required": true, + "Type": "ScalingTrigger", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.PlacementType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html", + "Properties": { + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html#cfn-elasticmapreduce-cluster-placementtype-availabilityzone", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.RuleCondition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html", + "Properties": { + "Field": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-conditions-field", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HostHeaderConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-hostheaderconfig", + "Required": false, + "Type": "HostHeaderConfig", + "UpdateType": "Mutable" + }, + "HttpHeaderConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-httpheaderconfig", + "Required": false, + "Type": "HttpHeaderConfig", + "UpdateType": "Mutable" + }, + "HttpRequestMethodConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-httprequestmethodconfig", + "Required": false, + "Type": "HttpRequestMethodConfig", + "UpdateType": "Mutable" + }, + "PathPatternConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-pathpatternconfig", + "Required": false, + "Type": "PathPatternConfig", + "UpdateType": "Mutable" + }, + "QueryStringConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-querystringconfig", + "Required": false, + "Type": "QueryStringConfig", + "UpdateType": "Mutable" + }, + "SourceIpConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-rulecondition-sourceipconfig", + "Required": false, + "Type": "SourceIpConfig", + "UpdateType": "Mutable" + }, + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-conditions-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.HealthCheck": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html", + "Properties": { + "Path": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-path", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UnhealthyThreshold": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-unhealthythreshold", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Port": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-port", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "HealthyThreshold": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-healthythreshold", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TimeoutMillis": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-timeoutmillis", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Protocol": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-protocol", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IntervalMillis": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html#cfn-appmesh-virtualnode-healthcheck-intervalmillis", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.AlarmConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html", + "Properties": { + "Alarms": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-alarms", + "DuplicatesAllowed": false, + "ItemType": "Alarm", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "IgnorePollAlarmFailure": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-ignorepollalarmfailure", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.ObjectLockRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html", + "Properties": { + "DefaultRetention": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html#cfn-s3-bucket-objectlockrule-defaultretention", + "Required": false, + "Type": "DefaultRetention", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource.JSONMappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters.html", + "Properties": { + "RecordRowPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters.html#cfn-kinesisanalytics-applicationreferencedatasource-jsonmappingparameters-recordrowpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.VideoSelector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html", + "Properties": { + "SelectorSettings": { + "Type": "VideoSelectorSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-selectorsettings", + "UpdateType": "Mutable" + }, + "ColorSpace": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-colorspace", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ColorSpaceUsage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-videoselector.html#cfn-medialive-channel-videoselector-colorspaceusage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.VersioningConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html", + "Properties": { + "MaxVersions": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-maxversions", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Unlimited": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-unlimited", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html", + "Properties": { + "GPSPoint": { + "Type": "GPSPoint", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html#cfn-pinpoint-segment-segmentdimensions-location-gpspoint", + "UpdateType": "Mutable" + }, + "Country": { + "Type": "SetDimension", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentdimensions-location.html#cfn-pinpoint-segment-segmentdimensions-location-country", + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Member.VotingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-votingpolicy.html", + "Properties": { + "ApprovalThresholdPolicy": { + "Type": "ApprovalThresholdPolicy", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-votingpolicy.html#cfn-managedblockchain-member-votingpolicy-approvalthresholdpolicy", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.Datastore": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html", + "Properties": { + "DatastoreName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html#cfn-iotanalytics-pipeline-datastore-datastorename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-datastore.html#cfn-iotanalytics-pipeline-datastore-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::App.SslConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html", + "Properties": { + "Certificate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-certificate", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Chain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-chain", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PrivateKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-privatekey", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::ApplicationSettings.CampaignHook": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html", + "Properties": { + "Mode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-mode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "WebUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-weburl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LambdaFunctionName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-campaignhook.html#cfn-pinpoint-applicationsettings-campaignhook-lambdafunctionname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalableTarget.ScheduledAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html", + "Properties": { + "EndTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-endtime", + "PrimitiveType": "Timestamp", + "Required": false, + "UpdateType": "Mutable" + }, + "ScalableTargetAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-scalabletargetaction", + "Required": false, + "Type": "ScalableTargetAction", + "UpdateType": "Mutable" + }, + "Schedule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-schedule", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ScheduledActionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-scheduledactionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StartTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scheduledaction.html#cfn-applicationautoscaling-scalabletarget-scheduledaction-starttime", + "PrimitiveType": "Timestamp", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::PatchBaseline.PatchFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html", + "Properties": { + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html#cfn-ssm-patchbaseline-patchfilter-values", + "UpdateType": "Mutable" + }, + "Key": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfilter.html#cfn-ssm-patchbaseline-patchfilter-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.InstanceIpv6Address": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html", + "Properties": { + "Ipv6Address": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html#cfn-ec2-instance-instanceipv6address-ipv6address", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticBeanstalk::Environment.Tier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-version", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.Sqs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html", + "Properties": { + "UseBase64": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-usebase64", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "QueueUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-sqs.html#cfn-iotevents-detectormodel-sqs-queueurl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.AssociationParameter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-value", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.TopicRulePayload": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html", + "Properties": { + "Actions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-actions", + "DuplicatesAllowed": false, + "ItemType": "Action", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "AwsIotSqlVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-awsiotsqlversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ErrorAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-erroraction", + "Required": false, + "Type": "Action", + "UpdateType": "Mutable" + }, + "RuleDisabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-ruledisabled", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "Sql": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-sql", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::IdentityPool.PushSync": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html", + "Properties": { + "ApplicationArns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-applicationarns", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.OutputDestinationSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html", + "Properties": { + "StreamName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-streamname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Username": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PasswordParam": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-passwordparam", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Url": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestinationsettings.html#cfn-medialive-channel-outputdestinationsettings-url", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer.ConnectionDrainingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-enabled", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "Timeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-timeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::MSK::Cluster.EBSStorageInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-ebsstorageinfo.html", + "Properties": { + "VolumeSize": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-ebsstorageinfo.html#cfn-msk-cluster-ebsstorageinfo-volumesize", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + } + } + }, + "AWS::ECS::Service.ServiceRegistry": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html", + "Properties": { + "ContainerName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-containername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ContainerPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-containerport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "RegistryArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-registryarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::S3::Bucket.WebsiteConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html", + "Properties": { + "ErrorDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-errordocument", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "IndexDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-indexdocument", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RedirectAllRequestsTo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-redirectallrequeststo", + "Required": false, + "Type": "RedirectAllRequestsTo", + "UpdateType": "Mutable" + }, + "RoutingRules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-routingrules", + "DuplicatesAllowed": false, + "ItemType": "RoutingRule", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.CpuOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-cpuoptions.html", + "Properties": { + "CoreCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-cpuoptions.html#cfn-ec2-instance-cpuoptions-corecount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ThreadsPerCore": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-cpuoptions.html#cfn-ec2-instance-cpuoptions-threadspercore", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::IdentityPool.CognitoIdentityProvider": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html", + "Properties": { + "ServerSideTokenCheck": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-serversidetokencheck", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ProviderName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-providername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ClientId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-clientid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.GeoRestriction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html", + "Properties": { + "Locations": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-locations", + "UpdateType": "Mutable" + }, + "RestrictionType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-restrictiontype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.AwsCloudMapServiceDiscovery": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html", + "Properties": { + "NamespaceName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-namespacename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServiceName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-servicename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Attributes": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html#cfn-appmesh-virtualnode-awscloudmapservicediscovery-attributes", + "ItemType": "AwsCloudMapInstanceAttribute", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EC2Fleet.FleetLaunchTemplateConfigRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html", + "Properties": { + "LaunchTemplateSpecification": { + "Type": "FleetLaunchTemplateSpecificationRequest", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateconfigrequest-launchtemplatespecification", + "UpdateType": "Mutable" + }, + "Overrides": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-fleetlaunchtemplateconfigrequest.html#cfn-ec2-ec2fleet-fleetlaunchtemplateconfigrequest-overrides", + "ItemType": "FleetLaunchTemplateOverridesRequest", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::Workteam.NotificationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-notificationconfiguration.html", + "Properties": { + "NotificationTopicArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-workteam-notificationconfiguration.html#cfn-sagemaker-workteam-notificationconfiguration-notificationtopicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.ResourceConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html", + "Properties": { + "VolumeSizeInGB": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html#cfn-iotanalytics-dataset-resourceconfiguration-volumesizeingb", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ComputeType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-resourceconfiguration.html#cfn-iotanalytics-dataset-resourceconfiguration-computetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.SNSAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-snsaction.html", + "Properties": { + "TopicArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-snsaction.html#cfn-ses-receiptrule-snsaction-topicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Encoding": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-snsaction.html#cfn-ses-receiptrule-snsaction-encoding", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticBeanstalk::ConfigurationTemplate.ConfigurationOptionSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html", + "Properties": { + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-namespace", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "OptionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-optionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ResourceName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-resourcename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-configurationtemplate-configurationoptionsetting.html#cfn-elasticbeanstalk-configurationtemplate-configurationoptionsetting-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.Policies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html", + "Properties": { + "PasswordPolicy": { + "Type": "PasswordPolicy", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html#cfn-cognito-userpool-policies-passwordpolicy", + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::Rule.KinesisParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-kinesisparameters.html", + "Properties": { + "PartitionKeyPath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-kinesisparameters.html#cfn-events-rule-kinesisparameters-partitionkeypath", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.NodeRangeProperty": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html", + "Properties": { + "Container": { + "Type": "ContainerProperties", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-container", + "UpdateType": "Mutable" + }, + "TargetNodes": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-targetnodes", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::ByteMatchSet.FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Data": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-data", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.LaunchTemplateSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html", + "Properties": { + "LaunchTemplateId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html#cfn-ec2-instance-launchtemplatespecification-launchtemplateid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LaunchTemplateName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html#cfn-ec2-instance-launchtemplatespecification-launchtemplatename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html#cfn-ec2-instance-launchtemplatespecification-version", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.MetricsCollection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html", + "Properties": { + "Granularity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-granularity", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Metrics": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-metrics", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.CloudWatchLogsConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html", + "Properties": { + "Status": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html#cfn-codebuild-project-cloudwatchlogsconfig-status", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "GroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html#cfn-codebuild-project-cloudwatchlogsconfig-groupname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StreamName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-cloudwatchlogsconfig.html#cfn-codebuild-project-cloudwatchlogsconfig-streamname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.ArtifactStore": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html", + "Properties": { + "EncryptionKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey", + "Required": false, + "Type": "EncryptionKey", + "UpdateType": "Mutable" + }, + "Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-location", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.KeySchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html", + "Properties": { + "AttributeName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-attributename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "KeyType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-keytype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion.LocalVolumeResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html", + "Properties": { + "SourcePath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-sourcepath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DestinationPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-destinationpath", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "GroupOwnerSetting": { + "Type": "GroupOwnerSetting", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-localvolumeresourcedata.html#cfn-greengrass-resourcedefinitionversion-localvolumeresourcedata-groupownersetting", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.DetectorModelDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html", + "Properties": { + "States": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html#cfn-iotevents-detectormodel-detectormodeldefinition-states", + "ItemType": "State", + "UpdateType": "Mutable" + }, + "InitialStateName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-detectormodeldefinition.html#cfn-iotevents-detectormodel-detectormodeldefinition-initialstatename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Mesh.EgressFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-egressfilter.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-mesh-egressfilter.html#cfn-appmesh-mesh-egressfilter-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::PatchBaseline.Rule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html", + "Properties": { + "EnableNonSecurity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-enablenonsecurity", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "PatchFilterGroup": { + "Type": "PatchFilterGroup", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-patchfiltergroup", + "UpdateType": "Mutable" + }, + "ApproveAfterDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-approveafterdays", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ComplianceLevel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-rule.html#cfn-ssm-patchbaseline-rule-compliancelevel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::RemediationConfiguration.StaticValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-staticvalue.html", + "Properties": { + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-staticvalue.html#cfn-config-remediationconfiguration-staticvalue-values", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.ViewerCertificate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html", + "Properties": { + "IamCertificateId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-iamcertificateid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SslSupportMethod": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-sslsupportmethod", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MinimumProtocolVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-minimumprotocolversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CloudFrontDefaultCertificate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-cloudfrontdefaultcertificate", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "AcmCertificateArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-acmcertificatearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ConfigurationSetEventDestination.CloudWatchDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-cloudwatchdestination.html", + "Properties": { + "DimensionConfigurations": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-cloudwatchdestination.html#cfn-ses-configurationseteventdestination-cloudwatchdestination-dimensionconfigurations", + "ItemType": "DimensionConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualService.VirtualNodeServiceProvider": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualnodeserviceprovider.html", + "Properties": { + "VirtualNodeName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualnodeserviceprovider.html#cfn-appmesh-virtualservice-virtualnodeserviceprovider-virtualnodename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html", + "Properties": { + "Classification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-classification", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ConfigurationProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-configurationproperties", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Configurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html#cfn-elasticmapreduce-cluster-configuration-configurations", + "DuplicatesAllowed": false, + "ItemType": "Configuration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceFleetConfig.InstanceTypeConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html", + "Properties": { + "BidPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-bidprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "BidPriceAsPercentageOfOnDemandPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-bidpriceaspercentageofondemandprice", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Immutable" + }, + "Configurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-configurations", + "DuplicatesAllowed": false, + "ItemType": "Configuration", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EbsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-ebsconfiguration", + "Required": false, + "Type": "EbsConfiguration", + "UpdateType": "Immutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "WeightedCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancetypeconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfig-weightedcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::WAFRegional::XssMatchSet.XssMatchTuple": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html", + "Properties": { + "TextTransformation": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-texttransformation", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FieldToMatch": { + "Type": "FieldToMatch", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-fieldtomatch", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.Rule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html", + "Properties": { + "AbortIncompleteMultipartUpload": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-abortincompletemultipartupload", + "Required": false, + "Type": "AbortIncompleteMultipartUpload", + "UpdateType": "Mutable" + }, + "ExpirationDate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-expirationdate", + "PrimitiveType": "Timestamp", + "Required": false, + "UpdateType": "Mutable" + }, + "ExpirationInDays": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-expirationindays", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-id", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NoncurrentVersionExpirationInDays": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversionexpirationindays", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "NoncurrentVersionTransition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition", + "Required": false, + "Type": "NoncurrentVersionTransition", + "UpdateType": "Mutable" + }, + "NoncurrentVersionTransitions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransitions", + "DuplicatesAllowed": false, + "ItemType": "NoncurrentVersionTransition", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Prefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-prefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Status": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-status", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TagFilters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-tagfilters", + "DuplicatesAllowed": false, + "ItemType": "TagFilter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Transition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transition", + "Required": false, + "Type": "Transition", + "UpdateType": "Mutable" + }, + "Transitions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transitions", + "DuplicatesAllowed": false, + "ItemType": "Transition", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::DLM::LifecyclePolicy.RetainRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html", + "Properties": { + "Count": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-count", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.KernelCapabilities": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html", + "Properties": { + "Add": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html#cfn-ecs-taskdefinition-kernelcapabilities-add", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Drop": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html#cfn-ecs-taskdefinition-kernelcapabilities-drop", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.TriggeringDataset": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-triggeringdataset.html", + "Properties": { + "DatasetName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-triggeringdataset.html#cfn-iotanalytics-dataset-triggeringdataset-datasetname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverRiskConfigurationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html", + "Properties": { + "Actions": { + "Type": "AccountTakeoverActionsType", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype-actions", + "UpdateType": "Mutable" + }, + "NotifyConfiguration": { + "Type": "NotifyConfigurationType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfigurationtype-notifyconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::MLTransform.TransformParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html", + "Properties": { + "TransformType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html#cfn-glue-mltransform-transformparameters-transformtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FindMatchesParameters": { + "Type": "FindMatchesParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-transformparameters.html#cfn-glue-mltransform-transformparameters-findmatchesparameters", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.TopicConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html", + "Properties": { + "Event": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-event", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Filter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-filter", + "Required": false, + "Type": "NotificationFilter", + "UpdateType": "Mutable" + }, + "Topic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-topic", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.S3OriginConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html", + "Properties": { + "OriginAccessIdentity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html#cfn-cloudfront-distribution-s3originconfig-originaccessidentity", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::Association.ParameterValues": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html", + "Properties": { + "ParameterValues": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html#cfn-ssm-association-parametervalues-parametervalues", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.RecordColumn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html", + "Properties": { + "Mapping": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-mapping", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SqlType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-sqltype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordcolumn.html#cfn-kinesisanalytics-application-recordcolumn-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::PatchBaseline.PatchFilterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfiltergroup.html", + "Properties": { + "PatchFilters": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchfiltergroup.html#cfn-ssm-patchbaseline-patchfiltergroup-patchfilters", + "ItemType": "PatchFilter", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.LambdaConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html", + "Properties": { + "CreateAuthChallenge": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-createauthchallenge", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PreAuthentication": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-preauthentication", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefineAuthChallenge": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-defineauthchallenge", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PreSignUp": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-presignup", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PreTokenGeneration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-pretokengeneration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UserMigration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-usermigration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PostAuthentication": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-postauthentication", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PostConfirmation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-postconfirmation", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CustomMessage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-custommessage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VerifyAuthChallengeResponse": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-verifyauthchallengeresponse", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DLM::LifecyclePolicy.PolicyDetails": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html", + "Properties": { + "ResourceTypes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-resourcetypes", + "UpdateType": "Mutable" + }, + "Schedules": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-schedules", + "ItemType": "Schedule", + "UpdateType": "Mutable" + }, + "PolicyType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-policytype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Parameters": { + "Type": "Parameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-parameters", + "UpdateType": "Mutable" + }, + "TargetTags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-targettags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::Configuration.TagsEntry": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html", + "Properties": { + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html#cfn-amazonmq-configuration-tagsentry-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configuration-tagsentry.html#cfn-amazonmq-configuration-tagsentry-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Table.TableInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html", + "Properties": { + "Owner": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-owner", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ViewOriginalText": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-vieworiginaltext", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TableType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-tabletype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "ViewExpandedText": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-viewexpandedtext", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StorageDescriptor": { + "Type": "StorageDescriptor", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-storagedescriptor", + "UpdateType": "Mutable" + }, + "PartitionKeys": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-partitionkeys", + "ItemType": "Column", + "UpdateType": "Mutable" + }, + "Retention": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-retention", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::CodeBuild::Project.ProjectCache": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html", + "Properties": { + "Modes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html#cfn-codebuild-project-projectcache-modes", + "UpdateType": "Mutable" + }, + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html#cfn-codebuild-project-projectcache-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectcache.html#cfn-codebuild-project-projectcache-location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::SizeConstraintSet.FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html", + "Properties": { + "Data": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::RemediationConfiguration.RemediationParameterValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html", + "Properties": { + "ResourceValue": { + "Type": "ResourceValue", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html#cfn-config-remediationconfiguration-remediationparametervalue-resourcevalue", + "UpdateType": "Mutable" + }, + "StaticValue": { + "Type": "StaticValue", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-remediationparametervalue.html#cfn-config-remediationconfiguration-remediationparametervalue-staticvalue", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.AddAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html", + "Properties": { + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html#cfn-iotanalytics-pipeline-addattributes-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Attributes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html#cfn-iotanalytics-pipeline-addattributes-attributes", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-addattributes.html#cfn-iotanalytics-pipeline-addattributes-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Function.TracingConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html", + "Properties": { + "Mode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html#cfn-lambda-function-tracingconfig-mode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.ScriptBootstrapActionConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html", + "Properties": { + "Args": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-args", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html#cfn-elasticmapreduce-cluster-scriptbootstrapactionconfig-path", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.IotTopicPublish": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html", + "Properties": { + "MqttTopic": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-iottopicpublish.html#cfn-iotevents-detectormodel-iottopicpublish-mqtttopic", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::LaunchConfiguration.BlockDevice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html", + "Properties": { + "DeleteOnTermination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-deleteonterm", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Encrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-encrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshotId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-snapshotid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-volumesize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-volumetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.MetricsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html", + "Properties": { + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Prefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-prefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TagFilters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-tagfilters", + "DuplicatesAllowed": false, + "ItemType": "TagFilter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Layer.AutoScalingThresholds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html", + "Properties": { + "CpuThreshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-cputhreshold", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "IgnoreMetricsTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-ignoremetricstime", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-instancecount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "LoadThreshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-loadthreshold", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "MemoryThreshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-memorythreshold", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "ThresholdsWaitTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-thresholdwaittime", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Datastore.CustomerManagedS3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html", + "Properties": { + "Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "KeyPrefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-datastore-customermanageds3.html#cfn-iotanalytics-datastore-customermanageds3-keyprefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.Schedule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger-schedule.html", + "Properties": { + "ScheduleExpression": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-trigger-schedule.html#cfn-iotanalytics-dataset-trigger-schedule-scheduleexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.S3ReferenceDataSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html", + "Properties": { + "BucketARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource-bucketarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FileKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-s3referencedatasource-filekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordColumn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html", + "Properties": { + "Mapping": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-mapping", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SqlType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-sqltype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-recordcolumn.html#cfn-kinesisanalytics-applicationreferencedatasource-recordcolumn-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Classifier.GrokClassifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html", + "Properties": { + "CustomPatterns": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html#cfn-glue-classifier-grokclassifier-custompatterns", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "GrokPattern": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html#cfn-glue-classifier-grokclassifier-grokpattern", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Classification": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html#cfn-glue-classifier-grokclassifier-classification", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-grokclassifier.html#cfn-glue-classifier-grokclassifier-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppSync::DataSource.HttpConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html", + "Properties": { + "Endpoint": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-endpoint", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthorizationConfig": { + "Type": "AuthorizationConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-authorizationconfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.RecordFormat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html", + "Properties": { + "MappingParameters": { + "Type": "MappingParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html#cfn-kinesisanalytics-application-recordformat-mappingparameters", + "UpdateType": "Mutable" + }, + "RecordFormatType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-recordformat.html#cfn-kinesisanalytics-application-recordformat-recordformattype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.TagFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html#cfn-s3-bucket-tagfilter-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html#cfn-s3-bucket-tagfilter-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline.DeviceRegistryEnrich": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html", + "Properties": { + "Attribute": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-attribute", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Next": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-next", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ThingName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-thingname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-pipeline-deviceregistryenrich.html#cfn-iotanalytics-pipeline-deviceregistryenrich-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::RemediationConfiguration.ExecutionControls": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-executioncontrols.html", + "Properties": { + "SsmControls": { + "Type": "SsmControls", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-remediationconfiguration-executioncontrols.html#cfn-config-remediationconfiguration-executioncontrols-ssmcontrols", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::SizeConstraintSet.SizeConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html", + "Properties": { + "ComparisonOperator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-comparisonoperator", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch", + "Required": true, + "Type": "FieldToMatch", + "UpdateType": "Mutable" + }, + "Size": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-size", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "TextTransformation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-texttransformation", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::GuardDuty::Filter.Condition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html", + "Properties": { + "Lt": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-lt", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Gte": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-gte", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Neq": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-neq", + "UpdateType": "Mutable" + }, + "Eq": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-eq", + "UpdateType": "Mutable" + }, + "Lte": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html#cfn-guardduty-filter-condition-lte", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.FilterGroup": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-filtergroup.html", + "ItemType": "WebhookFilter", + "UpdateType": "Mutable" + }, + "AWS::LakeFormation::DataLakeSettings.Admins": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-admins.html", + "ItemType": "DataLakePrincipal", + "UpdateType": "Mutable" + }, + "AWS::EC2::LaunchTemplate.Ipv6Add": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ipv6add.html", + "Properties": { + "Ipv6Address": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-ipv6add.html#cfn-ec2-launchtemplate-ipv6add-ipv6address", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.LicenseSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html", + "Properties": { + "LicenseConfigurationArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html#cfn-ec2-instance-licensespecification-licenseconfigurationarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.PredefinedScalingMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html", + "Properties": { + "ResourceLabel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedscalingmetricspecification-resourcelabel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PredefinedScalingMetricType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedscalingmetricspecification-predefinedscalingmetrictype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.Rule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html", + "Properties": { + "ScanEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html#cfn-ses-receiptrule-rule-scanenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Recipients": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html#cfn-ses-receiptrule-rule-recipients", + "UpdateType": "Mutable" + }, + "Actions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html#cfn-ses-receiptrule-rule-actions", + "ItemType": "Action", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html#cfn-ses-receiptrule-rule-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html#cfn-ses-receiptrule-rule-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TlsPolicy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-rule.html#cfn-ses-receiptrule-rule-tlspolicy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::Identity.MailFromAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html", + "Properties": { + "MailFromDomain": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html#cfn-pinpointemail-identity-mailfromattributes-mailfromdomain", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BehaviorOnMxFailure": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-identity-mailfromattributes.html#cfn-pinpointemail-identity-mailfromattributes-behavioronmxfailure", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Backup::BackupPlan.BackupPlanResourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html", + "Properties": { + "BackupPlanName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-backupplanname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BackupPlanRule": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupplan-backupplanresourcetype.html#cfn-backup-backupplan-backupplanresourcetype-backupplanrule", + "ItemType": "BackupRuleResourceType", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudTrail::Trail.DataResource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html", + "Properties": { + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html#cfn-cloudtrail-trail-dataresource-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-trail-dataresource.html#cfn-cloudtrail-trail-dataresource-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::ImageBuilder.DomainJoinInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html", + "Properties": { + "OrganizationalUnitDistinguishedName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-organizationalunitdistinguishedname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DirectoryName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-directoryname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.OutputDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html", + "Properties": { + "Id": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-id", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Settings": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-settings", + "ItemType": "OutputDestinationSettings", + "UpdateType": "Mutable" + }, + "MediaPackageSettings": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-outputdestination.html#cfn-medialive-channel-outputdestination-mediapackagesettings", + "ItemType": "MediaPackageOutputDestinationSettings", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.DynamoDBv2Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html", + "Properties": { + "PutItem": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-putitem", + "Required": false, + "Type": "PutItemInput", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-dynamodbv2action.html#cfn-iot-topicrule-dynamodbv2action-rolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::UsagePlan.ThrottleSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html", + "Properties": { + "BurstLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-burstlimit", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "RateLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-ratelimit", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Backup::BackupVault.NotificationObjectType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html", + "Properties": { + "SNSTopicArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html#cfn-backup-backupvault-notificationobjecttype-snstopicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BackupVaultEvents": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-backupvault-notificationobjecttype.html#cfn-backup-backupvault-notificationobjecttype-backupvaultevents", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.SqlApplicationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-sqlapplicationconfiguration.html", + "Properties": { + "Inputs": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-sqlapplicationconfiguration.html#cfn-kinesisanalyticsv2-application-sqlapplicationconfiguration-inputs", + "ItemType": "Input", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::GraphQLApi.CognitoUserPoolConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html", + "Properties": { + "AppIdClientRegex": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html#cfn-appsync-graphqlapi-cognitouserpoolconfig-appidclientregex", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UserPoolId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html#cfn-appsync-graphqlapi-cognitouserpoolconfig-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AwsRegion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html#cfn-appsync-graphqlapi-cognitouserpoolconfig-awsregion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::SecurityConfiguration.JobBookmarksEncryption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html", + "Properties": { + "KmsKeyArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html#cfn-glue-securityconfiguration-jobbookmarksencryption-kmskeyarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "JobBookmarksEncryptionMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-jobbookmarksencryption.html#cfn-glue-securityconfiguration-jobbookmarksencryption-jobbookmarksencryptionmode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Channel.RetentionPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html", + "Properties": { + "NumberOfDays": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html#cfn-iotanalytics-channel-retentionperiod-numberofdays", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Unlimited": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-retentionperiod.html#cfn-iotanalytics-channel-retentionperiod-unlimited", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Table.SerdeInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html", + "Properties": { + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html#cfn-glue-table-serdeinfo-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "SerializationLibrary": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html#cfn-glue-table-serdeinfo-serializationlibrary", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-serdeinfo.html#cfn-glue-table-serdeinfo-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::GraphQLApi.AdditionalAuthenticationProviders": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationproviders.html", + "ItemType": "AdditionalAuthenticationProvider", + "UpdateType": "Mutable" + }, + "AWS::KinesisAnalyticsV2::Application.InputProcessingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputprocessingconfiguration.html", + "Properties": { + "InputLambdaProcessor": { + "Type": "InputLambdaProcessor", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-inputprocessingconfiguration.html#cfn-kinesisanalyticsv2-application-inputprocessingconfiguration-inputlambdaprocessor", + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::Broker.ConfigurationId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html", + "Properties": { + "Revision": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html#cfn-amazonmq-broker-configurationid-revision", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html#cfn-amazonmq-broker-configurationid-id", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.SsmAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html", + "Properties": { + "AssociationParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-associationparameters", + "DuplicatesAllowed": true, + "ItemType": "AssociationParameter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "DocumentName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-documentname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::MSK::Cluster.EncryptionInTransit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html", + "Properties": { + "ClientBroker": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html#cfn-msk-cluster-encryptionintransit-clientbroker", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InCluster": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-encryptionintransit.html#cfn-msk-cluster-encryptionintransit-incluster", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + } + } + }, + "AWS::SSM::PatchBaseline.PatchSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html", + "Properties": { + "Products": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html#cfn-ssm-patchbaseline-patchsource-products", + "UpdateType": "Mutable" + }, + "Configuration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html#cfn-ssm-patchbaseline-patchsource-configuration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-patchbaseline-patchsource.html#cfn-ssm-patchbaseline-patchsource-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.CapacityReservationTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html", + "Properties": { + "CapacityReservationId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html#cfn-ec2-launchtemplate-capacityreservationtarget-capacityreservationid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.KinesisFirehoseInput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html#cfn-kinesisanalytics-application-kinesisfirehoseinput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-kinesisfirehoseinput.html#cfn-kinesisanalytics-application-kinesisfirehoseinput-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.ResourceInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html", + "Properties": { + "ResourceDataContainer": { + "Type": "ResourceDataContainer", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-resourcedatacontainer", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourceinstance.html#cfn-greengrass-resourcedefinition-resourceinstance-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.ApplicationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html", + "Properties": { + "ApplicationCodeConfiguration": { + "Type": "ApplicationCodeConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-applicationcodeconfiguration", + "UpdateType": "Mutable" + }, + "EnvironmentProperties": { + "Type": "EnvironmentProperties", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-environmentproperties", + "UpdateType": "Mutable" + }, + "FlinkApplicationConfiguration": { + "Type": "FlinkApplicationConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-flinkapplicationconfiguration", + "UpdateType": "Mutable" + }, + "SqlApplicationConfiguration": { + "Type": "SqlApplicationConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-sqlapplicationconfiguration", + "UpdateType": "Mutable" + }, + "ApplicationSnapshotConfiguration": { + "Type": "ApplicationSnapshotConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationconfiguration.html#cfn-kinesisanalyticsv2-application-applicationconfiguration-applicationsnapshotconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorksCM::Server.EngineAttribute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html#cfn-opsworkscm-server-engineattribute-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworkscm-server-engineattribute.html#cfn-opsworkscm-server-engineattribute-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition.Function": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html", + "Properties": { + "FunctionArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "FunctionConfiguration": { + "Type": "FunctionConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-functionconfiguration", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-function.html#cfn-greengrass-functiondefinition-function-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::Partition.SkewedInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html", + "Properties": { + "SkewedColumnNames": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html#cfn-glue-partition-skewedinfo-skewedcolumnnames", + "UpdateType": "Mutable" + }, + "SkewedColumnValues": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html#cfn-glue-partition-skewedinfo-skewedcolumnvalues", + "UpdateType": "Mutable" + }, + "SkewedColumnValueLocationMaps": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-partition-skewedinfo.html#cfn-glue-partition-skewedinfo-skewedcolumnvaluelocationmaps", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::ConfigRule.Source": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html", + "Properties": { + "Owner": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-owner", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SourceDetails": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-sourcedetails", + "DuplicatesAllowed": false, + "ItemType": "SourceDetail", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SourceIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-sourceidentifier", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::RestApi.S3Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html", + "Properties": { + "Bucket": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-bucket", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ETag": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-etag", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-key", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-version", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.Projection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html", + "Properties": { + "NonKeyAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html#cfn-dynamodb-projectionobj-nonkeyatt", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "ProjectionType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html#cfn-dynamodb-projectionobj-projtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.NetworkInterface": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PrivateIpAddress": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-privateipaddress", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PrivateIpAddresses": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-privateipaddresses", + "ItemType": "PrivateIpAdd", + "UpdateType": "Mutable" + }, + "SecondaryPrivateIpAddressCount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-secondaryprivateipaddresscount", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DeviceIndex": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-deviceindex", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "SubnetId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-subnetid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Ipv6Addresses": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-ipv6addresses", + "ItemType": "Ipv6Add", + "UpdateType": "Mutable" + }, + "AssociatePublicIpAddress": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-associatepublicipaddress", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "NetworkInterfaceId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-networkinterfaceid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InterfaceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-interfacetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Ipv6AddressCount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-ipv6addresscount", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Groups": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-groups", + "UpdateType": "Mutable" + }, + "DeleteOnTermination": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-deleteontermination", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.Message": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html", + "Properties": { + "JsonBody": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-jsonbody", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Action": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-action", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MediaUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-mediaurl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TimeToLive": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-timetolive", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ImageSmallIconUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-imagesmalliconurl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ImageUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-imageurl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Title": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-title", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ImageIconUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-imageiconurl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SilentPush": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-silentpush", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Body": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-body", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RawContent": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-rawcontent", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Url": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html#cfn-pinpoint-campaign-message-url", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::Listener.Certificate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html", + "Properties": { + "CertificateArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html#cfn-elasticloadbalancingv2-listener-certificates-certificatearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::Stack.StorageConnector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html", + "Properties": { + "Domains": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html#cfn-appstream-stack-storageconnector-domains", + "UpdateType": "Mutable" + }, + "ResourceIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html#cfn-appstream-stack-storageconnector-resourceidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ConnectorType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-storageconnector.html#cfn-appstream-stack-storageconnector-connectortype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.RedirectConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html", + "Properties": { + "Host": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-host", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-path", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-port", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-protocol", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Query": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-query", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StatusCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html#cfn-elasticloadbalancingv2-listenerrule-redirectconfig-statuscode", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment.SegmentGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html", + "Properties": { + "Groups": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html#cfn-pinpoint-segment-segmentgroups-groups", + "ItemType": "Groups", + "UpdateType": "Mutable" + }, + "Include": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-segment-segmentgroups.html#cfn-pinpoint-segment-segmentgroups-include", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.ApplicationCodeConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html", + "Properties": { + "CodeContentType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html#cfn-kinesisanalyticsv2-application-applicationcodeconfiguration-codecontenttype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CodeContent": { + "Type": "CodeContent", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-applicationcodeconfiguration.html#cfn-kinesisanalyticsv2-application-applicationcodeconfiguration-codecontent", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::XssMatchSet.FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Data": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-data", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.RetentionPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html", + "Properties": { + "NumberOfDays": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html#cfn-iotanalytics-dataset-retentionperiod-numberofdays", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Unlimited": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-retentionperiod.html#cfn-iotanalytics-dataset-retentionperiod-unlimited", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::ConfigurationAggregator.AccountAggregationSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html", + "Properties": { + "AllAwsRegions": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-allawsregions", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "AwsRegions": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-awsregions", + "UpdateType": "Mutable" + }, + "AccountIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationaggregator-accountaggregationsource.html#cfn-config-configurationaggregator-accountaggregationsource-accountids", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.HttpRouteAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html", + "Properties": { + "WeightedTargets": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html#cfn-appmesh-route-httprouteaction-weightedtargets", + "ItemType": "WeightedTarget", + "UpdateType": "Mutable" + } + } + }, + "AWS::Elasticsearch::Domain.ZoneAwarenessConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html", + "Properties": { + "AvailabilityZoneCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html#cfn-elasticsearch-domain-zoneawarenessconfig-availabilityzonecount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html", + "Properties": { + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-value", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::RecordSetGroup.GeoLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html", + "Properties": { + "ContinentCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordsetgroup-geolocation-continentcode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CountryCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-countrycode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SubdivisionCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-subdivisioncode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualRouter.VirtualRouterSpec": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterspec.html", + "Properties": { + "Listeners": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualrouter-virtualrouterspec.html#cfn-appmesh-virtualrouter-virtualrouterspec-listeners", + "ItemType": "VirtualRouterListener", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::RestApi.EndpointConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html", + "Properties": { + "Types": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-types", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.ScalingConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html", + "Properties": { + "MaxCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-maxcapacity", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "MinCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-mincapacity", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Layer.Recipes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html", + "Properties": { + "Configure": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-configure", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Deploy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-deploy", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Setup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-setup", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Shutdown": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-shutdown", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Undeploy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-undeploy", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Crawler.S3Target": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-s3target.html", + "Properties": { + "Path": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-s3target.html#cfn-glue-crawler-s3target-path", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Exclusions": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-s3target.html#cfn-glue-crawler-s3target-exclusions", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion.ResourceDataContainer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html", + "Properties": { + "SecretsManagerSecretResourceData": { + "Type": "SecretsManagerSecretResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-secretsmanagersecretresourcedata", + "UpdateType": "Immutable" + }, + "SageMakerMachineLearningModelResourceData": { + "Type": "SageMakerMachineLearningModelResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-sagemakermachinelearningmodelresourcedata", + "UpdateType": "Immutable" + }, + "LocalVolumeResourceData": { + "Type": "LocalVolumeResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localvolumeresourcedata", + "UpdateType": "Immutable" + }, + "LocalDeviceResourceData": { + "Type": "LocalDeviceResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-localdeviceresourcedata", + "UpdateType": "Immutable" + }, + "S3MachineLearningModelResourceData": { + "Type": "S3MachineLearningModelResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-resourcedatacontainer.html#cfn-greengrass-resourcedefinitionversion-resourcedatacontainer-s3machinelearningmodelresourcedata", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppStream::Fleet.VpcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-vpcconfig.html", + "Properties": { + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-vpcconfig.html#cfn-appstream-fleet-vpcconfig-subnetids", + "UpdateType": "Mutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-fleet-vpcconfig.html#cfn-appstream-fleet-vpcconfig-securitygroupids", + "UpdateType": "Mutable" + } + } + }, + "AWS::DLM::LifecyclePolicy.Parameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html", + "Properties": { + "ExcludeBootVolume": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html#cfn-dlm-lifecyclepolicy-parameters-excludebootvolume", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition.ResourceAccessPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html", + "Properties": { + "ResourceId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-resourceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Permission": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-resourceaccesspolicy.html#cfn-greengrass-functiondefinition-resourceaccesspolicy-permission", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::CloudWatch::Alarm.Dimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.ParquetSerDe": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html", + "Properties": { + "BlockSizeBytes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-blocksizebytes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Compression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-compression", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EnableDictionaryCompression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-enabledictionarycompression", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "MaxPaddingBytes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-maxpaddingbytes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "PageSizeBytes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-pagesizebytes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "WriterVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-parquetserde.html#cfn-kinesisfirehose-deliverystream-parquetserde-writerversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig.CloudWatchAlarmDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html", + "Properties": { + "ComparisonOperator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-comparisonoperator", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Dimensions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-dimensions", + "DuplicatesAllowed": false, + "ItemType": "MetricDimension", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EvaluationPeriods": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-evaluationperiods", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-metricname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-namespace", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Period": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-period", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "Statistic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-statistic", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Threshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-threshold", + "PrimitiveType": "Double", + "Required": true, + "UpdateType": "Mutable" + }, + "Unit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-unit", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.Transition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html", + "Properties": { + "StorageClass": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-storageclass", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TransitionDate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-transitiondate", + "PrimitiveType": "Timestamp", + "Required": false, + "UpdateType": "Mutable" + }, + "TransitionInDays": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-transitionindays", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.InstanceIpv6Address": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html", + "Properties": { + "Ipv6Address": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html#cfn-ec2-spotfleet-instanceipv6address-ipv6address", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.EbsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html", + "Properties": { + "EbsBlockDeviceConfigs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsblockdeviceconfigs", + "DuplicatesAllowed": false, + "ItemType": "EbsBlockDeviceConfig", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EbsOptimized": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html#cfn-elasticmapreduce-cluster-ebsconfiguration-ebsoptimized", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion.GroupOwnerSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html", + "Properties": { + "AutoAddGroupOwner": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-autoaddgroupowner", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "GroupOwner": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-groupownersetting.html#cfn-greengrass-resourcedefinitionversion-groupownersetting-groupowner", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Cognito::UserPoolDomain.CustomDomainConfigType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html", + "Properties": { + "CertificateArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html#cfn-cognito-userpooldomain-customdomainconfigtype-certificatearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.DataExport": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html", + "Properties": { + "Destination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-destination", + "Required": true, + "Type": "Destination", + "UpdateType": "Mutable" + }, + "OutputSchemaVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-outputschemaversion", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.CustomErrorResponse": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html", + "Properties": { + "ResponseCode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-responsecode", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ErrorCachingMinTTL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-errorcachingminttl", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "ErrorCode": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-errorcode", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ResponsePagePath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-responsepagepath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.LambdaAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-lambdaaction.html", + "Properties": { + "FunctionArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-lambdaaction.html#cfn-ses-receiptrule-lambdaaction-functionarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TopicArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-lambdaaction.html#cfn-ses-receiptrule-lambdaaction-topicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InvocationType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-lambdaaction.html#cfn-ses-receiptrule-lambdaaction-invocationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.HealthCheck": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html", + "Properties": { + "Command": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-command", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Immutable" + }, + "Interval": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-interval", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Retries": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-retries", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "StartPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-startperiod", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Timeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-timeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.InstancesDistribution": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html", + "Properties": { + "OnDemandAllocationStrategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandallocationstrategy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "OnDemandBaseCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandbasecapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "OnDemandPercentageAboveBaseCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandpercentageabovebasecapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SpotAllocationStrategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotallocationstrategy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SpotInstancePools": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotinstancepools", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SpotMaxPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotmaxprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.CampaignEventFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html", + "Properties": { + "FilterType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html#cfn-pinpoint-campaign-campaigneventfilter-filtertype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Dimensions": { + "Type": "EventDimensions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html#cfn-pinpoint-campaign-campaigneventfilter-dimensions", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::LoadBalancer.SubnetMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html", + "Properties": { + "AllocationId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-allocationid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-subnetmapping.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmapping-subnetid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.TargetGroupsConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroupsconfig.html", + "Properties": { + "TargetGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-targetgroupsconfig.html#cfn-ec2-spotfleet-targetgroupsconfig-targetgroups", + "DuplicatesAllowed": false, + "ItemType": "TargetGroup", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::NotebookInstanceLifecycleConfig.NotebookInstanceLifecycleHook": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook.html", + "Properties": { + "Content": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook.html#cfn-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecyclehook-content", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::Stage.AccessLogSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html", + "Properties": { + "Format": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html#cfn-apigatewayv2-stage-accesslogsettings-format", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DestinationArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-accesslogsettings.html#cfn-apigatewayv2-stage-accesslogsettings-destinationarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.AccessLog": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html", + "Properties": { + "File": { + "Type": "FileAccessLog", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html#cfn-appmesh-virtualnode-accesslog-file", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.InputParallelism": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputparallelism.html", + "Properties": { + "Count": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputparallelism.html#cfn-kinesisanalytics-application-inputparallelism-count", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::CapacityReservation.TagSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html", + "Properties": { + "ResourceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html#cfn-ec2-capacityreservation-tagspecification-resourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-tagspecification.html#cfn-ec2-capacityreservation-tagspecification-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::LaunchTemplate.CpuOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-cpuoptions.html", + "Properties": { + "ThreadsPerCore": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-cpuoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-cpuoptions-threadspercore", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "CoreCount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata-cpuoptions.html#cfn-ec2-launchtemplate-launchtemplatedata-cpuoptions-corecount", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.PortMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html", + "Properties": { + "ContainerPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-containerport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "HostPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-readonly", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-sourcevolume", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::WAFRegional::SizeConstraintSet.FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Data": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-data", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.ElasticInferenceAccelerator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html", + "Properties": { + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html#cfn-ec2-instance-elasticinferenceaccelerator-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.VirtualNodeSpec": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html", + "Properties": { + "Logging": { + "Type": "Logging", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-logging", + "UpdateType": "Mutable" + }, + "Backends": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-backends", + "ItemType": "Backend", + "UpdateType": "Mutable" + }, + "Listeners": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-listeners", + "ItemType": "Listener", + "UpdateType": "Mutable" + }, + "ServiceDiscovery": { + "Type": "ServiceDiscovery", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html#cfn-appmesh-virtualnode-virtualnodespec-servicediscovery", + "UpdateType": "Mutable" + } + } + }, + "AWS::Transfer::Server.EndpointDetails": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html", + "Properties": { + "VpcEndpointId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-endpointdetails.html#cfn-transfer-server-endpointdetails-vpcendpointid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.CloudwatchAlarmAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html", + "Properties": { + "AlarmName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-alarmname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StateReason": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-statereason", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StateValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchalarmaction.html#cfn-iot-topicrule-cloudwatchalarmaction-statevalue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.Ulimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html", + "Properties": { + "HardLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-hardlimit", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SoftLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-softlimit", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalytics::Application.InputProcessingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputprocessingconfiguration.html", + "Properties": { + "InputLambdaProcessor": { + "Type": "InputLambdaProcessor", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputprocessingconfiguration.html#cfn-kinesisanalytics-application-inputprocessingconfiguration-inputlambdaprocessor", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Function.Environment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html", + "Properties": { + "Variables": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html#cfn-lambda-function-environment-variables", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningPreferences": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html", + "Properties": { + "StackSetAccounts": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetaccounts", + "UpdateType": "Mutable" + }, + "StackSetFailureToleranceCount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetfailuretolerancecount", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "StackSetMaxConcurrencyPercentage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetmaxconcurrencypercentage", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "StackSetMaxConcurrencyCount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetmaxconcurrencycount", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "StackSetRegions": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetregions", + "UpdateType": "Mutable" + }, + "StackSetOperationType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetoperationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StackSetFailureTolerancePercentage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences-stacksetfailuretolerancepercentage", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.Serializer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html", + "Properties": { + "OrcSerDe": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html#cfn-kinesisfirehose-deliverystream-serializer-orcserde", + "Required": false, + "Type": "OrcSerDe", + "UpdateType": "Mutable" + }, + "ParquetSerDe": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-serializer.html#cfn-kinesisfirehose-deliverystream-serializer-parquetserde", + "Required": false, + "Type": "ParquetSerDe", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.GroupIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html", + "Properties": { + "GroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html#cfn-ec2-spotfleet-groupidentifier-groupid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.ScalingRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html", + "Properties": { + "Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-action", + "Required": true, + "Type": "ScalingAction", + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Trigger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-trigger", + "Required": true, + "Type": "ScalingTrigger", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::StreamingDistribution.Logging": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html", + "Properties": { + "Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Prefix": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-prefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTarget.Targets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html", + "Properties": { + "Values": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html#cfn-ssm-maintenancewindowtarget-targets-values", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtarget-targets.html#cfn-ssm-maintenancewindowtarget-targets-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Classifier.JsonClassifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html", + "Properties": { + "JsonPath": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html#cfn-glue-classifier-jsonclassifier-jsonpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-classifier-jsonclassifier.html#cfn-glue-classifier-jsonclassifier-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::SES::ConfigurationSetEventDestination.KinesisFirehoseDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html", + "Properties": { + "IAMRoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html#cfn-ses-configurationseteventdestination-kinesisfirehosedestination-iamrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DeliveryStreamARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationseteventdestination-kinesisfirehosedestination.html#cfn-ses-configurationseteventdestination-kinesisfirehosedestination-deliverystreamarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.Listener": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html", + "Properties": { + "HealthCheck": { + "Type": "HealthCheck", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-healthcheck", + "UpdateType": "Mutable" + }, + "PortMapping": { + "Type": "PortMapping", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-portmapping", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.CopyCommand": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html", + "Properties": { + "CopyOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-copyoptions", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DataTableColumns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-datatablecolumns", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DataTableName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-copycommand.html#cfn-kinesisfirehose-deliverystream-copycommand-datatablename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::DataPipeline::Pipeline.ParameterValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html", + "Properties": { + "Id": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html#cfn-datapipeline-pipeline-parametervalues-id", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StringValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html#cfn-datapipeline-pipeline-parametervalues-stringvalue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.ProjectTriggers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html", + "Properties": { + "FilterGroups": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-filtergroups", + "ItemType": "FilterGroup", + "UpdateType": "Mutable" + }, + "Webhook": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html#cfn-codebuild-project-projecttriggers-webhook", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.CampaignSmsMessage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html", + "Properties": { + "SenderId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-senderid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Body": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-body", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MessageType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-messagetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution.Logging": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html", + "Properties": { + "IncludeCookies": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-includecookies", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Prefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-prefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualService.VirtualServiceProvider": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html", + "Properties": { + "VirtualNode": { + "Type": "VirtualNodeServiceProvider", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html#cfn-appmesh-virtualservice-virtualserviceprovider-virtualnode", + "UpdateType": "Mutable" + }, + "VirtualRouter": { + "Type": "VirtualRouterServiceProvider", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualservice-virtualserviceprovider.html#cfn-appmesh-virtualservice-virtualserviceprovider-virtualrouter", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::IdentityPoolRoleAttachment.RulesConfigurationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rulesconfigurationtype.html", + "Properties": { + "Rules": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rulesconfigurationtype.html#cfn-cognito-identitypoolroleattachment-rulesconfigurationtype-rules", + "ItemType": "MappingRule", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::GraphQLApi.AdditionalAuthenticationProvider": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html", + "Properties": { + "OpenIDConnectConfig": { + "Type": "OpenIDConnectConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-openidconnectconfig", + "UpdateType": "Mutable" + }, + "UserPoolConfig": { + "Type": "CognitoUserPoolConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-userpoolconfig", + "UpdateType": "Mutable" + }, + "AuthenticationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-authenticationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Job.NotificationProperty": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-notificationproperty.html", + "Properties": { + "NotifyDelayAfter": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-notificationproperty.html#cfn-glue-job-notificationproperty-notifydelayafter", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Job.ExecutionProperty": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-executionproperty.html", + "Properties": { + "MaxConcurrentRuns": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-job-executionproperty.html#cfn-glue-job-executionproperty-maxconcurrentruns", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.LinuxParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html", + "Properties": { + "Capabilities": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-capabilities", + "Required": false, + "Type": "KernelCapabilities", + "UpdateType": "Immutable" + }, + "Devices": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-devices", + "DuplicatesAllowed": false, + "ItemType": "Device", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "InitProcessEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-initprocessenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "SharedMemorySize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-sharedmemorysize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Tmpfs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html#cfn-ecs-taskdefinition-linuxparameters-tmpfs", + "DuplicatesAllowed": false, + "ItemType": "Tmpfs", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule.HostHeaderConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html", + "Properties": { + "Values": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html#cfn-elasticloadbalancingv2-listenerrule-hostheaderconfig-values", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Dataset.S3DestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html", + "Properties": { + "GlueConfiguration": { + "Type": "GlueConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-glueconfiguration", + "UpdateType": "Mutable" + }, + "Bucket": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-bucket", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-s3destinationconfiguration.html#cfn-iotanalytics-dataset-s3destinationconfiguration-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::Stack.UserSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html", + "Properties": { + "Action": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html#cfn-appstream-stack-usersetting-action", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Permission": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-stack-usersetting.html#cfn-appstream-stack-usersetting-permission", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::ConfigurationAssociation.ConfigurationId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html", + "Properties": { + "Revision": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html#cfn-amazonmq-configurationassociation-configurationid-revision", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-configurationassociation-configurationid.html#cfn-amazonmq-configurationassociation-configurationid-id", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.CampaignEmailMessage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html", + "Properties": { + "FromAddress": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-fromaddress", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HtmlBody": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-htmlbody", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Title": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-title", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Body": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-body", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceDiscovery::Service.HealthCheckConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResourcePath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-resourcepath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FailureThreshold": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicediscovery-service-healthcheckconfig.html#cfn-servicediscovery-service-healthcheckconfig-failurethreshold", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.OpenXJsonSerDe": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html", + "Properties": { + "CaseInsensitive": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html#cfn-kinesisfirehose-deliverystream-openxjsonserde-caseinsensitive", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "ColumnToJsonKeyMappings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html#cfn-kinesisfirehose-deliverystream-openxjsonserde-columntojsonkeymappings", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "ConvertDotsInJsonKeysToUnderscores": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-openxjsonserde.html#cfn-kinesisfirehose-deliverystream-openxjsonserde-convertdotsinjsonkeystounderscores", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.DeviceConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html", + "Properties": { + "DeviceOnlyRememberedOnUserPrompt": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-deviceonlyrememberedonuserprompt", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ChallengeRequiredOnNewDevice": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-challengerequiredonnewdevice", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel.CaptionSelector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html", + "Properties": { + "LanguageCode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-languagecode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SelectorSettings": { + "Type": "CaptionSelectorSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-selectorsettings", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-captionselector.html#cfn-medialive-channel-captionselector-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualNode.DnsServiceDiscovery": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html", + "Properties": { + "Hostname": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html#cfn-appmesh-virtualnode-dnsservicediscovery-hostname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::SecurityConfiguration.S3Encryptions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-securityconfiguration-s3encryptions.html", + "ItemType": "S3Encryption", + "UpdateType": "Mutable" + }, + "AWS::Pinpoint::ApplicationSettings.QuietTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html", + "Properties": { + "Start": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html#cfn-pinpoint-applicationsettings-quiettime-start", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "End": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-applicationsettings-quiettime.html#cfn-pinpoint-applicationsettings-quiettime-end", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.ContainerDependency": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html", + "Properties": { + "Condition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-condition", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ContainerName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-containername", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Kinesis::Stream.StreamEncryption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html", + "Properties": { + "EncryptionType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-encryptiontype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "KeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-keyid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingScalingPolicyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html", + "Properties": { + "CustomizedMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-customizedmetricspecification", + "Required": false, + "Type": "CustomizedMetricSpecification", + "UpdateType": "Mutable" + }, + "DisableScaleIn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-disablescalein", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "PredefinedMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-predefinedmetricspecification", + "Required": false, + "Type": "PredefinedMetricSpecification", + "UpdateType": "Mutable" + }, + "ScaleInCooldown": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-scaleincooldown", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ScaleOutCooldown": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-scaleoutcooldown", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "TargetValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration-targetvalue", + "PrimitiveType": "Double", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.S3DestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html", + "Properties": { + "BucketARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-bucketarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "BufferingHints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-bufferinghints", + "Required": true, + "Type": "BufferingHints", + "UpdateType": "Mutable" + }, + "CloudWatchLoggingOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-cloudwatchloggingoptions", + "Required": false, + "Type": "CloudWatchLoggingOptions", + "UpdateType": "Mutable" + }, + "CompressionFormat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-compressionformat", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "EncryptionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-encryptionconfiguration", + "Required": false, + "Type": "EncryptionConfiguration", + "UpdateType": "Mutable" + }, + "ErrorOutputPrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-erroroutputprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Prefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-prefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::StreamingDistribution.StreamingDistributionConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html", + "Properties": { + "Logging": { + "Type": "Logging", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-logging", + "UpdateType": "Mutable" + }, + "Comment": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-comment", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PriceClass": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-priceclass", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3Origin": { + "Type": "S3Origin", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-s3origin", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Aliases": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-aliases", + "UpdateType": "Mutable" + }, + "TrustedSigners": { + "Type": "TrustedSigners", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-trustedsigners", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.InstanceTypeConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html", + "Properties": { + "BidPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-bidprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "BidPriceAsPercentageOfOnDemandPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-bidpriceaspercentageofondemandprice", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Immutable" + }, + "Configurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-configurations", + "DuplicatesAllowed": false, + "ItemType": "Configuration", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EbsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-ebsconfiguration", + "Required": false, + "Type": "EbsConfiguration", + "UpdateType": "Immutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "WeightedCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html#cfn-elasticmapreduce-cluster-instancetypeconfig-weightedcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::SecretsManager::Secret.GenerateSecretString": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html", + "Properties": { + "ExcludeUppercase": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludeuppercase", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "RequireEachIncludedType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-requireeachincludedtype", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "IncludeSpace": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-includespace", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ExcludeCharacters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludecharacters", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "GenerateStringKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-generatestringkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PasswordLength": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-passwordlength", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ExcludePunctuation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludepunctuation", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ExcludeLowercase": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludelowercase", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "SecretStringTemplate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-secretstringtemplate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ExcludeNumbers": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-secret-generatesecretstring.html#cfn-secretsmanager-secret-generatesecretstring-excludenumbers", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition.ResourceDataContainer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html", + "Properties": { + "SecretsManagerSecretResourceData": { + "Type": "SecretsManagerSecretResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-secretsmanagersecretresourcedata", + "UpdateType": "Immutable" + }, + "SageMakerMachineLearningModelResourceData": { + "Type": "SageMakerMachineLearningModelResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-sagemakermachinelearningmodelresourcedata", + "UpdateType": "Immutable" + }, + "LocalVolumeResourceData": { + "Type": "LocalVolumeResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localvolumeresourcedata", + "UpdateType": "Immutable" + }, + "LocalDeviceResourceData": { + "Type": "LocalDeviceResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localdeviceresourcedata", + "UpdateType": "Immutable" + }, + "S3MachineLearningModelResourceData": { + "Type": "S3MachineLearningModelResourceData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-s3machinelearningmodelresourcedata", + "UpdateType": "Immutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.LaunchTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html", + "Properties": { + "LaunchTemplateSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html#cfn-as-group-launchtemplate", + "Required": true, + "Type": "LaunchTemplateSpecification", + "UpdateType": "Mutable" + }, + "Overrides": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-as-mixedinstancespolicy-launchtemplate.html#cfn-as-mixedinstancespolicy-overrides", + "DuplicatesAllowed": false, + "ItemType": "LaunchTemplateOverrides", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::MSK::Cluster.ClientAuthentication": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html", + "Properties": { + "Tls": { + "Type": "Tls", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-clientauthentication.html#cfn-msk-cluster-clientauthentication-tls", + "UpdateType": "Immutable" + } + } + }, + "AWS::SageMaker::Model.ContainerDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html", + "Properties": { + "ContainerHostname": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-containerhostname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Environment": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-environment", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "ModelDataUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-modeldataurl", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Image": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-image", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::DataCatalogEncryptionSettings.ConnectionPasswordEncryption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html", + "Properties": { + "ReturnConnectionPasswordEncrypted": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html#cfn-glue-datacatalogencryptionsettings-connectionpasswordencryption-returnconnectionpasswordencrypted", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-datacatalogencryptionsettings-connectionpasswordencryption.html#cfn-glue-datacatalogencryptionsettings-connectionpasswordencryption-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::HealthCheck.HealthCheckTag": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html#cfn-route53-healthchecktags-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktag.html#cfn-route53-healthchecktags-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.EnvironmentVariable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html", + "Properties": { + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask.MaintenanceWindowStepFunctionsParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html", + "Properties": { + "Input": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters-input", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters.html#cfn-ssm-maintenancewindowtask-maintenancewindowstepfunctionsparameters-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT1Click::Project.PlacementTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html", + "Properties": { + "DeviceTemplates": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html#cfn-iot1click-project-placementtemplate-devicetemplates", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "DefaultAttributes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot1click-project-placementtemplate.html#cfn-iot1click-project-placementtemplate-defaultattributes", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Member.MemberFabricConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html", + "Properties": { + "AdminUsername": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html#cfn-managedblockchain-member-memberfabricconfiguration-adminusername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AdminPassword": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-managedblockchain-member-memberfabricconfiguration.html#cfn-managedblockchain-member-memberfabricconfiguration-adminpassword", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool.InviteMessageTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html", + "Properties": { + "EmailMessage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-emailmessage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SMSMessage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-smsmessage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EmailSubject": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-emailsubject", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.MetricDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html#cfn-elasticmapreduce-cluster-metricdimension-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html#cfn-elasticmapreduce-cluster-metricdimension-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.ProxyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html", + "Properties": { + "ContainerName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-containername", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ProxyConfigurationProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-proxyconfigurationproperties", + "DuplicatesAllowed": false, + "ItemType": "KeyValuePair", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html#cfn-ecs-taskdefinition-proxyconfiguration-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticBeanstalk::Application.MaxCountRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html", + "Properties": { + "DeleteSourceFromS3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-deletesourcefroms3", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "MaxCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-application-maxcountrule.html#cfn-elasticbeanstalk-application-maxcountrule-maxcount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup.TagProperty": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "PropagateAtLaunch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-PropagateAtLaunch", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline.ActionTypeId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html", + "Properties": { + "Category": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-category", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Owner": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-owner", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Provider": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-provider", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-version", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket.FilterRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceSchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html", + "Properties": { + "RecordEncoding": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordencoding", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecordColumns": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordcolumns", + "ItemType": "RecordColumn", + "UpdateType": "Mutable" + }, + "RecordFormat": { + "Type": "RecordFormat", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalytics-applicationreferencedatasource-referenceschema-recordformat", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ConnectorDefinition.Connector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html", + "Properties": { + "ConnectorArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-connectorarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-parameters", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinition-connector.html#cfn-greengrass-connectordefinition-connector-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::PinpointEmail::DedicatedIpPool.Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html", + "Properties": { + "Value": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html#cfn-pinpointemail-dedicatedippool-tags-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpointemail-dedicatedippool-tags.html#cfn-pinpointemail-dedicatedippool-tags-key", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::HostedZone.VPC": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone-hostedzonevpcs.html", + "Properties": { + "VPCId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone-hostedzonevpcs.html#cfn-route53-hostedzone-hostedzonevpcs-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "VPCRegion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone-hostedzonevpcs.html#cfn-route53-hostedzone-hostedzonevpcs-vpcregion", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinitionVersion.ResourceAccessPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html", + "Properties": { + "ResourceId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-resourceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Permission": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinitionversion-resourceaccesspolicy.html#cfn-greengrass-functiondefinitionversion-resourceaccesspolicy-permission", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "Tag": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-value", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::Thing.AttributePayload": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html", + "Properties": { + "Attributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html#cfn-iot-thing-attributepayload-attributes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion.SecretsManagerSecretResourceData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html", + "Properties": { + "ARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-arn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AdditionalStagingLabelsToDownload": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata.html#cfn-greengrass-resourcedefinitionversion-secretsmanagersecretresourcedata-additionalstaginglabelstodownload", + "UpdateType": "Immutable" + } + } + }, + "AWS::Events::Rule.EcsParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html", + "Properties": { + "Group": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-group", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LaunchType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-launchtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NetworkConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-networkconfiguration", + "Required": false, + "Type": "NetworkConfiguration", + "UpdateType": "Mutable" + }, + "PlatformVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-platformversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TaskCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-taskcount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "TaskDefinitionArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-ecsparameters.html#cfn-events-rule-ecsparameters-taskdefinitionarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Budgets::Budget.TimePeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html", + "Properties": { + "Start": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html#cfn-budgets-budget-timeperiod-start", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "End": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html#cfn-budgets-budget-timeperiod-end", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::UsagePlan.QuotaSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html", + "Properties": { + "Limit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-limit", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Offset": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-offset", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Period": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-period", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::LoggerDefinition.LoggerDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html", + "Properties": { + "Loggers": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-loggerdefinition-loggerdefinitionversion.html#cfn-greengrass-loggerdefinition-loggerdefinitionversion-loggers", + "ItemType": "Logger", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::Instance.BlockDeviceMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html", + "Properties": { + "DeviceName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-devicename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Ebs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-ebs", + "Required": false, + "Type": "Ebs", + "UpdateType": "Mutable" + }, + "NoDevice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-nodevice", + "Required": false, + "Type": "NoDevice", + "UpdateType": "Mutable" + }, + "VirtualName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-virtualname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::DataPipeline::Pipeline.Field": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html", + "Properties": { + "Key": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html#cfn-datapipeline-pipeline-pipelineobjects-fields-key", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RefValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html#cfn-datapipeline-pipeline-pipelineobjects-fields-refvalue", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StringValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html#cfn-datapipeline-pipeline-pipelineobjects-fields-stringvalue", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::GeoMatchSet.GeoMatchConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html#cfn-wafregional-geomatchset-geomatchconstraint-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-geomatchset-geomatchconstraint.html#cfn-wafregional-geomatchset-geomatchconstraint-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::JobDefinition.Device": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html", + "Properties": { + "HostPath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html#cfn-batch-jobdefinition-device-hostpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Permissions": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html#cfn-batch-jobdefinition-device-permissions", + "UpdateType": "Mutable" + }, + "ContainerPath": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html#cfn-batch-jobdefinition-device-containerpath", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.HttpRoute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html", + "Properties": { + "Action": { + "Type": "HttpRouteAction", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-action", + "UpdateType": "Mutable" + }, + "RetryPolicy": { + "Type": "HttpRetryPolicy", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-retrypolicy", + "UpdateType": "Mutable" + }, + "Match": { + "Type": "HttpRouteMatch", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-match", + "UpdateType": "Mutable" + } + } + }, + "AWS::EKS::Cluster.ResourcesVpcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html", + "Properties": { + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-securitygroupids", + "UpdateType": "Mutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-subnetids", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceDataSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html", + "Properties": { + "ReferenceSchema": { + "Type": "ReferenceSchema", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-referenceschema", + "UpdateType": "Mutable" + }, + "TableName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-tablename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "S3ReferenceDataSource": { + "Type": "S3ReferenceDataSource", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationreferencedatasource-referencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource-s3referencedatasource", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html", + "Properties": { + "IotEvents": { + "Type": "IotEvents", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iotevents", + "UpdateType": "Mutable" + }, + "ResetTimer": { + "Type": "ResetTimer", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-resettimer", + "UpdateType": "Mutable" + }, + "Sqs": { + "Type": "Sqs", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-sqs", + "UpdateType": "Mutable" + }, + "Firehose": { + "Type": "Firehose", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-firehose", + "UpdateType": "Mutable" + }, + "Sns": { + "Type": "Sns", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-sns", + "UpdateType": "Mutable" + }, + "IotTopicPublish": { + "Type": "IotTopicPublish", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-iottopicpublish", + "UpdateType": "Mutable" + }, + "SetTimer": { + "Type": "SetTimer", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-settimer", + "UpdateType": "Mutable" + }, + "ClearTimer": { + "Type": "ClearTimer", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-cleartimer", + "UpdateType": "Mutable" + }, + "Lambda": { + "Type": "Lambda", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-lambda", + "UpdateType": "Mutable" + }, + "SetVariable": { + "Type": "SetVariable", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-action.html#cfn-iotevents-detectormodel-action-setvariable", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application.EnvironmentProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-environmentproperties.html", + "Properties": { + "PropertyGroups": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-application-environmentproperties.html#cfn-kinesisanalyticsv2-application-environmentproperties-propertygroups", + "ItemType": "PropertyGroup", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::Input.InputDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-inputdefinition.html", + "Properties": { + "Attributes": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-input-inputdefinition.html#cfn-iotevents-input-inputdefinition-attributes", + "ItemType": "Attribute", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule.CloudwatchMetricAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html", + "Properties": { + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MetricNamespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricnamespace", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MetricTimestamp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metrictimestamp", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricUnit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricunit", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MetricValue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-metricvalue", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-cloudwatchmetricaction.html#cfn-iot-topicrule-cloudwatchmetricaction-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceSchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html", + "Properties": { + "RecordEncoding": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordencoding", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecordColumns": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordcolumns", + "ItemType": "RecordColumn", + "UpdateType": "Mutable" + }, + "RecordFormat": { + "Type": "RecordFormat", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-referenceschema.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referenceschema-recordformat", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::SubscriptionDefinitionVersion.Subscription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html", + "Properties": { + "Target": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-target", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Source": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-source", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Subject": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-subscriptiondefinitionversion-subscription.html#cfn-greengrass-subscriptiondefinitionversion-subscription-subject", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppMesh::Route.MatchRange": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html", + "Properties": { + "Start": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-start", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "End": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-end", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign.WriteTreatmentResource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html", + "Properties": { + "TreatmentDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-treatmentdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MessageConfiguration": { + "Type": "MessageConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-messageconfiguration", + "UpdateType": "Mutable" + }, + "Schedule": { + "Type": "Schedule", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-schedule", + "UpdateType": "Mutable" + }, + "SizePercent": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-sizepercent", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TreatmentName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html#cfn-pinpoint-campaign-writetreatmentresource-treatmentname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::Application.InputLambdaProcessor": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html#cfn-kinesisanalytics-application-inputlambdaprocessor-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-application-inputlambdaprocessor.html#cfn-kinesisanalytics-application-inputlambdaprocessor-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet.BlockDeviceMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html", + "Properties": { + "DeviceName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-devicename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Ebs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-ebs", + "Required": false, + "Type": "EbsBlockDevice", + "UpdateType": "Mutable" + }, + "NoDevice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-nodevice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VirtualName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-virtualname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::SqlInjectionMatchSet.FieldToMatch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Data": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-data", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel.Lambda": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html", + "Properties": { + "FunctionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-detectormodel-lambda.html#cfn-iotevents-detectormodel-lambda-functionarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::RateBasedRule.Predicate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html#cfn-wafregional-ratebasedrule-predicate-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DataId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html#cfn-wafregional-ratebasedrule-predicate-dataid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Negated": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ratebasedrule-predicate.html#cfn-wafregional-ratebasedrule-predicate-negated", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationOutput.LambdaOutput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html", + "Properties": { + "ResourceARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html#cfn-kinesisanalytics-applicationoutput-lambdaoutput-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalytics-applicationoutput-lambdaoutput.html#cfn-kinesisanalytics-applicationoutput-lambdaoutput-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule.AddHeaderAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html", + "Properties": { + "HeaderValue": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html#cfn-ses-receiptrule-addheaderaction-headervalue", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HeaderName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptrule-addheaderaction.html#cfn-ses-receiptrule-addheaderaction-headername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Events": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-autorollbackconfiguration.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration-events", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudWatch::Alarm.Metric": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html", + "Properties": { + "Dimensions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html#cfn-cloudwatch-alarm-metric-dimensions", + "DuplicatesAllowed": true, + "ItemType": "Dimension", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html#cfn-cloudwatch-alarm-metric-metricname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metric.html#cfn-cloudwatch-alarm-metric-namespace", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceFleetConfig.InstanceFleetProvisioningSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html", + "Properties": { + "SpotSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications.html#cfn-elasticmapreduce-instancefleetconfig-instancefleetprovisioningspecifications-spotspecification", + "Required": true, + "Type": "SpotProvisioningSpecification", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan.PredefinedLoadMetricSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html", + "Properties": { + "PredefinedLoadMetricType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedloadmetricspecification-predefinedloadmetrictype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResourceLabel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html#cfn-autoscalingplans-scalingplan-predefinedloadmetricspecification-resourcelabel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer.Policies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html", + "Properties": { + "Attributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-attributes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "Json", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "InstancePorts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-instanceports", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "LoadBalancerPorts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-loadbalancerports", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-policyname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "PolicyType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-policytype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::Rule.AwsVpcConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html", + "Properties": { + "AssignPublicIp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html#cfn-events-rule-awsvpcconfiguration-assignpublicip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html#cfn-events-rule-awsvpcconfiguration-securitygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Subnets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html#cfn-events-rule-awsvpcconfiguration-subnets", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::Stage.RouteSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html", + "Properties": { + "LoggingLevel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-logginglevel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DataTraceEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-datatraceenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ThrottlingBurstLimit": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-throttlingburstlimit", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DetailedMetricsEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-detailedmetricsenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ThrottlingRateLimit": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html#cfn-apigatewayv2-stage-routesettings-throttlingratelimit", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Stack.ElasticIp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html", + "Properties": { + "Ip": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html#cfn-opsworks-stack-elasticip-ip", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html#cfn-opsworks-stack-elasticip-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::DBCluster.DBClusterRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-dbclusterrole.html", + "Properties": { + "FeatureName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-dbclusterrole.html#cfn-rds-dbcluster-dbclusterrole-featurename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-dbclusterrole.html#cfn-rds-dbcluster-dbclusterrole-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Status": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-dbclusterrole.html#cfn-rds-dbcluster-dbclusterrole-status", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.AutoScalingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html", + "Properties": { + "Constraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-constraints", + "Required": true, + "Type": "ScalingConstraints", + "UpdateType": "Mutable" + }, + "Rules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-rules", + "DuplicatesAllowed": false, + "ItemType": "ScalingRule", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table.StreamSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html", + "Properties": { + "StreamViewType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html#cfn-dynamodb-streamspecification-streamviewtype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.ExtendedS3DestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html", + "Properties": { + "BucketARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-bucketarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "BufferingHints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-bufferinghints", + "Required": true, + "Type": "BufferingHints", + "UpdateType": "Mutable" + }, + "CloudWatchLoggingOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-cloudwatchloggingoptions", + "Required": false, + "Type": "CloudWatchLoggingOptions", + "UpdateType": "Mutable" + }, + "CompressionFormat": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-compressionformat", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "DataFormatConversionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-dataformatconversionconfiguration", + "Required": false, + "Type": "DataFormatConversionConfiguration", + "UpdateType": "Mutable" + }, + "EncryptionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-encryptionconfiguration", + "Required": false, + "Type": "EncryptionConfiguration", + "UpdateType": "Mutable" + }, + "ErrorOutputPrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-erroroutputprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Prefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-prefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ProcessingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-processingconfiguration", + "Required": false, + "Type": "ProcessingConfiguration", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3BackupConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-s3backupconfiguration", + "Required": false, + "Type": "S3DestinationConfiguration", + "UpdateType": "Mutable" + }, + "S3BackupMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-extendeds3destinationconfiguration.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration-s3backupmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project.Source": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ReportBuildStatus": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-reportbuildstatus", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Auth": { + "Type": "SourceAuth", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-auth", + "UpdateType": "Mutable" + }, + "SourceIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-sourceidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BuildSpec": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-buildspec", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "GitCloneDepth": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-gitclonedepth", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "GitSubmodulesConfig": { + "Type": "GitSubmodulesConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-gitsubmodulesconfig", + "UpdateType": "Mutable" + }, + "InsecureSsl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-insecuressl", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Instance.PrivateIpAddressSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html", + "Properties": { + "Primary": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "PrivateIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EC2Fleet.TagSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html", + "Properties": { + "ResourceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html#cfn-ec2-ec2fleet-tagspecification-resourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-tagspecification.html#cfn-ec2-ec2fleet-tagspecification-tags", + "ItemType": "TagRequest", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::DataSource.ElasticsearchConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html", + "Properties": { + "AwsRegion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-awsregion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Endpoint": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-endpoint", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudWatch::AnomalyDetector.Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html", + "Properties": { + "MetricTimeZone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html#cfn-cloudwatch-anomalydetector-configuration-metrictimezone", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ExcludedTimeRanges": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-anomalydetector-configuration.html#cfn-cloudwatch-anomalydetector-configuration-excludedtimeranges", + "ItemType": "Range", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.HostVolumeProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html", + "Properties": { + "SourcePath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html#cfn-ecs-taskdefinition-volumes-host-sourcepath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::MSK::Cluster.Tls": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-tls.html", + "Properties": { + "CertificateAuthorityArnList": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-msk-cluster-tls.html#cfn-msk-cluster-tls-certificateauthorityarnlist", + "UpdateType": "Immutable" + } + } + }, + "AWS::IAM::User.Policy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html", + "Properties": { + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html", + "Properties": { + "CloudWatchLoggingOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-cloudwatchloggingoptions", + "Required": false, + "Type": "CloudWatchLoggingOptions", + "UpdateType": "Mutable" + }, + "ClusterJDBCURL": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-clusterjdbcurl", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "CopyCommand": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-copycommand", + "Required": true, + "Type": "CopyCommand", + "UpdateType": "Mutable" + }, + "Password": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-password", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ProcessingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-processingconfiguration", + "Required": false, + "Type": "ProcessingConfiguration", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-s3configuration", + "Required": true, + "Type": "S3DestinationConfiguration", + "UpdateType": "Mutable" + }, + "Username": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration-username", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Elasticsearch::Domain.EBSOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html", + "Properties": { + "EBSEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-ebsenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-volumesize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-volumetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceFleetConfig.EbsBlockDeviceConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html", + "Properties": { + "VolumeSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumespecification", + "Required": true, + "Type": "VolumeSpecification", + "UpdateType": "Immutable" + }, + "VolumesPerInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig.html#cfn-elasticmapreduce-instancefleetconfig-ebsblockdeviceconfig-volumesperinstance", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::LaunchTemplate.LaunchTemplateElasticInferenceAccelerator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html", + "Properties": { + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator.html#cfn-ec2-launchtemplate-launchtemplateelasticinferenceaccelerator-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Instance.TimeBasedAutoScaling": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html", + "Properties": { + "Friday": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-friday", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Monday": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-monday", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Saturday": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-saturday", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Sunday": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-sunday", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Thursday": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-thursday", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Tuesday": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-tuesday", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Wednesday": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-wednesday", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::ConfigRule.SourceDetail": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html", + "Properties": { + "EventSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html#cfn-config-configrule-source-sourcedetail-eventsource", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MaximumExecutionFrequency": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html#cfn-config-configrule-sourcedetail-maximumexecutionfrequency", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MessageType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html#cfn-config-configrule-source-sourcedetail-messagetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EC2Fleet.SpotOptionsRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html", + "Properties": { + "AllocationStrategy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-allocationstrategy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstanceInterruptionBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-instanceinterruptionbehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstancePoolsToUseCount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-instancepoolstousecount", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::MLTransform.InputRecordTables": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables.html", + "Properties": { + "GlueTables": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables.html#cfn-glue-mltransform-inputrecordtables-gluetables", + "ItemType": "GlueTables", + "UpdateType": "Mutable" + } + } + }, + "AWS::DMS::Endpoint.ElasticsearchSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html", + "Properties": { + "EndpointUri": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html#cfn-dms-endpoint-elasticsearchsettings-endpointuri", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FullLoadErrorPercentage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html#cfn-dms-endpoint-elasticsearchsettings-fullloaderrorpercentage", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ErrorRetryDuration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html#cfn-dms-endpoint-elasticsearchsettings-errorretryduration", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ServiceAccessRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-elasticsearchsettings.html#cfn-dms-endpoint-elasticsearchsettings-serviceaccessrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer.AppCookieStickinessPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html", + "Properties": { + "CookieName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-cookiename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-policyname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptFilter.IpFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html", + "Properties": { + "Policy": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html#cfn-ses-receiptfilter-ipfilter-policy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Cidr": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-receiptfilter-ipfilter.html#cfn-ses-receiptfilter-ipfilter-cidr", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cloud9::EnvironmentEC2.Repository": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html", + "Properties": { + "PathComponent": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html#cfn-cloud9-environmentec2-repository-pathcomponent", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RepositoryUrl": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloud9-environmentec2-repository.html#cfn-cloud9-environmentec2-repository-repositoryurl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.HadoopJarStepConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html", + "Properties": { + "Args": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-args", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Jar": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-jar", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MainClass": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-mainclass", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StepProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html#cfn-elasticmapreduce-cluster-hadoopjarstepconfig-stepproperties", + "DuplicatesAllowed": false, + "ItemType": "KeyValue", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ConnectorDefinitionVersion.Connector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html", + "Properties": { + "ConnectorArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-connectorarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-parameters", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "Id": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-connectordefinitionversion-connector.html#cfn-greengrass-connectordefinitionversion-connector-id", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::RDS::OptionGroup.OptionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html", + "Properties": { + "DBSecurityGroupMemberships": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-dbsecuritygroupmemberships", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "OptionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-optionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "OptionSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-optionsettings", + "DuplicatesAllowed": false, + "ItemType": "OptionSetting", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "OptionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfiguration-optionversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VpcSecurityGroupMemberships": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-vpcsecuritygroupmemberships", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::MLTransform.GlueTables": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html", + "Properties": { + "ConnectionName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html#cfn-glue-mltransform-inputrecordtables-gluetables-connectionname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TableName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html#cfn-glue-mltransform-inputrecordtables-gluetables-tablename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html#cfn-glue-mltransform-inputrecordtables-gluetables-databasename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CatalogId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-mltransform-inputrecordtables-gluetables.html#cfn-glue-mltransform-inputrecordtables-gluetables-catalogid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::App.Source": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html", + "Properties": { + "Password": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-pw", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Revision": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-revision", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SshKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-sshkey", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Url": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-url", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Username": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-username", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Alias.VersionWeight": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html", + "Properties": { + "FunctionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html#cfn-lambda-alias-versionweight-functionversion", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "FunctionWeight": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html#cfn-lambda-alias-versionweight-functionweight", + "PrimitiveType": "Double", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Channel.ServiceManagedS3": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-channel-servicemanageds3.html", + "Properties": {} + }, + "AWS::Elasticsearch::Domain.EncryptionAtRestOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "KmsKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html", + "Properties": { + "TagKeyScope": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-tagkeyscope", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TagValueScope": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-tagvaluescope", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResourceIdScope": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-resourceidscope", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LambdaFunctionArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-lambdafunctionarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "OrganizationConfigRuleTriggerTypes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-organizationconfigruletriggertypes", + "UpdateType": "Mutable" + }, + "ResourceTypesScope": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-resourcetypesscope", + "UpdateType": "Mutable" + }, + "MaximumExecutionFrequency": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-maximumexecutionfrequency", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InputParameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-inputparameters", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.CSVMappingParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html", + "Properties": { + "RecordRowDelimiter": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters-recordrowdelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RecordColumnDelimiter": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-csvmappingparameters-recordcolumndelimiter", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::App.AutoBranchCreationConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html", + "Properties": { + "EnvironmentVariables": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-environmentvariables", + "ItemType": "EnvironmentVariable", + "UpdateType": "Mutable" + }, + "EnableAutoBranchCreation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-enableautobranchcreation", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "AutoBranchCreationPatterns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-autobranchcreationpatterns", + "UpdateType": "Mutable" + }, + "EnableAutoBuild": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-enableautobuild", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "BuildSpec": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-buildspec", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Stage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-stage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BasicAuthConfig": { + "Type": "BasicAuthConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-app-autobranchcreationconfig.html#cfn-amplify-app-autobranchcreationconfig-basicauthconfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route.TcpRouteAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html", + "Properties": { + "WeightedTargets": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html#cfn-appmesh-route-tcprouteaction-weightedtargets", + "ItemType": "WeightedTarget", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Webhook.WebhookAuthConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html", + "Properties": { + "AllowedIPRange": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html#cfn-codepipeline-webhook-webhookauthconfiguration-allowediprange", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SecretToken": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-webhook-webhookauthconfiguration.html#cfn-codepipeline-webhook-webhookauthconfiguration-secrettoken", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Budgets::Budget.Spend": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html", + "Properties": { + "Amount": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html#cfn-budgets-budget-spend-amount", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "Unit": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html#cfn-budgets-budget-spend-unit", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster.ScalingTrigger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html", + "Properties": { + "CloudWatchAlarmDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html#cfn-elasticmapreduce-cluster-scalingtrigger-cloudwatchalarmdefinition", + "Required": true, + "Type": "CloudWatchAlarmDefinition", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup.EC2TagSetListObject": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagsetlistobject.html", + "Properties": { + "Ec2TagGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagsetlistobject.html#cfn-codedeploy-deploymentgroup-ec2tagsetlistobject-ec2taggroup", + "DuplicatesAllowed": false, + "ItemType": "EC2TagFilter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition.RepositoryCredentials": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html", + "Properties": { + "CredentialsParameter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html#cfn-ecs-taskdefinition-repositorycredentials-credentialsparameter", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalableTarget.ScalableTargetAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html", + "Properties": { + "MaxCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html#cfn-applicationautoscaling-scalabletarget-scalabletargetaction-maxcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MinCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalabletarget-scalabletargetaction.html#cfn-applicationautoscaling-scalabletarget-scalabletargetaction-mincapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + } + }, + "ResourceTypes": { + "AWS::EC2::RouteTable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html", + "Properties": { + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::PortfolioShare": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html", + "Properties": { + "AccountId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-accountid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::WAF::IPSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html", + "Properties": { + "IPSetDescriptors": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html#cfn-waf-ipset-ipsetdescriptors", + "DuplicatesAllowed": false, + "ItemType": "IPSetDescriptor", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html#cfn-waf-ipset-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::IAM::Group": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html", + "Properties": { + "GroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-groupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ManagedPolicyArns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-managepolicyarns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-path", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Policies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-policies", + "DuplicatesAllowed": false, + "ItemType": "Policy", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::RateBasedRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html", + "Properties": { + "MetricName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-metricname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RateLimit": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-ratelimit", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MatchPredicates": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-matchpredicates", + "ItemType": "Predicate", + "UpdateType": "Mutable" + }, + "RateKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-ratekey", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html#cfn-wafregional-ratebasedrule-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Backup::BackupPlan": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html", + "Attributes": { + "VersionId": { + "PrimitiveType": "String" + }, + "BackupPlanId": { + "PrimitiveType": "String" + }, + "BackupPlanArn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "BackupPlan": { + "Type": "BackupPlanResourceType", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html#cfn-backup-backupplan-backupplan", + "UpdateType": "Mutable" + }, + "BackupPlanTags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html#cfn-backup-backupplan-backupplantags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::SMSChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html", + "Properties": { + "ShortCode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html#cfn-pinpoint-smschannel-shortcode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html#cfn-pinpoint-smschannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html#cfn-pinpoint-smschannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SenderId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html#cfn-pinpoint-smschannel-senderid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPCPeeringConnection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html", + "Properties": { + "PeerOwnerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peerownerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PeerRegion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peerregion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PeerRoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peerrolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PeerVpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peervpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Elasticsearch::Domain": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "DomainArn": { + "PrimitiveType": "String" + }, + "DomainEndpoint": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html", + "Properties": { + "AccessPolicies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-accesspolicies", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "AdvancedOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-advancedoptions", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "DomainName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-domainname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EBSOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-ebsoptions", + "Required": false, + "Type": "EBSOptions", + "UpdateType": "Mutable" + }, + "ElasticsearchClusterConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchclusterconfig", + "Required": false, + "Type": "ElasticsearchClusterConfig", + "UpdateType": "Mutable" + }, + "ElasticsearchVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EncryptionAtRestOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-encryptionatrestoptions", + "Required": false, + "Type": "EncryptionAtRestOptions", + "UpdateType": "Immutable" + }, + "NodeToNodeEncryptionOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions", + "Required": false, + "Type": "NodeToNodeEncryptionOptions", + "UpdateType": "Immutable" + }, + "SnapshotOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-snapshotoptions", + "Required": false, + "Type": "SnapshotOptions", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VPCOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-vpcoptions", + "Required": false, + "Type": "VPCOptions", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::InstanceFleetConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html", + "Properties": { + "ClusterId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-clusterid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "InstanceFleetType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancefleettype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "InstanceTypeConfigs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfigs", + "DuplicatesAllowed": false, + "ItemType": "InstanceTypeConfig", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "LaunchSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-launchspecifications", + "Required": false, + "Type": "InstanceFleetProvisioningSpecifications", + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "TargetOnDemandCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-targetondemandcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "TargetSpotCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-targetspotcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WorkSpaces::Workspace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html", + "Properties": { + "BundleId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-bundleid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Conditional" + }, + "DirectoryId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-directoryid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Conditional" + }, + "RootVolumeEncryptionEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-rootvolumeencryptionenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Conditional" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "UserName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-username", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "UserVolumeEncryptionEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-uservolumeencryptionenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Conditional" + }, + "VolumeEncryptionKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-volumeencryptionkey", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "WorkspaceProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-workspaceproperties", + "Required": false, + "Type": "WorkspaceProperties", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::Route": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html", + "Properties": { + "Target": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-target", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RouteResponseSelectionExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-routeresponseselectionexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthorizerId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-authorizerid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RequestModels": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-requestmodels", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "OperationName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-operationname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthorizationScopes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-authorizationscopes", + "UpdateType": "Mutable" + }, + "ApiKeyRequired": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-apikeyrequired", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "RouteKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-routekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthorizationType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-authorizationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ModelSelectionExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-modelselectionexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RequestParameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html#cfn-apigatewayv2-route-requestparameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::SqlInjectionMatchSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html", + "Properties": { + "SqlInjectionMatchTuples": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuples", + "ItemType": "SqlInjectionMatchTuple", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html#cfn-wafregional-sqlinjectionmatchset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::SageMaker::Workteam": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html", + "Attributes": { + "WorkteamName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html#cfn-sagemaker-workteam-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotificationConfiguration": { + "Type": "NotificationConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html#cfn-sagemaker-workteam-notificationconfiguration", + "UpdateType": "Mutable" + }, + "WorkteamName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html#cfn-sagemaker-workteam-workteamname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "MemberDefinitions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html#cfn-sagemaker-workteam-memberdefinitions", + "ItemType": "MemberDefinition", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html#cfn-sagemaker-workteam-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::RAM::ResourceShare": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Principals": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-principals", + "UpdateType": "Mutable" + }, + "AllowExternalPrincipals": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-allowexternalprincipals", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ResourceArns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-resourcearns", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html#cfn-ram-resourceshare-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Kinesis::Stream": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RetentionPeriodHours": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-retentionperiodhours", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ShardCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-shardcount", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "StreamEncryption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-streamencryption", + "Required": false, + "Type": "StreamEncryption", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::LaunchConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html", + "Properties": { + "AssociatePublicIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cf-as-launchconfig-associatepubip", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "BlockDeviceMappings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-blockdevicemappings", + "DuplicatesAllowed": false, + "ItemType": "BlockDeviceMapping", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "ClassicLinkVPCId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-classiclinkvpcid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ClassicLinkVPCSecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-classiclinkvpcsecuritygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EbsOptimized": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-ebsoptimized", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "IamInstanceProfile": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-iaminstanceprofile", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ImageId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-imageid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "InstanceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instanceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "InstanceMonitoring": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instancemonitoring", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "KernelId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-kernelid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "KeyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-keyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LaunchConfigurationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-autoscaling-launchconfig-launchconfigurationname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PlacementTenancy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-placementtenancy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RamDiskId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-ramdiskid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-securitygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "SpotPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-spotprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "UserData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-userdata", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::TransitGateway": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html", + "Properties": { + "DefaultRouteTablePropagation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-defaultroutetablepropagation", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AutoAcceptSharedAttachments": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-autoacceptsharedattachments", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DefaultRouteTableAssociation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-defaultroutetableassociation", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "VpnEcmpSupport": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-vpnecmpsupport", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DnsSupport": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-dnssupport", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AmazonSideAsn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-amazonsideasn", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-tags", + "ItemType": "Tag", + "UpdateType": "Immutable" + } + } + }, + "AWS::SQS::Queue": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "QueueName": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html", + "Properties": { + "ContentBasedDeduplication": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-contentbaseddeduplication", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DelaySeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-delayseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "FifoQueue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-fifoqueue", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "KmsDataKeyReusePeriodSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-kmsdatakeyreuseperiodseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "KmsMasterKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-kmsmasterkeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MaximumMessageSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-maxmesgsize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MessageRetentionPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-msgretentionperiod", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "QueueName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ReceiveMessageWaitTimeSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-receivemsgwaittime", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "RedrivePolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-redrive", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#cfn-sqs-queue-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VisibilityTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-visiblitytimeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::CapacityReservation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html", + "Attributes": { + "Tenancy": { + "PrimitiveType": "String" + }, + "AvailableInstanceCount": { + "PrimitiveType": "Integer" + }, + "AvailabilityZone": { + "PrimitiveType": "String" + }, + "TotalInstanceCount": { + "PrimitiveType": "Integer" + }, + "InstanceType": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Tenancy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-tenancy", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EndDateType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-enddatetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstanceCount": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-instancecount", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TagSpecifications": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-tagspecifications", + "ItemType": "TagSpecification", + "UpdateType": "Immutable" + }, + "AvailabilityZone": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-availabilityzone", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InstancePlatform": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-instanceplatform", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-instancetype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EphemeralStorage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-ephemeralstorage", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "InstanceMatchCriteria": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-instancematchcriteria", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EndDate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-enddate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EbsOptimized": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-ebsoptimized", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppSync::Resolver": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html", + "Attributes": { + "TypeName": { + "PrimitiveType": "String" + }, + "ResolverArn": { + "PrimitiveType": "String" + }, + "FieldName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ResponseMappingTemplateS3Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-responsemappingtemplates3location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TypeName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-typename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PipelineConfig": { + "Type": "PipelineConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-pipelineconfig", + "UpdateType": "Mutable" + }, + "DataSourceName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-datasourcename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RequestMappingTemplate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-requestmappingtemplate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResponseMappingTemplate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-responsemappingtemplate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Kind": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-kind", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RequestMappingTemplateS3Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-requestmappingtemplates3location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "FieldName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-fieldname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::VoiceChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html", + "Properties": { + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html#cfn-pinpoint-voicechannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html#cfn-pinpoint-voicechannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::VPCEndpointServicePermissions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html", + "Properties": { + "AllowedPrincipals": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html#cfn-ec2-vpcendpointservicepermissions-allowedprincipals", + "UpdateType": "Mutable" + }, + "ServiceId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html#cfn-ec2-vpcendpointservicepermissions-serviceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Route53::RecordSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html", + "Properties": { + "AliasTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-aliastarget", + "Required": false, + "Type": "AliasTarget", + "UpdateType": "Mutable" + }, + "Comment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-comment", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Failover": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-failover", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "GeoLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-geolocation", + "Required": false, + "Type": "GeoLocation", + "UpdateType": "Mutable" + }, + "HealthCheckId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-healthcheckid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HostedZoneId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzoneid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "HostedZoneName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzonename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "MultiValueAnswer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-multivalueanswer", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Region": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-region", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ResourceRecords": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-resourcerecords", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SetIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-setidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TTL": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-ttl", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Weight": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-weight", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::SizeConstraintSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html#cfn-waf-sizeconstraintset-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SizeConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html#cfn-waf-sizeconstraintset-sizeconstraints", + "DuplicatesAllowed": false, + "ItemType": "SizeConstraint", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ManagedBlockchain::Member": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html", + "Attributes": { + "MemberId": { + "PrimitiveType": "String" + }, + "NetworkId": { + "PrimitiveType": "String" + } + }, + "Properties": { + "MemberConfiguration": { + "Type": "MemberConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-memberconfiguration", + "UpdateType": "Mutable" + }, + "NetworkConfiguration": { + "Type": "NetworkConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-networkconfiguration", + "UpdateType": "Mutable" + }, + "NetworkId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-networkid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InvitationId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html#cfn-managedblockchain-member-invitationid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudWatch::Dashboard": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html", + "Properties": { + "DashboardName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html#cfn-cloudwatch-dashboard-dashboardname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DashboardBody": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html#cfn-cloudwatch-dashboard-dashboardbody", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::Cluster": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html", + "Properties": { + "ClusterName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-clustername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::IAM::Policy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html", + "Properties": { + "Groups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-groups", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policyname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Roles": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-roles", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Users": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-users", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::StepFunctions::Activity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html", + "Attributes": { + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html#cfn-stepfunctions-activity-tags", + "ItemType": "TagsEntry", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html#cfn-stepfunctions-activity-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationOutput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html", + "Properties": { + "ApplicationName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html#cfn-kinesisanalytics-applicationoutput-applicationname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Output": { + "Type": "Output", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html#cfn-kinesisanalytics-applicationoutput-output", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolRiskConfigurationAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html", + "Properties": { + "CompromisedCredentialsRiskConfiguration": { + "Type": "CompromisedCredentialsRiskConfigurationType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-compromisedcredentialsriskconfiguration", + "UpdateType": "Mutable" + }, + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ClientId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-clientid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AccountTakeoverRiskConfiguration": { + "Type": "AccountTakeoverRiskConfigurationType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-accounttakeoverriskconfiguration", + "UpdateType": "Mutable" + }, + "RiskExceptionConfiguration": { + "Type": "RiskExceptionConfigurationType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html#cfn-cognito-userpoolriskconfigurationattachment-riskexceptionconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::Stack": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html", + "Properties": { + "ApplicationSettings": { + "Type": "ApplicationSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-applicationsettings", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StorageConnectors": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-storageconnectors", + "ItemType": "StorageConnector", + "UpdateType": "Mutable" + }, + "DeleteStorageConnectors": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-deletestorageconnectors", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "UserSettings": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-usersettings", + "ItemType": "UserSetting", + "UpdateType": "Mutable" + }, + "AttributesToDelete": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-attributestodelete", + "UpdateType": "Mutable" + }, + "DisplayName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-displayname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RedirectURL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-redirecturl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "FeedbackURL": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html#cfn-appstream-stack-feedbackurl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::TransitGatewayRouteTableAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html", + "Properties": { + "TransitGatewayRouteTableId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html#cfn-ec2-transitgatewayroutetableassociation-transitgatewayroutetableid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TransitGatewayAttachmentId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html#cfn-ec2-transitgatewayroutetableassociation-transitgatewayattachmentid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::Volume": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html", + "Properties": { + "AutoEnableIO": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-autoenableio", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-availabilityzone", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Encrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-encrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Size": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-size", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshotId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-snapshotid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VolumeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-volumetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::GraphQLSchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html", + "Properties": { + "Definition": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definition", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefinitionS3Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definitions3location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IAM::ServiceLinkedRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html", + "Properties": { + "CustomSuffix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-customsuffix", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AWSServiceName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-awsservicename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::ConnectorDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html", + "Properties": { + "Connectors": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html#cfn-greengrass-connectordefinitionversion-connectors", + "ItemType": "Connector", + "UpdateType": "Immutable" + }, + "ConnectorDefinitionId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html#cfn-greengrass-connectordefinitionversion-connectordefinitionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::ResourceUpdateConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TagUpdateOnProvisionedProduct": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-tagupdateonprovisionedproduct", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ProductId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html#cfn-servicecatalog-resourceupdateconstraint-productid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::CloudFront::StreamingDistribution": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html", + "Attributes": { + "DomainName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "StreamingDistributionConfig": { + "Type": "StreamingDistributionConfig", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::GraphQLApi": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html", + "Attributes": { + "GraphQLUrl": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "ApiId": { + "PrimitiveType": "String" + } + }, + "Properties": { + "OpenIDConnectConfig": { + "Type": "OpenIDConnectConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-openidconnectconfig", + "UpdateType": "Mutable" + }, + "UserPoolConfig": { + "Type": "UserPoolConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-userpoolconfig", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "Tags", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-tags", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthenticationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-authenticationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LogConfig": { + "Type": "LogConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-logconfig", + "UpdateType": "Mutable" + }, + "AdditionalAuthenticationProviders": { + "Type": "AdditionalAuthenticationProviders", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-additionalauthenticationproviders", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolIdentityProvider": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html", + "Properties": { + "ProviderName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-providername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AttributeMapping": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-attributemapping", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "ProviderDetails": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-providerdetails", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "ProviderType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-providertype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "IdpIdentifiers": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-idpidentifiers", + "UpdateType": "Mutable" + } + } + }, + "AWS::GuardDuty::Filter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html", + "Properties": { + "Action": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-action", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DetectorId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-detectorid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "FindingCriteria": { + "Type": "FindingCriteria", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-findingcriteria", + "UpdateType": "Mutable" + }, + "Rank": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-rank", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html#cfn-guardduty-filter-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::LakeFormation::Resource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html", + "Properties": { + "ResourceArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html#cfn-lakeformation-resource-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UseServiceLinkedRole": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html#cfn-lakeformation-resource-useservicelinkedrole", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html#cfn-lakeformation-resource-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SNS::Subscription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html", + "Properties": { + "DeliveryPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-deliverypolicy", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "Endpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-endpoint", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "FilterPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicy", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-protocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RawMessageDelivery": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-rawmessagedelivery", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Region": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-region", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TopicArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#topicarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::EFS::MountTarget": { + "Attributes": { + "IpAddress": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html", + "Properties": { + "FileSystemId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-filesystemid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "IpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipaddress", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-securitygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-subnetid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::DataCatalogEncryptionSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html", + "Properties": { + "DataCatalogEncryptionSettings": { + "Type": "DataCatalogEncryptionSettings", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-datacatalogencryptionsettings", + "UpdateType": "Mutable" + }, + "CatalogId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html#cfn-glue-datacatalogencryptionsettings-catalogid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::SNS::Topic": { + "Attributes": { + "TopicName": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html", + "Properties": { + "DisplayName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-displayname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "KmsMasterKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-kmsmasterkeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Subscription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-subscription", + "DuplicatesAllowed": true, + "ItemType": "Subscription", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TopicName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-topicname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::TagOption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html", + "Properties": { + "Active": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-active", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-value", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Key": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-key", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::SageMaker::NotebookInstanceLifecycleConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html", + "Attributes": { + "NotebookInstanceLifecycleConfigName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "OnStart": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-onstart", + "ItemType": "NotebookInstanceLifecycleHook", + "UpdateType": "Mutable" + }, + "NotebookInstanceLifecycleConfigName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-notebookinstancelifecycleconfigname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "OnCreate": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html#cfn-sagemaker-notebookinstancelifecycleconfig-oncreate", + "ItemType": "NotebookInstanceLifecycleHook", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html", + "Properties": { + "GroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-groupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Precedence": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-precedence", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Deployment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html", + "Properties": { + "DeploymentCanarySettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-deploymentcanarysettings", + "Required": false, + "Type": "DeploymentCanarySettings", + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "StageDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagedescription", + "Required": false, + "Type": "StageDescription", + "UpdateType": "Mutable" + }, + "StageName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::LakeFormation::Permissions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html", + "Properties": { + "DataLakePrincipal": { + "Type": "DataLakePrincipal", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html#cfn-lakeformation-permissions-datalakeprincipal", + "UpdateType": "Mutable" + }, + "Resource": { + "Type": "Resource", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html#cfn-lakeformation-permissions-resource", + "UpdateType": "Mutable" + }, + "Permissions": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html#cfn-lakeformation-permissions-permissions", + "UpdateType": "Mutable" + }, + "PermissionsWithGrantOption": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html#cfn-lakeformation-permissions-permissionswithgrantoption", + "UpdateType": "Mutable" + } + } + }, + "AWS::KMS::Key": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EnableKeyRotation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enablekeyrotation", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "KeyPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keypolicy", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "KeyUsage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keyusage", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PendingWindowInDays": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-pendingwindowindays", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Redshift::Cluster": { + "Attributes": { + "Endpoint.Address": { + "PrimitiveType": "String" + }, + "Endpoint.Port": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html", + "Properties": { + "AllowVersionUpgrade": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-allowversionupgrade", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "AutomatedSnapshotRetentionPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-automatedsnapshotretentionperiod", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-availabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ClusterIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusteridentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ClusterParameterGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusterparametergroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ClusterSecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustersecuritygroups", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "ClusterSubnetGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustersubnetgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ClusterType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustertype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ClusterVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusterversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DBName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-dbname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ElasticIp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-elasticip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Encrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-encrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "HsmClientCertificateIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-hsmclientcertidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HsmConfigurationIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-HsmConfigurationIdentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "IamRoles": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-iamroles", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LoggingProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-loggingproperties", + "Required": false, + "Type": "LoggingProperties", + "UpdateType": "Mutable" + }, + "MasterUserPassword": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masteruserpassword", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MasterUsername": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masterusername", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "NodeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-nodetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "NumberOfNodes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-nodetype", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "OwnerAccount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-owneraccount", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-preferredmaintenancewindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PubliclyAccessible": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-publiclyaccessible", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshotClusterIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotclusteridentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SnapshotIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcSecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-vpcsecuritygroupids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::App": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html", + "Properties": { + "AppSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-appsource", + "Required": false, + "Type": "Source", + "UpdateType": "Mutable" + }, + "Attributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-attributes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "DataSources": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-datasources", + "DuplicatesAllowed": false, + "ItemType": "DataSource", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Domains": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-domains", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EnableSsl": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-enablessl", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Environment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-environment", + "DuplicatesAllowed": true, + "ItemType": "EnvironmentVariable", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Shortname": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-shortname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SslConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-sslconfiguration", + "Required": false, + "Type": "SslConfiguration", + "UpdateType": "Mutable" + }, + "StackId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-stackid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::Route": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html", + "Attributes": { + "Uid": { + "PrimitiveType": "String" + }, + "MeshName": { + "PrimitiveType": "String" + }, + "VirtualRouterName": { + "PrimitiveType": "String" + }, + "RouteName": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "MeshName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-meshname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "VirtualRouterName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-virtualroutername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RouteName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-routename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Spec": { + "Type": "RouteSpec", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-spec", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html#cfn-appmesh-route-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::EventSourceMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html", + "Properties": { + "BatchSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "EventSourceArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "FunctionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MaximumBatchingWindowInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "StartingPosition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::Authorizer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html", + "Properties": { + "AuthType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AuthorizerCredentials": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizercredentials", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AuthorizerResultTtlInSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizerresultttlinseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "AuthorizerUri": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizeruri", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "IdentitySource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-identitysource", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "IdentityValidationExpression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-identityvalidationexpression", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ProviderARNs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-providerarns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT1Click::Project": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html", + "Attributes": { + "ProjectName": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html#cfn-iot1click-project-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PlacementTemplate": { + "Type": "PlacementTemplate", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html#cfn-iot1click-project-placementtemplate", + "UpdateType": "Mutable" + }, + "ProjectName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-project.html#cfn-iot1click-project-projectname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::EIP": { + "Attributes": { + "AllocationId": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html", + "Properties": { + "Domain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-domain", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "InstanceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-instanceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PublicIpv4Pool": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-publicipv4pool", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::DomainName": { + "Attributes": { + "DistributionDomainName": { + "PrimitiveType": "String" + }, + "DistributionHostedZoneId": { + "PrimitiveType": "String" + }, + "RegionalDomainName": { + "PrimitiveType": "String" + }, + "RegionalHostedZoneId": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html", + "Properties": { + "CertificateArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DomainName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-domainname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "EndpointConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-endpointconfiguration", + "Required": false, + "Type": "EndpointConfiguration", + "UpdateType": "Mutable" + }, + "RegionalCertificateArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-regionalcertificatearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::GeoMatchSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html", + "Properties": { + "GeoMatchConstraints": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html#cfn-wafregional-geomatchset-geomatchconstraints", + "ItemType": "GeoMatchConstraint", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html#cfn-wafregional-geomatchset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Batch::JobDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "NodeProperties": { + "Type": "NodeProperties", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-nodeproperties", + "UpdateType": "Mutable" + }, + "Timeout": { + "Type": "Timeout", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-timeout", + "UpdateType": "Mutable" + }, + "ContainerProperties": { + "Type": "ContainerProperties", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-containerproperties", + "UpdateType": "Mutable" + }, + "JobDefinitionName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-jobdefinitionname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RetryStrategy": { + "Type": "RetryStrategy", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-retrystrategy", + "UpdateType": "Mutable" + } + } + }, + "AWS::GameLift::Fleet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html", + "Properties": { + "BuildId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-buildid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DesiredEC2Instances": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-desiredec2instances", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "EC2InboundPermissions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-ec2inboundpermissions", + "DuplicatesAllowed": false, + "ItemType": "IpPermission", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EC2InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-ec2instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "LogPaths": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-logpaths", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "MaxSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-maxsize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MinSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-minsize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ServerLaunchParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-serverlaunchparameters", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ServerLaunchPath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-serverlaunchpath", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::VPCEndpointConnectionNotification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html", + "Properties": { + "ConnectionEvents": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html#cfn-ec2-vpcendpointconnectionnotification-connectionevents", + "UpdateType": "Mutable" + }, + "VPCEndpointId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html#cfn-ec2-vpcendpointconnectionnotification-vpcendpointid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ServiceId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html#cfn-ec2-vpcendpointconnectionnotification-serviceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ConnectionNotificationArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html#cfn-ec2-vpcendpointconnectionnotification-connectionnotificationarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::LayerVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html", + "Properties": { + "CompatibleRuntimes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-compatibleruntimes", + "UpdateType": "Immutable" + }, + "LicenseInfo": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-licenseinfo", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "LayerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-layername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Content": { + "Type": "Content", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-content", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::DocumentationPart": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html", + "Properties": { + "Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-location", + "Required": true, + "Type": "Location", + "UpdateType": "Immutable" + }, + "Properties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-properties", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::RDS::DBSubnetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html", + "Properties": { + "DBSubnetGroupDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-dbsubnetgroupdescription", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "DBSubnetGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-dbsubnetgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-subnetids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancing::LoadBalancer": { + "Attributes": { + "CanonicalHostedZoneName": { + "PrimitiveType": "String" + }, + "CanonicalHostedZoneNameID": { + "PrimitiveType": "String" + }, + "DNSName": { + "PrimitiveType": "String" + }, + "SourceSecurityGroup.GroupName": { + "PrimitiveType": "String" + }, + "SourceSecurityGroup.OwnerAlias": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html", + "Properties": { + "AccessLoggingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-accessloggingpolicy", + "Required": false, + "Type": "AccessLoggingPolicy", + "UpdateType": "Mutable" + }, + "AppCookieStickinessPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-appcookiestickinesspolicy", + "DuplicatesAllowed": false, + "ItemType": "AppCookieStickinessPolicy", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "AvailabilityZones": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-availabilityzones", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + }, + "ConnectionDrainingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-connectiondrainingpolicy", + "Required": false, + "Type": "ConnectionDrainingPolicy", + "UpdateType": "Mutable" + }, + "ConnectionSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-connectionsettings", + "Required": false, + "Type": "ConnectionSettings", + "UpdateType": "Mutable" + }, + "CrossZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-crosszone", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthCheck": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-healthcheck", + "Required": false, + "Type": "HealthCheck", + "UpdateType": "Conditional" + }, + "Instances": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-instances", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "LBCookieStickinessPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-lbcookiestickinesspolicy", + "DuplicatesAllowed": false, + "ItemType": "LBCookieStickinessPolicy", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Listeners": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-listeners", + "DuplicatesAllowed": false, + "ItemType": "Listeners", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "LoadBalancerName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-elbname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Policies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-policies", + "DuplicatesAllowed": false, + "ItemType": "Policies", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Scheme": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-scheme", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-securitygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Subnets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-subnets", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-elasticloadbalancing-loadbalancer-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::LakeFormation::DataLakeSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html", + "Properties": { + "Admins": { + "Type": "Admins", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html#cfn-lakeformation-datalakesettings-admins", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::EventStream": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html", + "Properties": { + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DestinationStreamArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-destinationstreamarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSetEventDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html", + "Properties": { + "EventDestinationName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestinationname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ConfigurationSetName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-configurationsetname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EventDestination": { + "Type": "EventDestination", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html#cfn-pinpointemail-configurationseteventdestination-eventdestination", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::Stage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html", + "Properties": { + "ClientCertificateId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-clientcertificateid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DeploymentId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-deploymentid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AccessLogSettings": { + "Type": "AccessLogSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings", + "UpdateType": "Mutable" + }, + "RouteSettings": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "StageName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "StageVariables": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DefaultRouteSettings": { + "Type": "RouteSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-defaultroutesettings", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Model": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html", + "Properties": { + "ContentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-contenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Schema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-schema", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::RegexPatternSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html", + "Properties": { + "RegexPatternStrings": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html#cfn-wafregional-regexpatternset-regexpatternstrings", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html#cfn-wafregional-regexpatternset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::GuardDuty::ThreatIntelSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html", + "Properties": { + "Format": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-format", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Activate": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-activate", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DetectorId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-detectorid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Location": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html#cfn-guardduty-threatintelset-location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Logs::MetricFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html", + "Properties": { + "FilterPattern": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-filterpattern", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "LogGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-loggroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "MetricTransformations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-metrictransformations", + "DuplicatesAllowed": false, + "ItemType": "MetricTransformation", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptfilter.html", + "Properties": { + "Filter": { + "Type": "Filter", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptfilter.html#cfn-ses-receiptfilter-filter", + "UpdateType": "Immutable" + } + } + }, + "AWS::Config::RemediationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html", + "Properties": { + "TargetVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-targetversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ExecutionControls": { + "Type": "ExecutionControls", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-executioncontrols", + "UpdateType": "Mutable" + }, + "Parameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "TargetType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-targettype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ConfigRuleName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-configrulename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResourceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-resourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RetryAttemptSeconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-retryattemptseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MaximumAutomaticAttempts": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-maximumautomaticattempts", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TargetId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-targetid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Automatic": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html#cfn-config-remediationconfiguration-automatic", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Workflow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefaultRunProperties": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-defaultrunproperties", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::SecretsManager::RotationSchedule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html", + "Properties": { + "SecretId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-secretid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RotationLambdaARN": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-rotationlambdaarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RotationRules": { + "Type": "RotationRules", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-rotationrules", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::FlowLog": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html", + "Properties": { + "DeliverLogsPermissionArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-deliverlogspermissionarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LogDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-logdestination", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LogDestinationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-logdestinationtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LogGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-loggroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ResourceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-resourceid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ResourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-resourcetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "TrafficType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-traffictype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::ResourceDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html", + "Attributes": { + "LatestVersionArn": { + "PrimitiveType": "String" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "InitialVersion": { + "Type": "ResourceDefinitionVersion", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-initialversion", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html#cfn-greengrass-resourcedefinition-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::IdentityPool": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html", + "Attributes": { + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "PushSync": { + "Type": "PushSync", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-pushsync", + "UpdateType": "Mutable" + }, + "CognitoIdentityProviders": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitoidentityproviders", + "ItemType": "CognitoIdentityProvider", + "UpdateType": "Mutable" + }, + "CognitoEvents": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitoevents", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "DeveloperProviderName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-developerprovidername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CognitoStreams": { + "Type": "CognitoStreams", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitostreams", + "UpdateType": "Mutable" + }, + "IdentityPoolName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-identitypoolname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AllowUnauthenticatedIdentities": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-allowunauthenticatedidentities", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "SupportedLoginProviders": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-supportedloginproviders", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "SamlProviderARNs": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-samlproviderarns", + "UpdateType": "Mutable" + }, + "OpenIdConnectProviderARNs": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-openidconnectproviderarns", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::LoadBalancer": { + "Attributes": { + "CanonicalHostedZoneID": { + "PrimitiveType": "String" + }, + "DNSName": { + "PrimitiveType": "String" + }, + "LoadBalancerFullName": { + "PrimitiveType": "String" + }, + "LoadBalancerName": { + "PrimitiveType": "String" + }, + "SecurityGroups": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html", + "Properties": { + "IpAddressType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-ipaddresstype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LoadBalancerAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes", + "DuplicatesAllowed": false, + "ItemType": "LoadBalancerAttribute", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Scheme": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-scheme", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-securitygroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SubnetMappings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-subnetmappings", + "DuplicatesAllowed": false, + "ItemType": "SubnetMapping", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Subnets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-subnets", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-type", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::IAM::AccessKey": { + "Attributes": { + "SecretAccessKey": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html", + "Properties": { + "Serial": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-serial", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Status": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-status", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "UserName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-username", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::CodeBuild::SourceCredential": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html", + "Properties": { + "ServerType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html#cfn-codebuild-sourcecredential-servertype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Username": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html#cfn-codebuild-sourcecredential-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Token": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html#cfn-codebuild-sourcecredential-token", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html#cfn-codebuild-sourcecredential-authtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::ConfigurationAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html", + "Properties": { + "Broker": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html#cfn-amazonmq-configurationassociation-broker", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Configuration": { + "Type": "ConfigurationId", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html#cfn-amazonmq-configurationassociation-configuration", + "UpdateType": "Mutable" + } + } + }, + "AWS::DMS::ReplicationSubnetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html", + "Properties": { + "ReplicationSubnetGroupDescription": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-replicationsubnetgroupdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ReplicationSubnetGroupIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-replicationsubnetgroupidentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-subnetids", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html#cfn-dms-replicationsubnetgroup-tags", + "ItemType": "Tag", + "UpdateType": "Immutable" + } + } + }, + "AWS::SES::ConfigurationSetEventDestination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html", + "Properties": { + "ConfigurationSetName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-configurationsetname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EventDestination": { + "Type": "EventDestination", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html#cfn-ses-configurationseteventdestination-eventdestination", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeBuild::Project": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VpcConfig": { + "Type": "VpcConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-vpcconfig", + "UpdateType": "Mutable" + }, + "SecondarySources": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondarysources", + "ItemType": "Source", + "UpdateType": "Mutable" + }, + "EncryptionKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-encryptionkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-sourceversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Triggers": { + "Type": "ProjectTriggers", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-triggers", + "UpdateType": "Mutable" + }, + "SecondaryArtifacts": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondaryartifacts", + "ItemType": "Artifacts", + "UpdateType": "Mutable" + }, + "Source": { + "Type": "Source", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-source", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Artifacts": { + "Type": "Artifacts", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-artifacts", + "UpdateType": "Mutable" + }, + "BadgeEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-badgeenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "LogsConfig": { + "Type": "LogsConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-logsconfig", + "UpdateType": "Mutable" + }, + "ServiceRole": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-servicerole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "QueuedTimeoutInMinutes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-queuedtimeoutinminutes", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Environment": { + "Type": "Environment", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-environment", + "UpdateType": "Mutable" + }, + "SecondarySourceVersions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-secondarysourceversions", + "ItemType": "ProjectSourceVersion", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "TimeoutInMinutes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-timeoutinminutes", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Cache": { + "Type": "ProjectCache", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-cache", + "UpdateType": "Mutable" + } + } + }, + "AWS::Budgets::Budget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html", + "Properties": { + "NotificationsWithSubscribers": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-notificationswithsubscribers", + "ItemType": "NotificationWithSubscribers", + "UpdateType": "Immutable" + }, + "Budget": { + "Type": "BudgetData", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-budget", + "UpdateType": "Mutable" + } + } + }, + "AWS::SNS::TopicPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html", + "Properties": { + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html#cfn-sns-topicpolicy-policydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "Topics": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html#cfn-sns-topicpolicy-topics", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Alias": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "FunctionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-functionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "FunctionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-functionversion", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RoutingConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-routingconfig", + "Required": false, + "Type": "AliasRoutingConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SecurityGroupEgress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html", + "Properties": { + "CidrIp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-cidrip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "CidrIpv6": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-cidripv6", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DestinationPrefixListId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-destinationprefixlistid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DestinationSecurityGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-destinationsecuritygroupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "FromPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-fromport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "GroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-groupid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "IpProtocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-ipprotocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ToPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-toport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::Listener": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html", + "Properties": { + "Certificates": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-certificates", + "DuplicatesAllowed": false, + "ItemType": "Certificate", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "DefaultActions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-defaultactions", + "DuplicatesAllowed": false, + "ItemType": "Action", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "LoadBalancerArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-loadbalancerarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-port", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-protocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SslPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-sslpolicy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::LayerVersionPermission": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html", + "Properties": { + "Action": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-action", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "LayerVersionArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-layerversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "OrganizationId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-organizationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Principal": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-principal", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::SageMaker::EndpointConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html", + "Attributes": { + "EndpointConfigName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ProductionVariants": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html#cfn-sagemaker-endpointconfig-productionvariants", + "ItemType": "ProductionVariant", + "UpdateType": "Immutable" + }, + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html#cfn-sagemaker-endpointconfig-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EndpointConfigName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html#cfn-sagemaker-endpointconfig-endpointconfigname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html#cfn-sagemaker-endpointconfig-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::DeviceDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html", + "Attributes": { + "LatestVersionArn": { + "PrimitiveType": "String" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "InitialVersion": { + "Type": "DeviceDefinitionVersion", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-initialversion", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html#cfn-greengrass-devicedefinition-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::StepFunctions::StateMachine": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html", + "Attributes": { + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "DefinitionString": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionstring", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StateMachineName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-statemachinename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags", + "ItemType": "TagsEntry", + "UpdateType": "Mutable" + } + } + }, + "AWS::DMS::EventSubscription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html", + "Properties": { + "SourceType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-sourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EventCategories": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-eventcategories", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "SubscriptionName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-subscriptionname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SnsTopicArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-snstopicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-sourceids", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html#cfn-dms-eventsubscription-tags", + "ItemType": "Tag", + "UpdateType": "Immutable" + } + } + }, + "AWS::CodeDeploy::DeploymentConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html", + "Properties": { + "DeploymentConfigName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html#cfn-codedeploy-deploymentconfig-deploymentconfigname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "MinimumHealthyHosts": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts", + "Required": false, + "Type": "MinimumHealthyHosts", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::TransitGatewayAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html", + "Properties": { + "TransitGatewayId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-transitgatewayid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "VpcId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-vpcid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-subnetids", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html#cfn-ec2-transitgatewayattachment-tags", + "ItemType": "Tag", + "UpdateType": "Immutable" + } + } + }, + "AWS::DAX::ParameterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html", + "Properties": { + "ParameterNameValues": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-parameternamevalues", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ParameterGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-parametergroupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Config::ConfigurationAggregator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html", + "Properties": { + "AccountAggregationSources": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-accountaggregationsources", + "ItemType": "AccountAggregationSource", + "UpdateType": "Mutable" + }, + "ConfigurationAggregatorName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-configurationaggregatorname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "OrganizationAggregationSource": { + "Type": "OrganizationAggregationSource", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html#cfn-config-configurationaggregator-organizationaggregationsource", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::Template": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-template.html", + "Properties": { + "Template": { + "Type": "Template", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-template.html#cfn-ses-template-template", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFront::Distribution": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html", + "Attributes": { + "DomainName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "DistributionConfig": { + "Type": "DistributionConfig", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-distributionconfig", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Redshift::ClusterParameterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-description", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ParameterGroupFamily": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parametergroupfamily", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Parameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parameters", + "DuplicatesAllowed": true, + "ItemType": "Parameter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudTrail::Trail": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "SnsTopicArn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html", + "Properties": { + "CloudWatchLogsLogGroupArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-cloudwatchlogsloggrouparn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CloudWatchLogsRoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-cloudwatchlogsrolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EnableLogFileValidation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-enablelogfilevalidation", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "EventSelectors": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-eventselectors", + "DuplicatesAllowed": false, + "ItemType": "EventSelector", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "IncludeGlobalServiceEvents": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-includeglobalserviceevents", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "IsLogging": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-islogging", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "IsMultiRegionTrail": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-ismultiregiontrail", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "KMSKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "S3BucketName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-s3bucketname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3KeyPrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-s3keyprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SnsTopicName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-snstopicname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TrailName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-trailname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::EMR::InstanceGroupConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html", + "Properties": { + "AutoScalingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy", + "Required": false, + "Type": "AutoScalingPolicy", + "UpdateType": "Mutable" + }, + "BidPrice": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-bidprice", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Configurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-configurations", + "DuplicatesAllowed": false, + "ItemType": "Configuration", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EbsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-ebsconfiguration", + "Required": false, + "Type": "EbsConfiguration", + "UpdateType": "Immutable" + }, + "InstanceCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfiginstancecount-", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "InstanceRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancerole", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "JobFlowId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-jobflowid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Market": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-market", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Neptune::DBClusterParameterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html", + "Properties": { + "Description": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Parameters": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Family": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-family", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html#cfn-neptune-dbclusterparametergroup-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html", + "Properties": { + "Actions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-actions", + "DuplicatesAllowed": false, + "ItemType": "Action", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Conditions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-conditions", + "DuplicatesAllowed": false, + "ItemType": "RuleCondition", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "ListenerArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-listenerarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Priority": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-priority", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Pipeline": { + "Attributes": { + "Version": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html", + "Properties": { + "ArtifactStore": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-artifactstore", + "Required": false, + "Type": "ArtifactStore", + "UpdateType": "Mutable" + }, + "ArtifactStores": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-artifactstores", + "DuplicatesAllowed": false, + "ItemType": "ArtifactStoreMap", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "DisableInboundStageTransitions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-disableinboundstagetransitions", + "DuplicatesAllowed": false, + "ItemType": "StageTransition", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RestartExecutionOnUpdate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-restartexecutiononupdate", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Stages": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-stages", + "DuplicatesAllowed": false, + "ItemType": "StageDeclaration", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::TopicRule": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html", + "Properties": { + "RuleName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-rulename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "TopicRulePayload": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-topicrulepayload", + "Required": true, + "Type": "TopicRulePayload", + "UpdateType": "Mutable" + } + } + }, + "AWS::DocDB::DBInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html", + "Attributes": { + "Endpoint": { + "PrimitiveType": "String" + }, + "Port": { + "PrimitiveType": "String" + } + }, + "Properties": { + "DBInstanceClass": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-dbinstanceclass", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DBClusterIdentifier": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-dbclusteridentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AvailabilityZone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-availabilityzone", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-preferredmaintenancewindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AutoMinorVersionUpgrade": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-autominorversionupgrade", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DBInstanceIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-dbinstanceidentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html#cfn-docdb-dbinstance-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::ElasticLoadBalancerAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html", + "Properties": { + "ElasticLoadBalancerName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html#cfn-opsworks-elbattachment-elbname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "LayerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html#cfn-opsworks-elbattachment-layerid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::WebACLAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html", + "Properties": { + "ResourceArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html#cfn-wafregional-webaclassociation-resourcearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "WebACLId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html#cfn-wafregional-webaclassociation-webaclid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::CloudFormationProduct": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html", + "Attributes": { + "ProductName": { + "PrimitiveType": "String" + }, + "ProvisioningArtifactIds": { + "PrimitiveType": "String" + }, + "ProvisioningArtifactNames": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Owner": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-owner", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SupportDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-supportdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Distributor": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-distributor", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SupportEmail": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-supportemail", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SupportUrl": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-supporturl", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ProvisioningArtifactParameters": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html#cfn-servicecatalog-cloudformationproduct-provisioningartifactparameters", + "ItemType": "ProvisioningArtifactProperties", + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::SimulationApplication": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html", + "Attributes": { + "CurrentRevisionId": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "RenderingEngine": { + "Type": "RenderingEngine", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-renderingengine", + "UpdateType": "Immutable" + }, + "SimulationSoftwareSuite": { + "Type": "SimulationSoftwareSuite", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-simulationsoftwaresuite", + "UpdateType": "Immutable" + }, + "CurrentRevisionId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-currentrevisionid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RobotSoftwareSuite": { + "Type": "RobotSoftwareSuite", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-robotsoftwaresuite", + "UpdateType": "Immutable" + }, + "Sources": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-sources", + "ItemType": "SourceConfig", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html#cfn-robomaker-simulationapplication-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTAnalytics::Channel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html", + "Properties": { + "ChannelName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-channelname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ChannelStorage": { + "Type": "ChannelStorage", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-channelstorage", + "UpdateType": "Mutable" + }, + "RetentionPeriod": { + "Type": "RetentionPeriod", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-retentionperiod", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html#cfn-iotanalytics-channel-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::App": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html", + "Attributes": { + "AppId": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "DefaultDomain": { + "PrimitiveType": "String" + }, + "AppName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "AutoBranchCreationConfig": { + "Type": "AutoBranchCreationConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-autobranchcreationconfig", + "UpdateType": "Mutable" + }, + "OauthToken": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-oauthtoken", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Repository": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-repository", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EnvironmentVariables": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-environmentvariables", + "ItemType": "EnvironmentVariable", + "UpdateType": "Mutable" + }, + "AccessToken": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-accesstoken", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BuildSpec": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-buildspec", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CustomRules": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-customrules", + "ItemType": "CustomRule", + "UpdateType": "Mutable" + }, + "BasicAuthConfig": { + "Type": "BasicAuthConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-basicauthconfig", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IAMServiceRole": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-iamservicerole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudWatch::AnomalyDetector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html", + "Properties": { + "MetricName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-metricname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Stat": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-stat", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Configuration": { + "Type": "Configuration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-configuration", + "UpdateType": "Mutable" + }, + "Dimensions": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-dimensions", + "ItemType": "Dimension", + "UpdateType": "Immutable" + }, + "Namespace": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html#cfn-cloudwatch-anomalydetector-namespace", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Cloud9::EnvironmentEC2": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Repositories": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-repositories", + "ItemType": "Repository", + "UpdateType": "Immutable" + }, + "OwnerArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-ownerarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AutomaticStopTimeMinutes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-automaticstoptimeminutes", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "SubnetId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-subnetid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-instancetype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html#cfn-cloud9-environmentec2-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::WAFRegional::WebACL": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html", + "Properties": { + "MetricName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-metricname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DefaultAction": { + "Type": "Action", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-defaultaction", + "UpdateType": "Mutable" + }, + "Rules": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-rules", + "ItemType": "Rule", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::CloudFront::CloudFrontOriginAccessIdentity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html", + "Attributes": { + "S3CanonicalUserId": { + "PrimitiveType": "String" + } + }, + "Properties": { + "CloudFrontOriginAccessIdentityConfig": { + "Type": "CloudFrontOriginAccessIdentityConfig", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::Endpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html", + "Attributes": { + "EndpointName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "EndpointName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html#cfn-sagemaker-endpoint-endpointname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EndpointConfigName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html#cfn-sagemaker-endpoint-endpointconfigname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html#cfn-sagemaker-endpoint-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppSync::ApiKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html", + "Attributes": { + "ApiKey": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Expires": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-expires", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Route53::HostedZone": { + "Attributes": { + "NameServers": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html", + "Properties": { + "HostedZoneConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-hostedzoneconfig", + "Required": false, + "Type": "HostedZoneConfig", + "UpdateType": "Mutable" + }, + "HostedZoneTags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-hostedzonetags", + "DuplicatesAllowed": true, + "ItemType": "HostedZoneTag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "QueryLoggingConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-queryloggingconfig", + "Required": false, + "Type": "QueryLoggingConfig", + "UpdateType": "Mutable" + }, + "VPCs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-vpcs", + "DuplicatesAllowed": true, + "ItemType": "VPC", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + } + } + }, + "AWS::EC2::Subnet": { + "Attributes": { + "AvailabilityZone": { + "PrimitiveType": "String" + }, + "Ipv6CidrBlocks": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "NetworkAclAssociationId": { + "PrimitiveType": "String" + }, + "VpcId": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html", + "Properties": { + "AssignIpv6AddressOnCreation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-assignipv6addressoncreation", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-availabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-cidrblock", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Ipv6CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-ipv6cidrblock", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MapPublicIpOnLaunch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-mappubliciponlaunch", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-awsec2subnet-prop-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::CodeDeploy::Application": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html", + "Properties": { + "ApplicationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html#cfn-codedeploy-application-applicationname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ComputePlatform": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html#cfn-codedeploy-application-computeplatform", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::PortfolioProductAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html", + "Properties": { + "SourcePortfolioId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html#cfn-servicecatalog-portfolioproductassociation-sourceportfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html#cfn-servicecatalog-portfolioproductassociation-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html#cfn-servicecatalog-portfolioproductassociation-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ProductId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html#cfn-servicecatalog-portfolioproductassociation-productid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceDiscovery::Instance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html", + "Properties": { + "InstanceAttributes": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-instanceattributes", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "InstanceId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-instanceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ServiceId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-serviceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::Instance": { + "Attributes": { + "AvailabilityZone": { + "PrimitiveType": "String" + }, + "PrivateDnsName": { + "PrimitiveType": "String" + }, + "PrivateIp": { + "PrimitiveType": "String" + }, + "PublicDnsName": { + "PrimitiveType": "String" + }, + "PublicIp": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html", + "Properties": { + "AdditionalInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-additionalinfo", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "Affinity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-affinity", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-availabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "BlockDeviceMappings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-blockdevicemappings", + "DuplicatesAllowed": true, + "ItemType": "BlockDeviceMapping", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + }, + "CpuOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-cpuoptions", + "Required": false, + "Type": "CpuOptions", + "UpdateType": "Immutable" + }, + "CreditSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-creditspecification", + "Required": false, + "Type": "CreditSpecification", + "UpdateType": "Mutable" + }, + "DisableApiTermination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-disableapitermination", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "EbsOptimized": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ebsoptimized", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Conditional" + }, + "ElasticGpuSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-elasticgpuspecifications", + "DuplicatesAllowed": false, + "ItemType": "ElasticGpuSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "ElasticInferenceAccelerators": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-elasticinferenceaccelerators", + "DuplicatesAllowed": false, + "ItemType": "ElasticInferenceAccelerator", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "HostId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-hostid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "IamInstanceProfile": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-iaminstanceprofile", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ImageId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-imageid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "InstanceInitiatedShutdownBehavior": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-instanceinitiatedshutdownbehavior", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-instancetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "Ipv6AddressCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ipv6addresscount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Ipv6Addresses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ipv6addresses", + "DuplicatesAllowed": true, + "ItemType": "InstanceIpv6Address", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "KernelId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-kernelid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "KeyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-keyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LaunchTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-launchtemplate", + "Required": false, + "Type": "LaunchTemplateSpecification", + "UpdateType": "Immutable" + }, + "LicenseSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-licensespecifications", + "DuplicatesAllowed": false, + "ItemType": "LicenseSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Monitoring": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-monitoring", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "NetworkInterfaces": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-networkinterfaces", + "DuplicatesAllowed": true, + "ItemType": "NetworkInterface", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "PlacementGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-placementgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PrivateIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-privateipaddress", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RamdiskId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ramdiskid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "SecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-securitygroupids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + }, + "SecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-securitygroups", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "SourceDestCheck": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-sourcedestcheck", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "SsmAssociations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ssmassociations", + "DuplicatesAllowed": true, + "ItemType": "SsmAssociation", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-subnetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Tenancy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-tenancy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "UserData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-userdata", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "Volumes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-volumes", + "DuplicatesAllowed": true, + "ItemType": "Volume", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EKS::Cluster": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html", + "Attributes": { + "Endpoint": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "CertificateAuthorityData": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Version": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-version", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-rolearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResourcesVpcConfig": { + "Type": "ResourcesVpcConfig", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-resourcesvpcconfig", + "UpdateType": "Immutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Events::EventBusPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html", + "Properties": { + "EventBusName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-eventbusname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Condition": { + "Type": "Condition", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-condition", + "UpdateType": "Mutable" + }, + "Action": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-action", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StatementId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-statementid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Principal": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html#cfn-events-eventbuspolicy-principal", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFormation::Stack": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html", + "Properties": { + "NotificationARNs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-notificationarns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Parameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-parameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TemplateURL": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TimeoutInMinutes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-timeoutinminutes", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::ByteMatchSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html", + "Properties": { + "ByteMatchTuples": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html#cfn-waf-bytematchset-bytematchtuples", + "DuplicatesAllowed": false, + "ItemType": "ByteMatchTuple", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html#cfn-waf-bytematchset-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Config::AggregationAuthorization": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html", + "Properties": { + "AuthorizedAccountId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html#cfn-config-aggregationauthorization-authorizedaccountid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AuthorizedAwsRegion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html#cfn-config-aggregationauthorization-authorizedawsregion", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::DocDB::DBCluster": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html", + "Attributes": { + "ClusterResourceId": { + "PrimitiveType": "String" + }, + "Endpoint": { + "PrimitiveType": "String" + }, + "Port": { + "PrimitiveType": "String" + }, + "ReadEndpoint": { + "PrimitiveType": "String" + } + }, + "Properties": { + "StorageEncrypted": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-storageencrypted", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "EngineVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-engineversion", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AvailabilityZones": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-availabilityzones", + "UpdateType": "Immutable" + }, + "SnapshotIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-snapshotidentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Port": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-port", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DBClusterIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-dbclusteridentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-preferredmaintenancewindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DBSubnetGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-dbsubnetgroupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredBackupWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-preferredbackupwindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MasterUserPassword": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-masteruserpassword", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VpcSecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-vpcsecuritygroupids", + "UpdateType": "Mutable" + }, + "MasterUsername": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-masterusername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DBClusterParameterGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-dbclusterparametergroupname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BackupRetentionPeriod": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-backupretentionperiod", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "EnableCloudwatchLogsExports": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html#cfn-docdb-dbcluster-enablecloudwatchlogsexports", + "UpdateType": "Mutable" + } + } + }, + "AWS::DAX::Cluster": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html", + "Attributes": { + "ClusterDiscoveryEndpoint": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "SSESpecification": { + "Type": "SSESpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-ssespecification", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ReplicationFactor": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-replicationfactor", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ParameterGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-parametergroupname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AvailabilityZones": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-availabilityzones", + "UpdateType": "Mutable" + }, + "IAMRoleARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-iamrolearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubnetGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-subnetgroupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-preferredmaintenancewindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotificationTopicARN": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-notificationtopicarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-securitygroupids", + "UpdateType": "Mutable" + }, + "NodeType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-nodetype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ClusterName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-clustername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::PatchBaseline": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html", + "Properties": { + "OperatingSystem": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-operatingsystem", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApprovalRules": { + "Type": "RuleGroup", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvalrules", + "UpdateType": "Mutable" + }, + "Sources": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-sources", + "ItemType": "PatchSource", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RejectedPatches": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-rejectedpatches", + "UpdateType": "Mutable" + }, + "ApprovedPatches": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvedpatches", + "UpdateType": "Mutable" + }, + "RejectedPatchesAction": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-rejectedpatchesaction", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PatchGroups": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-patchgroups", + "UpdateType": "Mutable" + }, + "ApprovedPatchesComplianceLevel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvedpatchescompliancelevel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApprovedPatchesEnableNonSecurity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-approvedpatchesenablenonsecurity", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "GlobalFilters": { + "Type": "PatchFilterGroup", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-globalfilters", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html", + "Properties": { + "ApplicationName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-applicationname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CloudWatchLoggingOption": { + "Type": "CloudWatchLoggingOption", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html#cfn-kinesisanalyticsv2-applicationcloudwatchloggingoption-cloudwatchloggingoption", + "UpdateType": "Mutable" + } + } + }, + "AWS::GuardDuty::Member": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html", + "Properties": { + "Status": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-status", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MemberId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-memberid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Email": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-email", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Message": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-message", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DisableEmailNotification": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-disableemailnotification", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DetectorId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html#cfn-guardduty-member-detectorid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::AcceptedPortfolioShare": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html", + "Properties": { + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html#cfn-servicecatalog-acceptedportfolioshare-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html#cfn-servicecatalog-acceptedportfolioshare-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceDiscovery::Service": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html", + "Attributes": { + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HealthCheckCustomConfig": { + "Type": "HealthCheckCustomConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-healthcheckcustomconfig", + "UpdateType": "Immutable" + }, + "DnsConfig": { + "Type": "DnsConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-dnsconfig", + "UpdateType": "Mutable" + }, + "NamespaceId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-namespaceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "HealthCheckConfig": { + "Type": "HealthCheckConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-healthcheckconfig", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html#cfn-servicediscovery-service-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::SecretsManager::ResourcePolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html", + "Properties": { + "SecretId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html#cfn-secretsmanager-resourcepolicy-secretid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResourcePolicy": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html#cfn-secretsmanager-resourcepolicy-resourcepolicy", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::SimulationApplicationVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html", + "Properties": { + "CurrentRevisionId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html#cfn-robomaker-simulationapplicationversion-currentrevisionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Application": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html#cfn-robomaker-simulationapplicationversion-application", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AutoScaling::ScalingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html", + "Properties": { + "AdjustmentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-adjustmenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AutoScalingGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-autoscalinggroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Cooldown": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-cooldown", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EstimatedInstanceWarmup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-estimatedinstancewarmup", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MetricAggregationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-metricaggregationtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MinAdjustmentMagnitude": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-minadjustmentmagnitude", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "PolicyType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-policytype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ScalingAdjustment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-scalingadjustment", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "StepAdjustments": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-stepadjustments", + "DuplicatesAllowed": false, + "ItemType": "StepAdjustment", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TargetTrackingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-autoscaling-scalingpolicy-targettrackingconfiguration", + "Required": false, + "Type": "TargetTrackingConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::Backup::BackupVault": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html", + "Attributes": { + "BackupVaultName": { + "PrimitiveType": "String" + }, + "BackupVaultArn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "BackupVaultTags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-backupvaulttags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "BackupVaultName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-backupvaultname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EncryptionKeyArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-encryptionkeyarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Notifications": { + "Type": "NotificationObjectType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-notifications", + "UpdateType": "Mutable" + }, + "AccessPolicy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html#cfn-backup-backupvault-accesspolicy", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Step": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html", + "Properties": { + "ActionOnFailure": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-actiononfailure", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "HadoopJarStep": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-hadoopjarstep", + "Required": true, + "Type": "HadoopJarStepConfig", + "UpdateType": "Immutable" + }, + "JobFlowId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-jobflowid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html#cfn-elasticmapreduce-step-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Config::ConfigurationRecorder": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RecordingGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-recordinggroup", + "Required": false, + "Type": "RecordingGroup", + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT1Click::Placement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html", + "Attributes": { + "PlacementName": { + "PrimitiveType": "String" + }, + "ProjectName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "PlacementName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html#cfn-iot1click-placement-placementname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ProjectName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html#cfn-iot1click-placement-projectname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AssociatedDevices": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html#cfn-iot1click-placement-associateddevices", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "Attributes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-placement.html#cfn-iot1click-placement-attributes", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html", + "Properties": { + "OwnerInformation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-ownerinformation", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "WindowId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-windowid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResourceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-resourcetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Targets": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-targets", + "ItemType": "Targets", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html#cfn-ssm-maintenancewindowtarget-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::DHCPOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html", + "Properties": { + "DomainName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-domainname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DomainNameServers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-domainnameservers", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "NetbiosNameServers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-netbiosnameservers", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "NetbiosNodeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-netbiosnodetype", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "NtpServers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-ntpservers", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::UsagePlan": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html", + "Properties": { + "ApiStages": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-apistages", + "DuplicatesAllowed": false, + "ItemType": "ApiStage", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Quota": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota", + "Required": false, + "Type": "QuotaSettings", + "UpdateType": "Mutable" + }, + "Throttle": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle", + "Required": false, + "Type": "ThrottleSettings", + "UpdateType": "Mutable" + }, + "UsagePlanName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-usageplanname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IAM::User": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html", + "Properties": { + "Groups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-groups", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "LoginProfile": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-loginprofile", + "Required": false, + "Type": "LoginProfile", + "UpdateType": "Mutable" + }, + "ManagedPolicyArns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-managepolicyarns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-path", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PermissionsBoundary": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-permissionsboundary", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Policies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-policies", + "DuplicatesAllowed": true, + "ItemType": "Policy", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "UserName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-username", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::OpsWorks::Instance": { + "Attributes": { + "AvailabilityZone": { + "PrimitiveType": "String" + }, + "PrivateDnsName": { + "PrimitiveType": "String" + }, + "PrivateIp": { + "PrimitiveType": "String" + }, + "PublicDnsName": { + "PrimitiveType": "String" + }, + "PublicIp": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html", + "Properties": { + "AgentVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-agentversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AmiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-amiid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Architecture": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-architecture", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AutoScalingType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-autoscalingtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-availabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "BlockDeviceMappings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-blockdevicemappings", + "DuplicatesAllowed": false, + "ItemType": "BlockDeviceMapping", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "EbsOptimized": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-ebsoptimized", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "ElasticIps": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-elasticips", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Hostname": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-hostname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InstallUpdatesOnBoot": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-installupdatesonboot", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "LayerIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-layerids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Os": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-os", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RootDeviceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-rootdevicetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SshKeyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-sshkeyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StackId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-stackid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-subnetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tenancy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-tenancy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "TimeBasedAutoScaling": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-timebasedautoscaling", + "Required": false, + "Type": "TimeBasedAutoScaling", + "UpdateType": "Immutable" + }, + "VirtualizationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-virtualizationtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Volumes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-volumes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolResourceServer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html", + "Properties": { + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Identifier": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-identifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Scopes": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-scopes", + "ItemType": "ResourceServerScopeType", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ConfigurationSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html", + "Properties": { + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ManagedBlockchain::Node": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html", + "Attributes": { + "MemberId": { + "PrimitiveType": "String" + }, + "NodeId": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "NetworkId": { + "PrimitiveType": "String" + } + }, + "Properties": { + "MemberId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html#cfn-managedblockchain-node-memberid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NetworkId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html#cfn-managedblockchain-node-networkid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NodeConfiguration": { + "Type": "NodeConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html#cfn-managedblockchain-node-nodeconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Datastore": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html", + "Properties": { + "DatastoreStorage": { + "Type": "DatastoreStorage", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-datastorestorage", + "UpdateType": "Mutable" + }, + "DatastoreName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-datastorename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RetentionPeriod": { + "Type": "RetentionPeriod", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-retentionperiod", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html#cfn-iotanalytics-datastore-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Job": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html", + "Properties": { + "Connections": { + "Type": "ConnectionsList", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-connections", + "UpdateType": "Mutable" + }, + "MaxRetries": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-maxretries", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Timeout": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-timeout", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "AllocatedCapacity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-allocatedcapacity", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Role": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-role", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DefaultArguments": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-defaultarguments", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "NotificationProperty": { + "Type": "NotificationProperty", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-notificationproperty", + "UpdateType": "Mutable" + }, + "WorkerType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-workertype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LogUri": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-loguri", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Command": { + "Type": "JobCommand", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-command", + "UpdateType": "Mutable" + }, + "GlueVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-glueversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ExecutionProperty": { + "Type": "ExecutionProperty", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-executionproperty", + "UpdateType": "Mutable" + }, + "SecurityConfiguration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-securityconfiguration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NumberOfWorkers": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-numberofworkers", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "MaxCapacity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-maxcapacity", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::S3::Bucket": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "DomainName": { + "PrimitiveType": "String" + }, + "DualStackDomainName": { + "PrimitiveType": "String" + }, + "RegionalDomainName": { + "PrimitiveType": "String" + }, + "WebsiteURL": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html", + "Properties": { + "AccelerateConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accelerateconfiguration", + "Required": false, + "Type": "AccelerateConfiguration", + "UpdateType": "Mutable" + }, + "AccessControl": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accesscontrol", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AnalyticsConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-analyticsconfigurations", + "DuplicatesAllowed": false, + "ItemType": "AnalyticsConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "BucketEncryption": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-bucketencryption", + "Required": false, + "Type": "BucketEncryption", + "UpdateType": "Mutable" + }, + "BucketName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "CorsConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-crossoriginconfig", + "Required": false, + "Type": "CorsConfiguration", + "UpdateType": "Mutable" + }, + "InventoryConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-inventoryconfigurations", + "DuplicatesAllowed": false, + "ItemType": "InventoryConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "LifecycleConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-lifecycleconfig", + "Required": false, + "Type": "LifecycleConfiguration", + "UpdateType": "Mutable" + }, + "LoggingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-loggingconfig", + "Required": false, + "Type": "LoggingConfiguration", + "UpdateType": "Mutable" + }, + "MetricsConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-metricsconfigurations", + "DuplicatesAllowed": false, + "ItemType": "MetricsConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "NotificationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-notification", + "Required": false, + "Type": "NotificationConfiguration", + "UpdateType": "Mutable" + }, + "ObjectLockConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockconfiguration", + "Required": false, + "Type": "ObjectLockConfiguration", + "UpdateType": "Mutable" + }, + "ObjectLockEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "PublicAccessBlockConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-publicaccessblockconfiguration", + "Required": false, + "Type": "PublicAccessBlockConfiguration", + "UpdateType": "Mutable" + }, + "ReplicationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-replicationconfiguration", + "Required": false, + "Type": "ReplicationConfiguration", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VersioningConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-versioning", + "Required": false, + "Type": "VersioningConfiguration", + "UpdateType": "Mutable" + }, + "WebsiteConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-websiteconfiguration", + "Required": false, + "Type": "WebsiteConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Version": { + "Attributes": { + "Version": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html", + "Properties": { + "CodeSha256": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-codesha256", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "FunctionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-functionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::SageMaker::NotebookInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html", + "Attributes": { + "NotebookInstanceName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "VolumeSizeInGB": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-volumesizeingb", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "AdditionalCodeRepositories": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-additionalcoderepositories", + "UpdateType": "Mutable" + }, + "DefaultCodeRepository": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-defaultcoderepository", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DirectInternetAccess": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-directinternetaccess", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AcceleratorTypes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-acceleratortypes", + "UpdateType": "Mutable" + }, + "SubnetId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-subnetid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-securitygroupids", + "UpdateType": "Immutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RootAccess": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-rootaccess", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotebookInstanceName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-notebookinstancename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-instancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LifecycleConfigName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-lifecycleconfigname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html#cfn-sagemaker-notebookinstance-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::BaiduChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html", + "Properties": { + "SecretKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html#cfn-pinpoint-baiduchannel-secretkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html#cfn-pinpoint-baiduchannel-apikey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html#cfn-pinpoint-baiduchannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html#cfn-pinpoint-baiduchannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::BasePathMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html", + "Properties": { + "BasePath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-basepath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DomainName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-domainname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-restapiid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Stage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-stage", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPool": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html", + "Attributes": { + "ProviderName": { + "PrimitiveType": "String" + }, + "ProviderURL": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "UserPoolTags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpooltags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Policies": { + "Type": "Policies", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-policies", + "UpdateType": "Mutable" + }, + "VerificationMessageTemplate": { + "Type": "VerificationMessageTemplate", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-verificationmessagetemplate", + "UpdateType": "Mutable" + }, + "MfaConfiguration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-mfaconfiguration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Schema": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-schema", + "ItemType": "SchemaAttribute", + "UpdateType": "Immutable" + }, + "AdminCreateUserConfig": { + "Type": "AdminCreateUserConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-admincreateuserconfig", + "UpdateType": "Mutable" + }, + "SmsAuthenticationMessage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsauthenticationmessage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UserPoolName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpoolname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SmsVerificationMessage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsverificationmessage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UserPoolAddOns": { + "Type": "UserPoolAddOns", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpooladdons", + "UpdateType": "Mutable" + }, + "EmailConfiguration": { + "Type": "EmailConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailconfiguration", + "UpdateType": "Mutable" + }, + "SmsConfiguration": { + "Type": "SmsConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsconfiguration", + "UpdateType": "Mutable" + }, + "AliasAttributes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-aliasattributes", + "UpdateType": "Immutable" + }, + "EnabledMfas": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-enabledmfas", + "UpdateType": "Mutable" + }, + "EmailVerificationSubject": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailverificationsubject", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LambdaConfig": { + "Type": "LambdaConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-lambdaconfig", + "UpdateType": "Mutable" + }, + "UsernameAttributes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-usernameattributes", + "UpdateType": "Immutable" + }, + "AutoVerifiedAttributes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-autoverifiedattributes", + "UpdateType": "Mutable" + }, + "DeviceConfiguration": { + "Type": "DeviceConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-deviceconfiguration", + "UpdateType": "Mutable" + }, + "EmailVerificationMessage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailverificationmessage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EgressOnlyInternetGateway": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html", + "Properties": { + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html#cfn-ec2-egressonlyinternetgateway-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGatewayV2::Api": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html", + "Properties": { + "RouteSelectionExpression": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-routeselectionexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Version": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-version", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ProtocolType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-protocoltype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DisableSchemaValidation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-disableschemavalidation", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiKeySelectionExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-apikeyselectionexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DLM::LifecyclePolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ExecutionRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-executionrolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "State": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-state", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PolicyDetails": { + "Type": "PolicyDetails", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-policydetails", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::IPSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html", + "Properties": { + "IPSetDescriptors": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html#cfn-wafregional-ipset-ipsetdescriptors", + "ItemType": "IPSetDescriptor", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html#cfn-wafregional-ipset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::RDS::DBInstance": { + "Attributes": { + "Endpoint.Address": { + "PrimitiveType": "String" + }, + "Endpoint.Port": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html", + "Properties": { + "AllocatedStorage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-allocatedstorage", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AllowMajorVersionUpgrade": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-allowmajorversionupgrade", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "AssociatedRoles": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-associatedroles", + "DuplicatesAllowed": false, + "ItemType": "DBInstanceRole", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "AutoMinorVersionUpgrade": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-autominorversionupgrade", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Conditional" + }, + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-availabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "BackupRetentionPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-backupretentionperiod", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Conditional" + }, + "CharacterSetName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-charactersetname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "CopyTagsToSnapshot": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-copytagstosnapshot", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DBClusterIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbclusteridentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DBInstanceClass": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbinstanceclass", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "DBInstanceIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbinstanceidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DBName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DBParameterGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbparametergroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "DBSecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsecuritygroups", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "DBSnapshotIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsnapshotidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DBSubnetGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsubnetgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DeleteAutomatedBackups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-deleteautomatedbackups", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DeletionProtection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-deletionprotection", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Domain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-domain", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DomainIAMRoleName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-domainiamrolename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EnableCloudwatchLogsExports": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-enablecloudwatchlogsexports", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EnableIAMDatabaseAuthentication": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-enableiamdatabaseauthentication", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "EnablePerformanceInsights": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-enableperformanceinsights", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Engine": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-engine", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EngineVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-engineversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "Iops": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-iops", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LicenseModel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-licensemodel", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MasterUserPassword": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-masteruserpassword", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MasterUsername": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-masterusername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "MonitoringInterval": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-monitoringinterval", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Conditional" + }, + "MonitoringRoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-monitoringrolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MultiAZ": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-multiaz", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "OptionGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-optiongroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PerformanceInsightsKMSKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-performanceinsightskmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "PerformanceInsightsRetentionPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-performanceinsightsretentionperiod", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-port", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PreferredBackupWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-preferredbackupwindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PreferredMaintenanceWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-preferredmaintenancewindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "ProcessorFeatures": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-processorfeatures", + "DuplicatesAllowed": false, + "ItemType": "ProcessorFeature", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PromotionTier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-promotiontier", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "PubliclyAccessible": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-publiclyaccessible", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceDBInstanceIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-sourcedbinstanceidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceRegion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-sourceregion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "StorageEncrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-storageencrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "StorageType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-storagetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Timezone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-timezone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "UseDefaultProcessorFeatures": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-usedefaultprocessorfeatures", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "VPCSecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-vpcsecuritygroups", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::NetworkInterfaceAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html", + "Properties": { + "DeleteOnTermination": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-deleteonterm", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "DeviceIndex": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-deviceindex", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "InstanceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-instanceid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "NetworkInterfaceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-networkinterfaceid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::RobotApplication": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html", + "Attributes": { + "CurrentRevisionId": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "CurrentRevisionId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-currentrevisionid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RobotSoftwareSuite": { + "Type": "RobotSoftwareSuite", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-robotsoftwaresuite", + "UpdateType": "Immutable" + }, + "Sources": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-sources", + "ItemType": "SourceConfig", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html#cfn-robomaker-robotapplication-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::CustomerGateway": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html", + "Properties": { + "BgpAsn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-bgpasn", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Immutable" + }, + "IpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-ipaddress", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceDiscovery::HttpNamespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html", + "Attributes": { + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html#cfn-servicediscovery-httpnamespace-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html#cfn-servicediscovery-httpnamespace-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::Stage": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html", + "Properties": { + "AccessLogSetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting", + "Required": false, + "Type": "AccessLogSetting", + "UpdateType": "Mutable" + }, + "CacheClusterEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclusterenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheClusterSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclustersize", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CanarySetting": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting", + "Required": false, + "Type": "CanarySetting", + "UpdateType": "Mutable" + }, + "ClientCertificateId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-clientcertificateid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DeploymentId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-deploymentid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DocumentationVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-documentationversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MethodSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings", + "DuplicatesAllowed": false, + "ItemType": "MethodSetting", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "StageName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-stagename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TracingEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tracingenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Variables": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-variables", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + } + } + }, + "AWS::SageMaker::CodeRepository": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html", + "Attributes": { + "CodeRepositoryName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "CodeRepositoryName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html#cfn-sagemaker-coderepository-coderepositoryname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "GitConfig": { + "Type": "GitConfig", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html#cfn-sagemaker-coderepository-gitconfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::SDB::Domain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-simpledb.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-simpledb.html#cfn-sdb-domain-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolClient": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html", + "Attributes": { + "ClientSecret": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "AnalyticsConfiguration": { + "Type": "AnalyticsConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-analyticsconfiguration", + "UpdateType": "Mutable" + }, + "GenerateSecret": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-generatesecret", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "CallbackURLs": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-callbackurls", + "UpdateType": "Mutable" + }, + "AllowedOAuthScopes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-allowedoauthscopes", + "UpdateType": "Mutable" + }, + "ReadAttributes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-readattributes", + "UpdateType": "Mutable" + }, + "AllowedOAuthFlowsUserPoolClient": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-allowedoauthflowsuserpoolclient", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "DefaultRedirectURI": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-defaultredirecturi", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SupportedIdentityProviders": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-supportedidentityproviders", + "UpdateType": "Mutable" + }, + "ClientName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-clientname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AllowedOAuthFlows": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-allowedoauthflows", + "UpdateType": "Mutable" + }, + "ExplicitAuthFlows": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-explicitauthflows", + "UpdateType": "Mutable" + }, + "LogoutURLs": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-logouturls", + "UpdateType": "Mutable" + }, + "RefreshTokenValidity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-refreshtokenvalidity", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "WriteAttributes": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-writeattributes", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::Input": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html", + "Properties": { + "InputDefinition": { + "Type": "InputDefinition", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-inputdefinition", + "UpdateType": "Mutable" + }, + "InputName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-inputname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InputDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-inputdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html#cfn-iotevents-input-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECR::Repository": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html", + "Properties": { + "LifecyclePolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-lifecyclepolicy", + "Required": false, + "Type": "LifecyclePolicy", + "UpdateType": "Mutable" + }, + "RepositoryName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositoryname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RepositoryPolicyText": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositorypolicytext", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::GatewayResponse": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html", + "Properties": { + "ResponseParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responseparameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "ResponseTemplates": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responsetemplates", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "ResponseType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responsetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "StatusCode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-statuscode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Database": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html", + "Properties": { + "DatabaseInput": { + "Type": "DatabaseInput", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html#cfn-glue-database-databaseinput", + "UpdateType": "Mutable" + }, + "CatalogId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html#cfn-glue-database-catalogid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGatewayV2::RouteResponse": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html", + "Properties": { + "RouteResponseKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-routeresponsekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResponseParameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-responseparameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "RouteId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-routeid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ModelSelectionExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-modelselectionexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResponseModels": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html#cfn-apigatewayv2-routeresponse-responsemodels", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::ClientCertificate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html#cfn-apigateway-clientcertificate-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::LoggerDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html", + "Properties": { + "LoggerDefinitionId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html#cfn-greengrass-loggerdefinitionversion-loggerdefinitionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Loggers": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html#cfn-greengrass-loggerdefinitionversion-loggers", + "ItemType": "Logger", + "UpdateType": "Immutable" + } + } + }, + "AWS::RDS::DBSecurityGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html", + "Properties": { + "DBSecurityGroupIngress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-dbsecuritygroupingress", + "DuplicatesAllowed": false, + "ItemType": "Ingress", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "EC2VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-ec2vpcid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "GroupDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-groupdescription", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::KMS::Alias": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html", + "Properties": { + "AliasName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-aliasname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "TargetKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-targetkeyid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Redshift::ClusterSubnetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-description", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-subnetids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::EIPAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html", + "Properties": { + "AllocationId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-allocationid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "EIP": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-eip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "InstanceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-instanceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "NetworkInterfaceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-networkinterfaceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "PrivateIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-PrivateIpAddress", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPNGateway": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html", + "Properties": { + "AmazonSideAsn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-amazonsideasn", + "PrimitiveType": "Long", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::GCMChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html", + "Properties": { + "ApiKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-apikey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::GuardDuty::Detector": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html", + "Properties": { + "FindingPublishingFrequency": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html#cfn-guardduty-detector-findingpublishingfrequency", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enable": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html#cfn-guardduty-detector-enable", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceDiscovery::PrivateDnsNamespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html", + "Attributes": { + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Vpc": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-vpc", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::DevEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html", + "Properties": { + "ExtraJarsS3Path": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-extrajarss3path", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PublicKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-publickey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NumberOfNodes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-numberofnodes", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Arguments": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-arguments", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "SubnetId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-subnetid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-securitygroupids", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "WorkerType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-workertype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EndpointName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-endpointname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "GlueVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-glueversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ExtraPythonLibsS3Path": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-extrapythonlibss3path", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SecurityConfiguration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-securityconfiguration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NumberOfWorkers": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-numberofworkers", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html#cfn-glue-devendpoint-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::UserProfile": { + "Attributes": { + "SshUsername": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html", + "Properties": { + "AllowSelfManagement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-allowselfmanagement", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "IamUserArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-iamuserarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SshPublicKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-sshpublickey", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SshUsername": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-sshusername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Neptune::DBSubnetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html", + "Properties": { + "DBSubnetGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-dbsubnetgroupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DBSubnetGroupDescription": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-dbsubnetgroupdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-subnetids", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html#cfn-neptune-dbsubnetgroup-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::User": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html", + "Properties": { + "UserName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-username", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "FirstName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-firstname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "MessageAction": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-messageaction", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "LastName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-lastname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AuthenticationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html#cfn-appstream-user-authenticationtype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::PinpointEmail::DedicatedIpPool": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html", + "Properties": { + "PoolName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html#cfn-pinpointemail-dedicatedippool-poolname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html#cfn-pinpointemail-dedicatedippool-tags", + "ItemType": "Tags", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPNConnection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html", + "Properties": { + "CustomerGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-customergatewayid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "StaticRoutesOnly": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-StaticRoutesOnly", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TransitGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-transitgatewayid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "VpnGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-vpngatewayid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "VpnTunnelOptionsSpecifications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-vpntunneloptionsspecifications", + "DuplicatesAllowed": false, + "ItemType": "VpnTunnelOptionsSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalyticsV2::Application": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html", + "Properties": { + "ApplicationName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-applicationname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RuntimeEnvironment": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-runtimeenvironment", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ApplicationConfiguration": { + "Type": "ApplicationConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-applicationconfiguration", + "UpdateType": "Mutable" + }, + "ApplicationDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-applicationdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServiceExecutionRole": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html#cfn-kinesisanalyticsv2-application-serviceexecutionrole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::Fleet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ComputeCapacity": { + "Type": "ComputeCapacity", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-computecapacity", + "UpdateType": "Mutable" + }, + "VpcConfig": { + "Type": "VpcConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-vpcconfig", + "UpdateType": "Mutable" + }, + "FleetType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-fleettype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EnableDefaultInternetAccess": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-enabledefaultinternetaccess", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DomainJoinInfo": { + "Type": "DomainJoinInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-domainjoininfo", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ImageName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-imagename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MaxUserDurationInSeconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-maxuserdurationinseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "IdleDisconnectTimeoutInSeconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-idledisconnecttimeoutinseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DisconnectTimeoutInSeconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-disconnecttimeoutinseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DisplayName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-displayname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-instancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "ImageArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html#cfn-appstream-fleet-imagearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Logs::SubscriptionFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html", + "Properties": { + "DestinationArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-destinationarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "FilterPattern": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-filterpattern", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "LogGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-loggroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-rolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::FunctionDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html", + "Properties": { + "DefaultConfig": { + "Type": "DefaultConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-defaultconfig", + "UpdateType": "Immutable" + }, + "Functions": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functions", + "ItemType": "Function", + "UpdateType": "Immutable" + }, + "FunctionDefinitionId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html#cfn-greengrass-functiondefinitionversion-functiondefinitionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AmazonMQ::Configuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html", + "Attributes": { + "Revision": { + "PrimitiveType": "Integer" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "EngineVersion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-engineversion", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EngineType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-enginetype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Data": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-data", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-tags", + "ItemType": "TagsEntry", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html#cfn-amazonmq-configuration-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Logs::Destination": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html", + "Properties": { + "DestinationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "DestinationPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationpolicy", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TargetArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-targetarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Redshift::ClusterSecurityGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-description", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::TransitGatewayRouteTable": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html", + "Properties": { + "TransitGatewayId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html#cfn-ec2-transitgatewayroutetable-transitgatewayid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html#cfn-ec2-transitgatewayroutetable-tags", + "ItemType": "Tag", + "UpdateType": "Immutable" + } + } + }, + "AWS::WAF::XssMatchSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html#cfn-waf-xssmatchset-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "XssMatchTuples": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html#cfn-waf-xssmatchset-xssmatchtuples", + "DuplicatesAllowed": false, + "ItemType": "XssMatchTuple", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53::HealthCheck": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html", + "Properties": { + "HealthCheckConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html#cfn-route53-healthcheck-healthcheckconfig", + "Required": true, + "Type": "HealthCheckConfig", + "UpdateType": "Mutable" + }, + "HealthCheckTags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html#cfn-route53-healthcheck-healthchecktags", + "DuplicatesAllowed": true, + "ItemType": "HealthCheckTag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Channel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "Inputs": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Properties": { + "InputAttachments": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-inputattachments", + "ItemType": "InputAttachment", + "UpdateType": "Mutable" + }, + "InputSpecification": { + "Type": "InputSpecification", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-inputspecification", + "UpdateType": "Mutable" + }, + "ChannelClass": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-channelclass", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EncoderSettings": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-encodersettings", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Destinations": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-destinations", + "ItemType": "OutputDestination", + "UpdateType": "Mutable" + }, + "LogLevel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-loglevel", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html#cfn-medialive-channel-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::DBClusterParameterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-description", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Family": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-family", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Parameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-parameters", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Neptune::DBInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html", + "Attributes": { + "Endpoint": { + "PrimitiveType": "String" + }, + "Port": { + "PrimitiveType": "String" + } + }, + "Properties": { + "DBParameterGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbparametergroupname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DBInstanceClass": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbinstanceclass", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AllowMajorVersionUpgrade": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-allowmajorversionupgrade", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DBClusterIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbclusteridentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AvailabilityZone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-availabilityzone", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-preferredmaintenancewindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AutoMinorVersionUpgrade": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-autominorversionupgrade", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DBSubnetGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbsubnetgroupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DBInstanceIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbinstanceidentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DBSnapshotIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-dbsnapshotidentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html#cfn-neptune-dbinstance-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPCEndpointService": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html", + "Properties": { + "NetworkLoadBalancerArns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-networkloadbalancerarns", + "UpdateType": "Mutable" + }, + "AcceptanceRequired": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-acceptancerequired", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Kinesis::StreamConsumer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html", + "Attributes": { + "ConsumerCreationTimestamp": { + "PrimitiveType": "String" + }, + "ConsumerName": { + "PrimitiveType": "String" + }, + "ConsumerARN": { + "PrimitiveType": "String" + }, + "ConsumerStatus": { + "PrimitiveType": "String" + }, + "StreamARN": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ConsumerName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html#cfn-kinesis-streamconsumer-consumername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "StreamARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html#cfn-kinesis-streamconsumer-streamarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::GuardDuty::Master": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html", + "Properties": { + "DetectorId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-detectorid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "MasterId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-masterid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "InvitationId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-invitationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::S3::BucketPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html", + "Properties": { + "Bucket": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-bucket", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-policydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFormation::CustomResource": { + "AdditionalProperties": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html", + "Properties": { + "ServiceToken": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html#cfn-customresource-servicetoken", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::StackSetConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html", + "Properties": { + "Description": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StackInstanceControl": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-stackinstancecontrol", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ProductId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-productid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RegionList": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-regionlist", + "UpdateType": "Mutable" + }, + "AdminRole": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-adminrole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AccountList": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-accountlist", + "UpdateType": "Mutable" + }, + "ExecutionRole": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html#cfn-servicecatalog-stacksetconstraint-executionrole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::ClientVpnRoute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html", + "Properties": { + "ClientVpnEndpointId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html#cfn-ec2-clientvpnroute-clientvpnendpointid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TargetVpcSubnetId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html#cfn-ec2-clientvpnroute-targetvpcsubnetid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html#cfn-ec2-clientvpnroute-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DestinationCidrBlock": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html#cfn-ec2-clientvpnroute-destinationcidrblock", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::Crawler": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html", + "Properties": { + "Role": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-role", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Classifiers": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-classifiers", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SchemaChangePolicy": { + "Type": "SchemaChangePolicy", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-schemachangepolicy", + "UpdateType": "Mutable" + }, + "Configuration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-configuration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Schedule": { + "Type": "Schedule", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-schedule", + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-databasename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Targets": { + "Type": "Targets", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-targets", + "UpdateType": "Mutable" + }, + "CrawlerSecurityConfiguration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-crawlersecurityconfiguration", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TablePrefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-tableprefix", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html#cfn-glue-crawler-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::DocumentationVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DocumentationVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-documentationversion", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::SSM::MaintenanceWindowTask": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html", + "Properties": { + "MaxErrors": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-maxerrors", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServiceRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-servicerolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Priority": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-priority", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "MaxConcurrency": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-maxconcurrency", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Targets": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-targets", + "ItemType": "Target", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TaskArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-taskarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TaskInvocationParameters": { + "Type": "TaskInvocationParameters", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-taskinvocationparameters", + "UpdateType": "Mutable" + }, + "WindowId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-windowid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TaskParameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-taskparameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "TaskType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-tasktype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "LoggingInfo": { + "Type": "LoggingInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html#cfn-ssm-maintenancewindowtask-logginginfo", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::MLTransform": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html", + "Properties": { + "Role": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-role", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MaxRetries": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-maxretries", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "WorkerType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-workertype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Timeout": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-timeout", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TransformParameters": { + "Type": "TransformParameters", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-transformparameters", + "UpdateType": "Mutable" + }, + "InputRecordTables": { + "Type": "InputRecordTables", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-inputrecordtables", + "UpdateType": "Immutable" + }, + "NumberOfWorkers": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-numberofworkers", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MaxCapacity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html#cfn-glue-mltransform-maxcapacity", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::UsagePlanKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html", + "Properties": { + "KeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-keyid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "KeyType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-keytype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "UsagePlanId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-usageplanid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Transfer::Server": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html", + "Attributes": { + "ServerId": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "LoggingRole": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-loggingrole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IdentityProviderDetails": { + "Type": "IdentityProviderDetails", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-identityproviderdetails", + "UpdateType": "Mutable" + }, + "EndpointType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-endpointtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EndpointDetails": { + "Type": "EndpointDetails", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-endpointdetails", + "UpdateType": "Mutable" + }, + "IdentityProviderType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-identityprovidertype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::SecurityConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SecurityConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-securityconfiguration", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Cognito::UserPoolUserToGroupAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html", + "Properties": { + "GroupName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-groupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Username": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-username", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::APNSChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html", + "Properties": { + "BundleId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-bundleid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PrivateKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-privatekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DefaultAuthenticationMethod": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-defaultauthenticationmethod", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TokenKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-tokenkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TeamId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-teamid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Certificate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-certificate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TokenKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html#cfn-pinpoint-apnschannel-tokenkeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::Fleet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html#cfn-robomaker-fleet-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html#cfn-robomaker-fleet-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::Classifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html", + "Properties": { + "XMLClassifier": { + "Type": "XMLClassifier", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-xmlclassifier", + "UpdateType": "Mutable" + }, + "JsonClassifier": { + "Type": "JsonClassifier", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-jsonclassifier", + "UpdateType": "Mutable" + }, + "CsvClassifier": { + "Type": "CsvClassifier", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-csvclassifier", + "UpdateType": "Mutable" + }, + "GrokClassifier": { + "Type": "GrokClassifier", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html#cfn-glue-classifier-grokclassifier", + "UpdateType": "Mutable" + } + } + }, + "AWS::AmazonMQ::Broker": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html", + "Attributes": { + "IpAddresses": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "OpenWireEndpoints": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "ConfigurationRevision": { + "PrimitiveType": "Integer" + }, + "StompEndpoints": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "MqttEndpoints": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "AmqpEndpoints": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "Arn": { + "PrimitiveType": "String" + }, + "ConfigurationId": { + "PrimitiveType": "String" + }, + "WssEndpoints": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Properties": { + "SecurityGroups": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-securitygroups", + "UpdateType": "Mutable" + }, + "EngineVersion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-engineversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Configuration": { + "Type": "ConfigurationId", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-configuration", + "UpdateType": "Mutable" + }, + "MaintenanceWindowStartTime": { + "Type": "MaintenanceWindow", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-maintenancewindowstarttime", + "UpdateType": "Immutable" + }, + "HostInstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-hostinstancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AutoMinorVersionUpgrade": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-autominorversionupgrade", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Users": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-users", + "ItemType": "User", + "UpdateType": "Mutable" + }, + "Logs": { + "Type": "LogList", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-logs", + "UpdateType": "Mutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-subnetids", + "UpdateType": "Immutable" + }, + "BrokerName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-brokername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DeploymentMode": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-deploymentmode", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EngineType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-enginetype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PubliclyAccessible": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-publiclyaccessible", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "EncryptionOptions": { + "Type": "EncryptionOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-encryptionoptions", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-tags", + "ItemType": "TagsEntry", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticBeanstalk::ConfigurationTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html", + "Properties": { + "ApplicationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-applicationname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EnvironmentId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-environmentid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "OptionSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-optionsettings", + "DuplicatesAllowed": true, + "ItemType": "ConfigurationOptionSetting", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PlatformArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-platformarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SolutionStackName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-solutionstackname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration", + "Required": false, + "Type": "SourceConfiguration", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppSync::DataSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html", + "Attributes": { + "DataSourceArn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServiceRoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HttpConfig": { + "Type": "HttpConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-httpconfig", + "UpdateType": "Mutable" + }, + "RelationalDatabaseConfig": { + "Type": "RelationalDatabaseConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-relationaldatabaseconfig", + "UpdateType": "Mutable" + }, + "LambdaConfig": { + "Type": "LambdaConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-lambdaconfig", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DynamoDBConfig": { + "Type": "DynamoDBConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-dynamodbconfig", + "UpdateType": "Mutable" + }, + "ElasticsearchConfig": { + "Type": "ElasticsearchConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-elasticsearchconfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::IdentityPoolRoleAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html", + "Properties": { + "RoleMappings": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-rolemappings", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "IdentityPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-identitypoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Roles": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-roles", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::Group": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html", + "Attributes": { + "RoleAttachedAt": { + "PrimitiveType": "String" + }, + "LatestVersionArn": { + "PrimitiveType": "String" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "RoleArn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "InitialVersion": { + "Type": "GroupVersion", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-initialversion", + "UpdateType": "Immutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html#cfn-greengrass-group-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::PinpointEmail::Identity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html", + "Attributes": { + "IdentityDNSRecordName3": { + "PrimitiveType": "String" + }, + "IdentityDNSRecordName1": { + "PrimitiveType": "String" + }, + "IdentityDNSRecordName2": { + "PrimitiveType": "String" + }, + "IdentityDNSRecordValue3": { + "PrimitiveType": "String" + }, + "IdentityDNSRecordValue2": { + "PrimitiveType": "String" + }, + "IdentityDNSRecordValue1": { + "PrimitiveType": "String" + } + }, + "Properties": { + "FeedbackForwardingEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-feedbackforwardingenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DkimSigningEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-dkimsigningenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-tags", + "ItemType": "Tags", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "MailFromAttributes": { + "Type": "MailFromAttributes", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html#cfn-pinpointemail-identity-mailfromattributes", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::Input": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html", + "Attributes": { + "Destinations": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Sources": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Properties": { + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-type", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Destinations": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-destinations", + "ItemType": "InputDestinationRequest", + "UpdateType": "Mutable" + }, + "Vpc": { + "Type": "InputVpcRequest", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-vpc", + "UpdateType": "Immutable" + }, + "MediaConnectFlows": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-mediaconnectflows", + "ItemType": "MediaConnectFlowRequest", + "UpdateType": "Mutable" + }, + "InputSecurityGroups": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-inputsecuritygroups", + "UpdateType": "Mutable" + }, + "Sources": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-sources", + "ItemType": "InputSourceRequest", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html#cfn-medialive-input-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::Rule": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EventPattern": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-rolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ScheduleExpression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-scheduleexpression", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "State": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Targets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets", + "DuplicatesAllowed": false, + "ItemType": "Target", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::CustomActionType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html", + "Properties": { + "Category": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-category", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ConfigurationProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-configurationproperties", + "DuplicatesAllowed": false, + "ItemType": "ConfigurationProperties", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "InputArtifactDetails": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-inputartifactdetails", + "Required": true, + "Type": "ArtifactDetails", + "UpdateType": "Immutable" + }, + "OutputArtifactDetails": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-outputartifactdetails", + "Required": true, + "Type": "ArtifactDetails", + "UpdateType": "Immutable" + }, + "Provider": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-provider", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Settings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-settings", + "Required": false, + "Type": "Settings", + "UpdateType": "Immutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-version", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::AppMesh::VirtualNode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html", + "Attributes": { + "Uid": { + "PrimitiveType": "String" + }, + "MeshName": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "VirtualNodeName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "MeshName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-meshname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Spec": { + "Type": "VirtualNodeSpec", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-spec", + "UpdateType": "Mutable" + }, + "VirtualNodeName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-virtualnodename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html#cfn-appmesh-virtualnode-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualRouter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html", + "Attributes": { + "Uid": { + "PrimitiveType": "String" + }, + "MeshName": { + "PrimitiveType": "String" + }, + "VirtualRouterName": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "MeshName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-meshname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "VirtualRouterName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-virtualroutername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Spec": { + "Type": "VirtualRouterSpec", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-spec", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html#cfn-appmesh-virtualrouter-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::ConnectorDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html", + "Attributes": { + "LatestVersionArn": { + "PrimitiveType": "String" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "InitialVersion": { + "Type": "ConnectorDefinitionVersion", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-initialversion", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html#cfn-greengrass-connectordefinition-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::PlacementGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html", + "Properties": { + "Strategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html#cfn-ec2-placementgroup-strategy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::WAFRegional::SizeConstraintSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html", + "Properties": { + "SizeConstraints": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html#cfn-wafregional-sizeconstraintset-sizeconstraints", + "ItemType": "SizeConstraint", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html#cfn-wafregional-sizeconstraintset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::RequestValidator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html#cfn-apigateway-requestvalidator-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html#cfn-apigateway-requestvalidator-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ValidateRequestBody": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html#cfn-apigateway-requestvalidator-validaterequestbody", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "ValidateRequestParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html#cfn-apigateway-requestvalidator-validaterequestparameters", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppMesh::VirtualService": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html", + "Attributes": { + "Uid": { + "PrimitiveType": "String" + }, + "MeshName": { + "PrimitiveType": "String" + }, + "VirtualServiceName": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "MeshName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-meshname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "VirtualServiceName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-virtualservicename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Spec": { + "Type": "VirtualServiceSpec", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-spec", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html#cfn-appmesh-virtualservice-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::DBSecurityGroupIngress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html", + "Properties": { + "CIDRIP": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-cidrip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DBSecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-dbsecuritygroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "EC2SecurityGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EC2SecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EC2SecurityGroupOwnerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupownerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTThingsGraph::FlowTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html", + "Properties": { + "CompatibleNamespaceVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html#cfn-iotthingsgraph-flowtemplate-compatiblenamespaceversion", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + }, + "Definition": { + "Type": "DefinitionDocument", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html#cfn-iotthingsgraph-flowtemplate-definition", + "UpdateType": "Mutable" + } + } + }, + "AWS::Logs::LogGroup": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html", + "Properties": { + "LogGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-cwl-loggroup-loggroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RetentionInDays": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-cwl-loggroup-retentionindays", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::CodePipeline::Webhook": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html", + "Attributes": { + "Url": { + "PrimitiveType": "String" + } + }, + "Properties": { + "AuthenticationConfiguration": { + "Type": "WebhookAuthConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-authenticationconfiguration", + "UpdateType": "Mutable" + }, + "Filters": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-filters", + "ItemType": "WebhookFilterRule", + "UpdateType": "Mutable" + }, + "Authentication": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-authentication", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TargetPipeline": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-targetpipeline", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TargetAction": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-targetaction", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TargetPipelineVersion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-targetpipelineversion", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "RegisterWithThirdParty": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html#cfn-codepipeline-webhook-registerwiththirdparty", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::ImageBuilder": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html", + "Attributes": { + "StreamingUrl": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ImageName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VpcConfig": { + "Type": "VpcConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-vpcconfig", + "UpdateType": "Mutable" + }, + "EnableDefaultInternetAccess": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-enabledefaultinternetaccess", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DisplayName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-displayname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DomainJoinInfo": { + "Type": "DomainJoinInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-domainjoininfo", + "UpdateType": "Mutable" + }, + "AppstreamAgentVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-appstreamagentversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-instancetype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ImageArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScalingPlans::ScalingPlan": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html", + "Attributes": { + "ScalingPlanName": { + "PrimitiveType": "String" + }, + "ScalingPlanVersion": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ApplicationSource": { + "Type": "ApplicationSource", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html#cfn-autoscalingplans-scalingplan-applicationsource", + "UpdateType": "Mutable" + }, + "ScalingInstructions": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html#cfn-autoscalingplans-scalingplan-scalinginstructions", + "ItemType": "ScalingInstruction", + "UpdateType": "Mutable" + } + } + }, + "AWS::WAFRegional::XssMatchSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html", + "Properties": { + "XssMatchTuples": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html#cfn-wafregional-xssmatchset-xssmatchtuples", + "ItemType": "XssMatchTuple", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html#cfn-wafregional-xssmatchset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::NetworkAclEntry": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html", + "Properties": { + "CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-cidrblock", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Egress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-egress", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Icmp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-icmp", + "Required": false, + "Type": "Icmp", + "UpdateType": "Mutable" + }, + "Ipv6CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-ipv6cidrblock", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NetworkAclId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-networkaclid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "PortRange": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-portrange", + "Required": false, + "Type": "PortRange", + "UpdateType": "Mutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-protocol", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "RuleAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-ruleaction", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RuleNumber": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-rulenumber", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::InternetGateway": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html", + "Properties": { + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html#cfn-ec2-internetgateway-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::ListenerCertificate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html", + "Properties": { + "Certificates": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html#cfn-elasticloadbalancingv2-listenercertificate-certificates", + "DuplicatesAllowed": false, + "ItemType": "Certificate", + "Required": true, + "Type": "List", + "UpdateType": "Immutable" + }, + "ListenerArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html#cfn-elasticloadbalancingv2-listenercertificate-listenerarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::IAM::Role": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "RoleId": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html", + "Properties": { + "AssumeRolePolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ManagedPolicyArns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-managepolicyarns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MaxSessionDuration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-maxsessionduration", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PermissionsBoundary": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Policies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies", + "DuplicatesAllowed": true, + "ItemType": "Policy", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "RoleName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-rolename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Neptune::DBParameterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html", + "Properties": { + "Description": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Parameters": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Family": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-family", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html#cfn-neptune-dbparametergroup-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::LaunchTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html", + "Attributes": { + "LatestVersionNumber": { + "PrimitiveType": "String" + }, + "DefaultVersionNumber": { + "PrimitiveType": "String" + } + }, + "Properties": { + "LaunchTemplateName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#cfn-ec2-launchtemplate-launchtemplatename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "LaunchTemplateData": { + "Type": "LaunchTemplateData", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#cfn-ec2-launchtemplate-launchtemplatedata", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Volume": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html", + "Properties": { + "Ec2VolumeId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-ec2volumeid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "MountPoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-mountpoint", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StackId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-stackid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::TagOptionAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html", + "Properties": { + "TagOptionId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html#cfn-servicecatalog-tagoptionassociation-tagoptionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResourceId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html#cfn-servicecatalog-tagoptionassociation-resourceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::LaunchTemplateConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ProductId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-productid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Rules": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html#cfn-servicecatalog-launchtemplateconstraint-rules", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EMR::Cluster": { + "Attributes": { + "MasterPublicDNS": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html", + "Properties": { + "AdditionalInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-additionalinfo", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Immutable" + }, + "Applications": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-applications", + "DuplicatesAllowed": false, + "ItemType": "Application", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "AutoScalingRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-autoscalingrole", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "BootstrapActions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-bootstrapactions", + "DuplicatesAllowed": false, + "ItemType": "BootstrapActionConfig", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Configurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-configurations", + "DuplicatesAllowed": false, + "ItemType": "Configuration", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "CustomAmiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-customamiid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EbsRootVolumeSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-ebsrootvolumesize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Instances": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-instances", + "Required": true, + "Type": "JobFlowInstancesConfig", + "UpdateType": "Conditional" + }, + "JobFlowRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-jobflowrole", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "KerberosAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-kerberosattributes", + "Required": false, + "Type": "KerberosAttributes", + "UpdateType": "Immutable" + }, + "LogUri": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-loguri", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ReleaseLabel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-releaselabel", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ScaleDownBehavior": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-scaledownbehavior", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SecurityConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-securityconfiguration", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ServiceRole": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-servicerole", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Steps": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-steps", + "DuplicatesAllowed": false, + "ItemType": "StepConfig", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VisibleToAllUsers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-visibletoallusers", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SpotFleet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html", + "Properties": { + "SpotFleetRequestConfigData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata", + "Required": true, + "Type": "SpotFleetRequestConfigData", + "UpdateType": "Conditional" + } + } + }, + "AWS::GameLift::Alias": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RoutingStrategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-routingstrategy", + "Required": true, + "Type": "RoutingStrategy", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPNConnectionRoute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html", + "Properties": { + "DestinationCidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html#cfn-ec2-vpnconnectionroute-cidrblock", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "VpnConnectionId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html#cfn-ec2-vpnconnectionroute-connectionid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::DirectoryService::MicrosoftAD": { + "Attributes": { + "Alias": { + "PrimitiveType": "String" + }, + "DnsIpAddresses": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html", + "Properties": { + "CreateAlias": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-createalias", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Edition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-edition", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EnableSso": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-enablesso", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Password": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-password", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ShortName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-shortname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "VpcSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-vpcsettings", + "Required": true, + "Type": "VpcSettings", + "UpdateType": "Immutable" + } + } + }, + "AWS::WAF::Rule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html", + "Properties": { + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-metricname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Predicates": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-predicates", + "DuplicatesAllowed": false, + "ItemType": "Predicate", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::DomainName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html", + "Attributes": { + "RegionalHostedZoneId": { + "PrimitiveType": "String" + }, + "RegionalDomainName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "DomainName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-domainname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DomainNameConfigurations": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-domainnameconfigurations", + "ItemType": "DomainNameConfiguration", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::FunctionDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html", + "Attributes": { + "LatestVersionArn": { + "PrimitiveType": "String" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "InitialVersion": { + "Type": "FunctionDefinitionVersion", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-initialversion", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html#cfn-greengrass-functiondefinition-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::Document": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html", + "Properties": { + "Content": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-content", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Immutable" + }, + "DocumentType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-documenttype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::DeliveryChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html", + "Properties": { + "ConfigSnapshotDeliveryProperties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties", + "Required": false, + "Type": "ConfigSnapshotDeliveryProperties", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "S3BucketName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-s3bucketname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "S3KeyPrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-s3keyprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SnsTopicARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-snstopicarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::NetworkInterfacePermission": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html", + "Properties": { + "AwsAccountId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-awsaccountid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "NetworkInterfaceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-networkinterfaceid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Permission": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-permission", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::SageMaker::Model": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html", + "Attributes": { + "ModelName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ExecutionRoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-executionrolearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PrimaryContainer": { + "Type": "ContainerDefinition", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-primarycontainer", + "UpdateType": "Immutable" + }, + "ModelName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-modelname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "VpcConfig": { + "Type": "VpcConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-vpcconfig", + "UpdateType": "Immutable" + }, + "Containers": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-containers", + "ItemType": "ContainerDefinition", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html#cfn-sagemaker-model-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::GameLift::Build": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StorageLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-storagelocation", + "Required": false, + "Type": "S3Location", + "UpdateType": "Immutable" + }, + "Version": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-version", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::TrafficMirrorFilter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "NetworkServices": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-networkservices", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Config::OrganizationConfigRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html", + "Properties": { + "OrganizationManagedRuleMetadata": { + "Type": "OrganizationManagedRuleMetadata", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata", + "UpdateType": "Mutable" + }, + "OrganizationConfigRuleName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationconfigrulename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "OrganizationCustomRuleMetadata": { + "Type": "OrganizationCustomRuleMetadata", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata", + "UpdateType": "Mutable" + }, + "ExcludedAccounts": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-excludedaccounts", + "UpdateType": "Mutable" + } + } + }, + "AWS::QLDB::Ledger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html", + "Properties": { + "PermissionsMode": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-permissionsmode", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DeletionProtection": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-deletionprotection", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html#cfn-qldb-ledger-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGatewayV2::Integration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TemplateSelectionExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-templateselectionexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ConnectionType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-connectiontype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IntegrationMethod": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-integrationmethod", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PassthroughBehavior": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-passthroughbehavior", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RequestParameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-requestparameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "IntegrationUri": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-integrationuri", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CredentialsArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-credentialsarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RequestTemplates": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-requesttemplates", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "TimeoutInMillis": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-timeoutinmillis", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "ContentHandlingStrategy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-contenthandlingstrategy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "IntegrationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html#cfn-apigatewayv2-integration-integrationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudWatch::Alarm": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html", + "Properties": { + "ActionsEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-actionsenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "AlarmActions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmactions", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "AlarmDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmdescription", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AlarmName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ComparisonOperator": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-comparisonoperator", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "DatapointsToAlarm": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarm-datapointstoalarm", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Dimensions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-dimension", + "DuplicatesAllowed": true, + "ItemType": "Dimension", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EvaluateLowSampleCountPercentile": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-evaluatelowsamplecountpercentile", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EvaluationPeriods": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-evaluationperiods", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "ExtendedStatistic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-extendedstatistic", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InsufficientDataActions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-insufficientdataactions", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-metricname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Metrics": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarm-metrics", + "DuplicatesAllowed": false, + "ItemType": "MetricDataQuery", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Namespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-namespace", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "OKActions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-okactions", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Period": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-period", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Statistic": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-statistic", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Threshold": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-threshold", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "ThresholdMetricId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-dynamic-threshold", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "TreatMissingData": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-treatmissingdata", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Unit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-unit", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Segment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html", + "Attributes": { + "SegmentId": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "SegmentGroups": { + "Type": "SegmentGroups", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-segmentgroups", + "UpdateType": "Mutable" + }, + "Dimensions": { + "Type": "SegmentDimensions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-dimensions", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html#cfn-pinpoint-segment-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Backup::BackupSelection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html", + "Attributes": { + "BackupPlanId": { + "PrimitiveType": "String" + }, + "SelectionId": { + "PrimitiveType": "String" + } + }, + "Properties": { + "BackupSelection": { + "Type": "BackupSelectionResourceType", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html#cfn-backup-backupselection-backupselection", + "UpdateType": "Immutable" + }, + "BackupPlanId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html#cfn-backup-backupselection-backupplanid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::APNSSandboxChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html", + "Properties": { + "BundleId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-bundleid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PrivateKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-privatekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DefaultAuthenticationMethod": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-defaultauthenticationmethod", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TokenKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-tokenkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TeamId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-teamid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Certificate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-certificate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TokenKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html#cfn-pinpoint-apnssandboxchannel-tokenkeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::ADMChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html", + "Properties": { + "ClientSecret": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html#cfn-pinpoint-admchannel-clientsecret", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html#cfn-pinpoint-admchannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ClientId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html#cfn-pinpoint-admchannel-clientid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html#cfn-pinpoint-admchannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::CertificateManager::Certificate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html", + "Properties": { + "DomainName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-domainname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "DomainValidationOptions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-domainvalidationoptions", + "DuplicatesAllowed": false, + "ItemType": "DomainValidationOption", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "SubjectAlternativeNames": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-subjectalternativenames", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "ValidationMethod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-validationmethod", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::SubscriptionDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html", + "Properties": { + "SubscriptionDefinitionId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptiondefinitionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Subscriptions": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html#cfn-greengrass-subscriptiondefinitionversion-subscriptions", + "ItemType": "Subscription", + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::CoreDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html", + "Properties": { + "Cores": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html#cfn-greengrass-coredefinitionversion-cores", + "ItemType": "Core", + "UpdateType": "Immutable" + }, + "CoreDefinitionId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html#cfn-greengrass-coredefinitionversion-coredefinitionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Inspector::ResourceGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ResourceGroupTags": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html#cfn-inspector-resourcegroup-resourcegrouptags", + "ItemType": "Tag", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoTAnalytics::Dataset": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html", + "Properties": { + "Actions": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-actions", + "ItemType": "Action", + "UpdateType": "Mutable" + }, + "DatasetName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-datasetname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ContentDeliveryRules": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-contentdeliveryrules", + "ItemType": "DatasetContentDeliveryRule", + "UpdateType": "Mutable" + }, + "Triggers": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-triggers", + "ItemType": "Trigger", + "UpdateType": "Mutable" + }, + "VersioningConfiguration": { + "Type": "VersioningConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-versioningconfiguration", + "UpdateType": "Mutable" + }, + "RetentionPeriod": { + "Type": "RetentionPeriod", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-retentionperiod", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html#cfn-iotanalytics-dataset-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::DocDB::DBSubnetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html", + "Properties": { + "DBSubnetGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-dbsubnetgroupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DBSubnetGroupDescription": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-dbsubnetgroupdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-subnetids", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html#cfn-docdb-dbsubnetgroup-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceCatalog::PortfolioPrincipalAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html", + "Properties": { + "PrincipalARN": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html#cfn-servicecatalog-portfolioprincipalassociation-principalarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html#cfn-servicecatalog-portfolioprincipalassociation-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html#cfn-servicecatalog-portfolioprincipalassociation-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PrincipalType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html#cfn-servicecatalog-portfolioprincipalassociation-principaltype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::SecurityGroupIngress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html", + "Properties": { + "CidrIp": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-cidrip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "CidrIpv6": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-cidripv6", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "FromPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-fromport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "GroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-groupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "GroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-groupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "IpProtocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-ipprotocol", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SourcePrefixListId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-securitygroupingress-sourceprefixlistid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceSecurityGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceSecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceSecurityGroupOwnerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupownerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ToPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-toport", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::PinpointEmail::ConfigurationSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html", + "Properties": { + "SendingOptions": { + "Type": "SendingOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-sendingoptions", + "UpdateType": "Mutable" + }, + "TrackingOptions": { + "Type": "TrackingOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-trackingoptions", + "UpdateType": "Mutable" + }, + "ReputationOptions": { + "Type": "ReputationOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-reputationoptions", + "UpdateType": "Mutable" + }, + "DeliveryOptions": { + "Type": "DeliveryOptions", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-deliveryoptions", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-tags", + "ItemType": "Tags", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html#cfn-pinpointemail-configurationset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::RDS::DBCluster": { + "Attributes": { + "Endpoint.Address": { + "PrimitiveType": "String" + }, + "Endpoint.Port": { + "PrimitiveType": "String" + }, + "ReadEndpoint.Address": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html", + "Properties": { + "AssociatedRoles": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-associatedroles", + "DuplicatesAllowed": false, + "ItemType": "DBClusterRole", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "AvailabilityZones": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-availabilityzones", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "BacktrackWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-backtrackwindow", + "PrimitiveType": "Long", + "Required": false, + "UpdateType": "Mutable" + }, + "BackupRetentionPeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-backuprententionperiod", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "DBClusterIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbclusteridentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DBClusterParameterGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbclusterparametergroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DBSubnetGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbsubnetgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DatabaseName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-databasename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DeletionProtection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-deletionprotection", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "EnableCloudwatchLogsExports": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-enablecloudwatchlogsexports", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EnableIAMDatabaseAuthentication": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-enableiamdatabaseauthentication", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Engine": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-engine", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "EngineMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-enginemode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EngineVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-engineversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "KmsKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "MasterUserPassword": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-masteruserpassword", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MasterUsername": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-masterusername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "PreferredBackupWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-preferredbackupwindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PreferredMaintenanceWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-preferredmaintenancewindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ReplicationSourceIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-replicationsourceidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RestoreType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-restoretype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ScalingConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-scalingconfiguration", + "Required": false, + "Type": "ScalingConfiguration", + "UpdateType": "Mutable" + }, + "SnapshotIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-snapshotidentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceDBClusterIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-sourcedbclusteridentifier", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceRegion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-sourceregion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "StorageEncrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-storageencrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "UseLatestRestorableTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-uselatestrestorabletime", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "VpcSecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-vpcsecuritygroupids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "Alexa::ASK::Skill": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html", + "Properties": { + "AuthenticationConfiguration": { + "Type": "AuthenticationConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html#cfn-ask-skill-authenticationconfiguration", + "UpdateType": "Mutable" + }, + "VendorId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html#cfn-ask-skill-vendorid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SkillPackage": { + "Type": "SkillPackage", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html#cfn-ask-skill-skillpackage", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::ClientVpnEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html", + "Properties": { + "ClientCidrBlock": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-clientcidrblock", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ConnectionLogOptions": { + "Type": "ConnectionLogOptions", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-connectionlogoptions", + "UpdateType": "Mutable" + }, + "SplitTunnel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-splittunnel", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TagSpecifications": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-tagspecifications", + "ItemType": "TagSpecification", + "UpdateType": "Immutable" + }, + "AuthenticationOptions": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-authenticationoptions", + "ItemType": "ClientAuthenticationRequest", + "UpdateType": "Immutable" + }, + "ServerCertificateArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-servercertificatearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DnsServers": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-dnsservers", + "UpdateType": "Mutable" + }, + "TransportProtocol": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-transportprotocol", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ECS::Service": { + "Attributes": { + "Name": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html", + "Properties": { + "Cluster": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-cluster", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DeploymentConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-deploymentconfiguration", + "Required": false, + "Type": "DeploymentConfiguration", + "UpdateType": "Mutable" + }, + "DesiredCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-desiredcount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "EnableECSManagedTags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-enableecsmanagedtags", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "HealthCheckGracePeriodSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-healthcheckgraceperiodseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "LaunchType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-launchtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LoadBalancers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-loadbalancers", + "DuplicatesAllowed": false, + "ItemType": "LoadBalancer", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "NetworkConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-networkconfiguration", + "Required": false, + "Type": "NetworkConfiguration", + "UpdateType": "Mutable" + }, + "PlacementConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementconstraints", + "DuplicatesAllowed": false, + "ItemType": "PlacementConstraint", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "PlacementStrategies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementstrategies", + "DuplicatesAllowed": false, + "ItemType": "PlacementStrategy", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "PlatformVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-platformversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PropagateTags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-propagatetags", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Role": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-role", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SchedulingStrategy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-schedulingstrategy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ServiceName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-servicename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ServiceRegistries": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-serviceregistries", + "DuplicatesAllowed": false, + "ItemType": "ServiceRegistry", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TaskDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-taskdefinition", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::ApplicationSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html", + "Properties": { + "QuietTime": { + "Type": "QuietTime", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-quiettime", + "UpdateType": "Mutable" + }, + "Limits": { + "Type": "Limits", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-limits", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CampaignHook": { + "Type": "CampaignHook", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-campaignhook", + "UpdateType": "Mutable" + }, + "CloudWatchMetricsEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html#cfn-pinpoint-applicationsettings-cloudwatchmetricsenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::IAM::UserToGroupAddition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html", + "Properties": { + "GroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-groupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Users": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-users", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorksCM::Server": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html", + "Attributes": { + "Endpoint": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "KeyPair": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-keypair", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EngineVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-engineversion", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ServiceRoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-servicerolearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DisableAutomatedBackup": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-disableautomatedbackup", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "BackupId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-backupid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EngineModel": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-enginemodel", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-preferredmaintenancewindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AssociatePublicIpAddress": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-associatepublicipaddress", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "InstanceProfileArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-instanceprofilearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredBackupWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-preferredbackupwindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-securitygroupids", + "UpdateType": "Immutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-subnetids", + "UpdateType": "Immutable" + }, + "ServerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-servername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EngineAttributes": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-engineattributes", + "ItemType": "EngineAttribute", + "UpdateType": "Mutable" + }, + "BackupRetentionCount": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-backupretentioncount", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "InstanceType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-instancetype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Engine": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html#cfn-opsworkscm-server-engine", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Batch::JobQueue": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html", + "Properties": { + "ComputeEnvironmentOrder": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-computeenvironmentorder", + "ItemType": "ComputeEnvironmentOrder", + "UpdateType": "Mutable" + }, + "Priority": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-priority", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "State": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-state", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "JobQueueName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-jobqueuename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoT::Thing": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html", + "Properties": { + "AttributePayload": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-attributepayload", + "Required": false, + "Type": "AttributePayload", + "UpdateType": "Mutable" + }, + "ThingName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-thingname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::OpsWorks::Layer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html", + "Properties": { + "Attributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-attributes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "AutoAssignElasticIps": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-autoassignelasticips", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "AutoAssignPublicIps": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-autoassignpublicips", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "CustomInstanceProfileArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-custominstanceprofilearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CustomJson": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customjson", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "CustomRecipes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customrecipes", + "Required": false, + "Type": "Recipes", + "UpdateType": "Mutable" + }, + "CustomSecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customsecuritygroupids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "EnableAutoHealing": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-enableautohealing", + "PrimitiveType": "Boolean", + "Required": true, + "UpdateType": "Mutable" + }, + "InstallUpdatesOnBoot": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-installupdatesonboot", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "LifecycleEventConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-lifecycleeventconfiguration", + "Required": false, + "Type": "LifecycleEventConfiguration", + "UpdateType": "Mutable" + }, + "LoadBasedAutoScaling": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-loadbasedautoscaling", + "Required": false, + "Type": "LoadBasedAutoScaling", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Packages": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-packages", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Shortname": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-shortname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "StackId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-stackid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Type": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-type", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "UseEbsOptimizedInstances": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-useebsoptimizedinstances", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "VolumeConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-volumeconfigurations", + "DuplicatesAllowed": true, + "ItemType": "VolumeConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::DMS::Certificate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html", + "Properties": { + "CertificateIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificateidentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CertificatePem": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificatepem", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CertificateWallet": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificatewallet", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::ApiKey": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html", + "Properties": { + "CustomerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-customerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "GenerateDistinctId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-generatedistinctid", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "StageKeys": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-stagekeys", + "DuplicatesAllowed": false, + "ItemType": "StageKey", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Value": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apikey-value", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::SubnetRouteTableAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html", + "Properties": { + "RouteTableId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html#cfn-ec2-subnetroutetableassociation-routetableid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html#cfn-ec2-subnetroutetableassociation-subnetid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::Table": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html", + "Properties": { + "TableInput": { + "Type": "TableInput", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html#cfn-glue-table-tableinput", + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html#cfn-glue-table-databasename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CatalogId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html#cfn-glue-table-catalogid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::IoT::Policy": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html", + "Properties": { + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Immutable" + }, + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ElastiCache::SecurityGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group.html#cfn-elasticache-securitygroup-description", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::IAM::InstanceProfile": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html", + "Properties": { + "InstanceProfileName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-instanceprofilename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-path", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Roles": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-roles", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeDeploy::DeploymentGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html", + "Properties": { + "AlarmConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-alarmconfiguration", + "Required": false, + "Type": "AlarmConfiguration", + "UpdateType": "Mutable" + }, + "ApplicationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-applicationname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "AutoRollbackConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-autorollbackconfiguration", + "Required": false, + "Type": "AutoRollbackConfiguration", + "UpdateType": "Mutable" + }, + "AutoScalingGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-autoscalinggroups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Deployment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deployment", + "Required": false, + "Type": "Deployment", + "UpdateType": "Mutable" + }, + "DeploymentConfigName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentconfigname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DeploymentGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DeploymentStyle": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentstyle", + "Required": false, + "Type": "DeploymentStyle", + "UpdateType": "Mutable" + }, + "Ec2TagFilters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-ec2tagfilters", + "DuplicatesAllowed": false, + "ItemType": "EC2TagFilter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Ec2TagSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-ec2tagset", + "Required": false, + "Type": "EC2TagSet", + "UpdateType": "Mutable" + }, + "LoadBalancerInfo": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-loadbalancerinfo", + "Required": false, + "Type": "LoadBalancerInfo", + "UpdateType": "Mutable" + }, + "OnPremisesInstanceTagFilters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-onpremisesinstancetagfilters", + "DuplicatesAllowed": false, + "ItemType": "TagFilter", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "OnPremisesTagSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-onpremisestagset", + "Required": false, + "Type": "OnPremisesTagSet", + "UpdateType": "Mutable" + }, + "ServiceRoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-servicerolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "TriggerConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-triggerconfigurations", + "DuplicatesAllowed": false, + "ItemType": "TriggerConfig", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Batch::ComputeEnvironment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-type", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ServiceRole": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-servicerole", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ComputeEnvironmentName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-computeenvironmentname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ComputeResources": { + "Type": "ComputeResources", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-computeresources", + "UpdateType": "Mutable" + }, + "State": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-state", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Route": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html", + "Properties": { + "DestinationCidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationcidrblock", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DestinationIpv6CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationipv6cidrblock", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EgressOnlyInternetGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-egressonlyinternetgatewayid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "GatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-gatewayid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-instanceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NatGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-natgatewayid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NetworkInterfaceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-networkinterfaceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RouteTableId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-routetableid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "TransitGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-transitgatewayid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VpcPeeringConnectionId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-vpcpeeringconnectionid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::DirectoryConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html", + "Properties": { + "OrganizationalUnitDistinguishedNames": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html#cfn-appstream-directoryconfig-organizationalunitdistinguishednames", + "UpdateType": "Mutable" + }, + "ServiceAccountCredentials": { + "Type": "ServiceAccountCredentials", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html#cfn-appstream-directoryconfig-serviceaccountcredentials", + "UpdateType": "Mutable" + }, + "DirectoryName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html#cfn-appstream-directoryconfig-directoryname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::Resource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html", + "Properties": { + "ParentId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-parentid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "PathPart": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-pathpart", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::SecurityHub::Hub": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html", + "Properties": { + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html#cfn-securityhub-hub-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT1Click::Device": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html", + "Attributes": { + "DeviceId": { + "PrimitiveType": "String" + }, + "Enabled": { + "PrimitiveType": "Boolean" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "DeviceId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html#cfn-iot1click-device-deviceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Enabled": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html#cfn-iot1click-device-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Connection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html", + "Properties": { + "ConnectionInput": { + "Type": "ConnectionInput", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html#cfn-glue-connection-connectioninput", + "UpdateType": "Mutable" + }, + "CatalogId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html#cfn-glue-connection-catalogid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticBeanstalk::Application": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html", + "Properties": { + "ApplicationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ResourceLifecycleConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-resourcelifecycleconfig", + "Required": false, + "Type": "ApplicationResourceLifecycleConfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html", + "Properties": { + "After": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html#cfn-ses-receiptrule-after", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Rule": { + "Type": "Rule", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html#cfn-ses-receiptrule-rule", + "UpdateType": "Mutable" + }, + "RuleSetName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html#cfn-ses-receiptrule-rulesetname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElastiCache::SubnetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html", + "Properties": { + "CacheSubnetGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-cachesubnetgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-description", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-subnetids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::TransitGatewayRouteTablePropagation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html", + "Properties": { + "TransitGatewayRouteTableId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html#cfn-ec2-transitgatewayroutetablepropagation-transitgatewayroutetableid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TransitGatewayAttachmentId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html#cfn-ec2-transitgatewayroutetablepropagation-transitgatewayattachmentid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::WAFRegional::ByteMatchSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html", + "Properties": { + "ByteMatchTuples": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html#cfn-wafregional-bytematchset-bytematchtuples", + "ItemType": "ByteMatchTuple", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html#cfn-wafregional-bytematchset-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::NetworkInterface": { + "Attributes": { + "PrimaryPrivateIpAddress": { + "PrimitiveType": "String" + }, + "SecondaryPrivateIpAddresses": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "GroupSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-groupset", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "InterfaceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-interfacetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Ipv6AddressCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-ipv6addresscount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Ipv6Addresses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-ipv6addresses", + "Required": false, + "Type": "InstanceIpv6Address", + "UpdateType": "Mutable" + }, + "PrivateIpAddress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-privateipaddress", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PrivateIpAddresses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-privateipaddresses", + "DuplicatesAllowed": false, + "ItemType": "PrivateIpAddressSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + }, + "SecondaryPrivateIpAddressCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-secondaryprivateipcount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SourceDestCheck": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-sourcedestcheck", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-subnetid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::Deployment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StageName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-stagename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::DAX::SubnetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SubnetGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-subnetgroupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-subnetids", + "UpdateType": "Mutable" + } + } + }, + "AWS::FSx::FileSystem": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html", + "Properties": { + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "StorageCapacity": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-storagecapacity", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "FileSystemType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-filesystemtype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "LustreConfiguration": { + "Type": "LustreConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-lustreconfiguration", + "UpdateType": "Mutable" + }, + "BackupId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-backupid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubnetIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-subnetids", + "UpdateType": "Immutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-securitygroupids", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "WindowsConfiguration": { + "Type": "WindowsConfiguration", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-windowsconfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::OpsWorks::Stack": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html", + "Properties": { + "AgentVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-agentversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Attributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-attributes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "ChefConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-chefconfiguration", + "Required": false, + "Type": "ChefConfiguration", + "UpdateType": "Mutable" + }, + "CloneAppIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-cloneappids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "ClonePermissions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-clonepermissions", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "ConfigurationManager": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-configmanager", + "Required": false, + "Type": "StackConfigurationManager", + "UpdateType": "Mutable" + }, + "CustomCookbooksSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-custcookbooksource", + "Required": false, + "Type": "Source", + "UpdateType": "Mutable" + }, + "CustomJson": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-custjson", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "DefaultAvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultaz", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DefaultInstanceProfileArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultinstanceprof", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "DefaultOs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultos", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DefaultRootDeviceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultrootdevicetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DefaultSshKeyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultsshkeyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DefaultSubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#defaultsubnet", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EcsClusterArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-ecsclusterarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ElasticIps": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-elasticips", + "DuplicatesAllowed": false, + "ItemType": "ElasticIp", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "HostnameTheme": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-hostnametheme", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RdsDbInstances": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-rdsdbinstances", + "DuplicatesAllowed": false, + "ItemType": "RdsDbInstance", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "ServiceRoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-servicerolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SourceStackId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-sourcestackid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "UseCustomCookbooks": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#usecustcookbooks", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "UseOpsworksSecurityGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-useopsworkssecuritygroups", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-vpcid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::DataPipeline::Pipeline": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html", + "Properties": { + "Activate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-activate", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ParameterObjects": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-parameterobjects", + "DuplicatesAllowed": true, + "ItemType": "ParameterObject", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "ParameterValues": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-parametervalues", + "DuplicatesAllowed": true, + "ItemType": "ParameterValue", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PipelineObjects": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-pipelineobjects", + "DuplicatesAllowed": true, + "ItemType": "PipelineObject", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PipelineTags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-pipelinetags", + "DuplicatesAllowed": true, + "ItemType": "PipelineTag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53Resolver::ResolverRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html", + "Attributes": { + "ResolverEndpointId": { + "PrimitiveType": "String" + }, + "DomainName": { + "PrimitiveType": "String" + }, + "ResolverRuleId": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "TargetIps": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ResolverEndpointId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-resolverendpointid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DomainName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-domainname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RuleType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-ruletype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TargetIps": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-targetips", + "ItemType": "TargetAddress", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html#cfn-route53resolver-resolverrule-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::Campaign": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html", + "Attributes": { + "CampaignId": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SegmentId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-segmentid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IsPaused": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-ispaused", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "AdditionalTreatments": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-additionaltreatments", + "ItemType": "WriteTreatmentResource", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SegmentVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-segmentversion", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "TreatmentDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-treatmentdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MessageConfiguration": { + "Type": "MessageConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-messageconfiguration", + "UpdateType": "Mutable" + }, + "Limits": { + "Type": "Limits", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-limits", + "UpdateType": "Mutable" + }, + "HoldoutPercent": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-holdoutpercent", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Schedule": { + "Type": "Schedule", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-schedule", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CampaignHook": { + "Type": "CampaignHook", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-campaignhook", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "TreatmentName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html#cfn-pinpoint-campaign-treatmentname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::ClientVpnAuthorizationRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html", + "Properties": { + "ClientVpnEndpointId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-clientvpnendpointid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AccessGroupId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-accessgroupid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TargetNetworkCidr": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-targetnetworkcidr", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AuthorizeAllGroups": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html#cfn-ec2-clientvpnauthorizationrule-authorizeallgroups", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::SubnetNetworkAclAssociation": { + "Attributes": { + "AssociationId": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html", + "Properties": { + "NetworkAclId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html#cfn-ec2-subnetnetworkaclassociation-networkaclid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html#cfn-ec2-subnetnetworkaclassociation-associationid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGateway::Account": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html", + "Properties": { + "CloudWatchRoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html#cfn-apigateway-account-cloudwatchrolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::TrafficMirrorSession": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html", + "Properties": { + "TrafficMirrorTargetId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-trafficmirrortargetid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SessionNumber": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-sessionnumber", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "VirtualNetworkId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-virtualnetworkid", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "PacketLength": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-packetlength", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "NetworkInterfaceId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-networkinterfaceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TrafficMirrorFilterId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-trafficmirrorfilterid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html#cfn-ec2-trafficmirrorsession-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::Branch": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html", + "Attributes": { + "BranchName": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EnvironmentVariables": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-environmentvariables", + "ItemType": "EnvironmentVariable", + "UpdateType": "Mutable" + }, + "AppId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-appid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "EnableAutoBuild": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-enableautobuild", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "BuildSpec": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-buildspec", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Stage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-stage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BranchName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-branchname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "BasicAuthConfig": { + "Type": "BasicAuthConfig", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-basicauthconfig", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html#cfn-amplify-branch-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Greengrass::LoggerDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html", + "Attributes": { + "LatestVersionArn": { + "PrimitiveType": "String" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "InitialVersion": { + "Type": "LoggerDefinitionVersion", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-initialversion", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html#cfn-greengrass-loggerdefinition-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceCatalog::CloudFormationProvisionedProduct": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html", + "Attributes": { + "CloudformationStackArn": { + "PrimitiveType": "String" + }, + "RecordId": { + "PrimitiveType": "String" + } + }, + "Properties": { + "PathId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-pathid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ProvisioningParameters": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameters", + "ItemType": "ProvisioningParameter", + "UpdateType": "Mutable" + }, + "ProvisioningPreferences": { + "Type": "ProvisioningPreferences", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningpreferences", + "UpdateType": "Mutable" + }, + "ProductName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-productname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ProvisioningArtifactName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningartifactname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotificationArns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-notificationarns", + "UpdateType": "Immutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ProductId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-productid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "ProvisionedProductName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisionedproductname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ProvisioningArtifactId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningartifactid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceCatalog::LaunchRoleConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ProductId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-productid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RoleArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html#cfn-servicecatalog-launchroleconstraint-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SubnetCidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html", + "Properties": { + "Ipv6CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html#cfn-ec2-subnetcidrblock-ipv6cidrblock", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html#cfn-ec2-subnetcidrblock-subnetid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::AutoScaling::LifecycleHook": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html", + "Properties": { + "AutoScalingGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-autoscalinggroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "DefaultResult": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-defaultresult", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HeartbeatTimeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-heartbeattimeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "LifecycleHookName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-autoscaling-lifecyclehook-lifecyclehookname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LifecycleTransition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-lifecycletransition", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "NotificationMetadata": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-notificationmetadata", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NotificationTargetARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-notificationtargetarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-rolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaLive::InputSecurityGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "WhitelistRules": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html#cfn-medialive-inputsecuritygroup-whitelistrules", + "ItemType": "InputWhitelistRuleCidr", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html#cfn-medialive-inputsecuritygroup-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + } + } + }, + "AWS::Redshift::ClusterSecurityGroupIngress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html", + "Properties": { + "CIDRIP": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-cidrip", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ClusterSecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-clustersecuritygroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "EC2SecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-ec2securitygroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EC2SecurityGroupOwnerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-ec2securitygroupownerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::ElastiCache::SecurityGroupIngress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html", + "Properties": { + "CacheSecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-cachesecuritygroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "EC2SecurityGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-ec2securitygroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "EC2SecurityGroupOwnerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-ec2securitygroupownerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::NatGateway": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html", + "Properties": { + "AllocationId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-allocationid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SubnetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-subnetid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::OptionGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html", + "Properties": { + "EngineName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-enginename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "MajorEngineVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-majorengineversion", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "OptionConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-optionconfigurations", + "DuplicatesAllowed": true, + "ItemType": "OptionConfiguration", + "Required": true, + "Type": "List", + "UpdateType": "Immutable" + }, + "OptionGroupDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-optiongroupdescription", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElastiCache::ReplicationGroup": { + "Attributes": { + "ConfigurationEndPoint.Address": { + "PrimitiveType": "String" + }, + "ConfigurationEndPoint.Port": { + "PrimitiveType": "String" + }, + "PrimaryEndPoint.Address": { + "PrimitiveType": "String" + }, + "PrimaryEndPoint.Port": { + "PrimitiveType": "String" + }, + "ReadEndPoint.Addresses": { + "PrimitiveType": "String" + }, + "ReadEndPoint.Addresses.List": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "ReadEndPoint.Ports": { + "PrimitiveType": "String" + }, + "ReadEndPoint.Ports.List": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html", + "Properties": { + "AtRestEncryptionEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-atrestencryptionenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "AuthToken": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-authtoken", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "AutoMinorVersionUpgrade": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-autominorversionupgrade", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "AutomaticFailoverEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-automaticfailoverenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheNodeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachenodetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheParameterGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cacheparametergroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheSecurityGroupNames": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachesecuritygroupnames", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "CacheSubnetGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachesubnetgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Engine": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-engine", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EngineVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-engineversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "NodeGroupConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-nodegroupconfiguration", + "DuplicatesAllowed": false, + "ItemType": "NodeGroupConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + }, + "NotificationTopicArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-notificationtopicarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NumCacheClusters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-numcacheclusters", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "NumNodeGroups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-numnodegroups", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Conditional" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "PreferredCacheClusterAZs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-preferredcacheclusterazs", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-preferredmaintenancewindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "PrimaryClusterId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-primaryclusterid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ReplicasPerNodeGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicaspernodegroup", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "ReplicationGroupDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicationgroupdescription", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ReplicationGroupId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicationgroupid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-securitygroupids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SnapshotArns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotarns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "SnapshotName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SnapshotRetentionLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotretentionlimit", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshotWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotwindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshottingClusterId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshottingclusterid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TransitEncryptionEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-transitencryptionenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::Cognito::UserPoolUser": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html", + "Properties": { + "ValidationData": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-validationdata", + "ItemType": "AttributeType", + "UpdateType": "Immutable" + }, + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Username": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-username", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "MessageAction": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-messageaction", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DesiredDeliveryMediums": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-desireddeliverymediums", + "UpdateType": "Immutable" + }, + "ForceAliasCreation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-forcealiascreation", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "UserAttributes": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-userattributes", + "ItemType": "AttributeType", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppSync::FunctionConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html", + "Attributes": { + "FunctionId": { + "PrimitiveType": "String" + }, + "FunctionArn": { + "PrimitiveType": "String" + }, + "DataSourceName": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ResponseMappingTemplateS3Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-responsemappingtemplates3location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DataSourceName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-datasourcename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RequestMappingTemplate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-requestmappingtemplate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResponseMappingTemplate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-responsemappingtemplate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FunctionVersion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-functionversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RequestMappingTemplateS3Location": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-requestmappingtemplates3location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::Model": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ContentType": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-contenttype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Schema": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-schema", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html#cfn-apigatewayv2-model-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFormation::WaitCondition": { + "Attributes": { + "Data": { + "PrimitiveType": "Json" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html", + "Properties": { + "Count": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-count", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Handle": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-handle", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Timeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-timeout", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::SecurityGroup": { + "Attributes": { + "GroupId": { + "PrimitiveType": "String" + }, + "VpcId": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html", + "Properties": { + "GroupDescription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-groupdescription", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "GroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-groupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SecurityGroupEgress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupegress", + "DuplicatesAllowed": true, + "ItemType": "Egress", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SecurityGroupIngress": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupingress", + "DuplicatesAllowed": true, + "ItemType": "Ingress", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-vpcid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::WAFRegional::Rule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html", + "Properties": { + "MetricName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-metricname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Predicates": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-predicates", + "ItemType": "Predicate", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::TrafficMirrorFilterRule": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html", + "Properties": { + "DestinationPortRange": { + "Type": "TrafficMirrorPortRange", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-destinationportrange", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourcePortRange": { + "Type": "TrafficMirrorPortRange", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-sourceportrange", + "UpdateType": "Mutable" + }, + "RuleAction": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-ruleaction", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceCidrBlock": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-sourcecidrblock", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RuleNumber": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-rulenumber", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DestinationCidrBlock": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-destinationcidrblock", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TrafficMirrorFilterId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-trafficmirrorfilterid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TrafficDirection": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-trafficdirection", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Protocol": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html#cfn-ec2-trafficmirrorfilterrule-protocol", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::RestApi": { + "Attributes": { + "RootResourceId": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html", + "Properties": { + "ApiKeySourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-apikeysourcetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "BinaryMediaTypes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-binarymediatypes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Body": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "BodyS3Location": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location", + "Required": false, + "Type": "S3Location", + "UpdateType": "Mutable" + }, + "CloneFrom": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-clonefrom", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EndpointConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration", + "Required": false, + "Type": "EndpointConfiguration", + "UpdateType": "Mutable" + }, + "FailOnWarnings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-failonwarnings", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "MinimumCompressionSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-minimumcompressionsize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Parameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-parameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Policy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-policy", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::Events::EventBus": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html", + "Attributes": { + "Policy": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "EventSourceName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-eventsourcename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::VPC": { + "Attributes": { + "CidrBlock": { + "PrimitiveType": "String" + }, + "CidrBlockAssociations": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "DefaultNetworkAcl": { + "PrimitiveType": "String" + }, + "DefaultSecurityGroup": { + "PrimitiveType": "String" + }, + "Ipv6CidrBlocks": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html", + "Properties": { + "CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-cidrblock", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "EnableDnsHostnames": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-EnableDnsHostnames", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "EnableDnsSupport": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-EnableDnsSupport", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceTenancy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-instancetenancy", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationOutput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html", + "Properties": { + "ApplicationName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html#cfn-kinesisanalyticsv2-applicationoutput-applicationname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Output": { + "Type": "Output", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html#cfn-kinesisanalyticsv2-applicationoutput-output", + "UpdateType": "Mutable" + } + } + }, + "AWS::ElastiCache::ParameterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html", + "Properties": { + "CacheParameterGroupFamily": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-cacheparametergroupfamily", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-description", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Properties": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-properties", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + } + } + }, + "AWS::SQS::QueuePolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html", + "Properties": { + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html#cfn-sqs-queuepolicy-policydoc", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "Queues": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html#cfn-sqs-queuepolicy-queues", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalingPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html", + "Properties": { + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-policyname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "PolicyType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-policytype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ResourceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-resourceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ScalableDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-scalabledimension", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ScalingTargetId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-scalingtargetid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ServiceNamespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-servicenamespace", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "StepScalingPolicyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration", + "Required": false, + "Type": "StepScalingPolicyConfiguration", + "UpdateType": "Mutable" + }, + "TargetTrackingScalingPolicyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration", + "Required": false, + "Type": "TargetTrackingScalingPolicyConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::EFS::FileSystem": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html", + "Properties": { + "Encrypted": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-encrypted", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "FileSystemTags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-filesystemtags", + "DuplicatesAllowed": false, + "ItemType": "ElasticFileSystemTag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-kmskeyid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LifecyclePolicies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-elasticfilesystem-filesystem-lifecyclepolicies", + "DuplicatesAllowed": false, + "ItemType": "LifecyclePolicy", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PerformanceMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-performancemode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ProvisionedThroughputInMibps": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-elasticfilesystem-filesystem-provisionedthroughputinmibps", + "PrimitiveType": "Double", + "Required": false, + "UpdateType": "Mutable" + }, + "ThroughputMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-elasticfilesystem-filesystem-throughputmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::WAF::SqlInjectionMatchSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html", + "Properties": { + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html#cfn-waf-sqlinjectionmatchset-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SqlInjectionMatchTuples": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples", + "DuplicatesAllowed": false, + "ItemType": "SqlInjectionMatchTuple", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::CodeCommit::Repository": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html", + "Attributes": { + "CloneUrlHttp": { + "PrimitiveType": "String" + }, + "CloneUrlSsh": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "RepositoryName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-repositoryname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Triggers": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-triggers", + "ItemType": "RepositoryTrigger", + "UpdateType": "Conditional" + }, + "Code": { + "Type": "Code", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-code", + "UpdateType": "Mutable" + }, + "RepositoryDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-repositorydescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::SecretsManager::Secret": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SecretString": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-secretstring", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "GenerateSecretString": { + "Type": "GenerateSecretString", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-generatesecretstring", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html#cfn-secretsmanager-secret-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::APNSVoipSandboxChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html", + "Properties": { + "BundleId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-bundleid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PrivateKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-privatekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DefaultAuthenticationMethod": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-defaultauthenticationmethod", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TokenKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-tokenkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TeamId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-teamid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Certificate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-certificate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TokenKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html#cfn-pinpoint-apnsvoipsandboxchannel-tokenkeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceCatalog::Portfolio": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html", + "Attributes": { + "PortfolioName": { + "PrimitiveType": "String" + } + }, + "Properties": { + "ProviderName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-providername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DisplayName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-displayname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html#cfn-servicecatalog-portfolio-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Cognito::UserPoolUICustomizationAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html", + "Properties": { + "CSS": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-css", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ClientId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-clientid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::CoreDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html", + "Attributes": { + "LatestVersionArn": { + "PrimitiveType": "String" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "InitialVersion": { + "Type": "CoreDefinitionVersion", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-initialversion", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html#cfn-greengrass-coredefinition-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::RDS::DBParameterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-description", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Family": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-family", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Parameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-parameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::AppStream::StackFleetAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html", + "Properties": { + "FleetName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html#cfn-appstream-stackfleetassociation-fleetname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StackName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html#cfn-appstream-stackfleetassociation-stackname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::MediaStore::Container": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html", + "Attributes": { + "Endpoint": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Policy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-policy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ContainerName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-containername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CorsPolicy": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-corspolicy", + "ItemType": "CorsRule", + "UpdateType": "Mutable" + }, + "LifecyclePolicy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-lifecyclepolicy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AccessLoggingEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html#cfn-mediastore-container-accessloggingenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + } + } + }, + "AWS::Logs::LogStream": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html", + "Properties": { + "LogGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-loggroupname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "LogStreamName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-logstreamname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::RoboMaker::RobotApplicationVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html", + "Properties": { + "CurrentRevisionId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html#cfn-robomaker-robotapplicationversion-currentrevisionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Application": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html#cfn-robomaker-robotapplicationversion-application", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::RDS::EventSubscription": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html", + "Properties": { + "Enabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-enabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "EventCategories": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-eventcategories", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SnsTopicArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-snstopicarn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SourceIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-sourceids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SourceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-sourcetype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + } + } + }, + "AWS::ElasticBeanstalk::Environment": { + "Attributes": { + "EndpointURL": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html", + "Properties": { + "ApplicationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-applicationname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "CNAMEPrefix": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-cnameprefix", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "EnvironmentName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "OptionSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-optionsettings", + "DuplicatesAllowed": true, + "ItemType": "OptionSetting", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PlatformArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-platformarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SolutionStackName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-solutionstackname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-elasticbeanstalk-environment-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TemplateName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-templatename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-tier", + "Required": false, + "Type": "Tier", + "UpdateType": "Conditional" + }, + "VersionLabel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-versionlabel", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTAnalytics::Pipeline": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html", + "Properties": { + "PipelineName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html#cfn-iotanalytics-pipeline-pipelinename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html#cfn-iotanalytics-pipeline-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "PipelineActivities": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html#cfn-iotanalytics-pipeline-pipelineactivities", + "ItemType": "Activity", + "UpdateType": "Mutable" + } + } + }, + "AWS::Lambda::Function": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html", + "Properties": { + "Code": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code", + "Required": true, + "Type": "Code", + "UpdateType": "Mutable" + }, + "DeadLetterConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-deadletterconfig", + "Required": false, + "Type": "DeadLetterConfig", + "UpdateType": "Mutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Environment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-environment", + "Required": false, + "Type": "Environment", + "UpdateType": "Mutable" + }, + "FunctionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Handler": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "KmsKeyArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Layers": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-layers", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MemorySize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "ReservedConcurrentExecutions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Role": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Runtime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Timeout": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "TracingConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig", + "Required": false, + "Type": "TracingConfig", + "UpdateType": "Mutable" + }, + "VpcConfig": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-vpcconfig", + "Required": false, + "Type": "VpcConfig", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::TransitGatewayRoute": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html", + "Properties": { + "TransitGatewayRouteTableId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-transitgatewayroutetableid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DestinationCidrBlock": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-destinationcidrblock", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Blackhole": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-blackhole", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "TransitGatewayAttachmentId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-transitgatewayattachmentid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Transfer::User": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html", + "Attributes": { + "ServerId": { + "PrimitiveType": "String" + }, + "UserName": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Policy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-policy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Role": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-role", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "HomeDirectory": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-homedirectory", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServerId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-serverid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "UserName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-username", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SshPublicKeys": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-sshpublickeys", + "ItemType": "SshPublicKey", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html#cfn-transfer-user-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::NetworkAcl": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html", + "Properties": { + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Config::ConfigRule": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "Compliance.Type": { + "PrimitiveType": "String" + }, + "ConfigRuleId": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html", + "Properties": { + "ConfigRuleName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-configrulename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InputParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-inputparameters", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "MaximumExecutionFrequency": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-maximumexecutionfrequency", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Scope": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-scope", + "Required": false, + "Type": "Scope", + "UpdateType": "Mutable" + }, + "Source": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-source", + "Required": true, + "Type": "Source", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::Partition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html", + "Properties": { + "TableName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-tablename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DatabaseName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-databasename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CatalogId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-catalogid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PartitionInput": { + "Type": "PartitionInput", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html#cfn-glue-partition-partitioninput", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPNGatewayRoutePropagation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html", + "Properties": { + "RouteTableIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html#cfn-ec2-vpngatewayrouteprop-routetableids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": true, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpnGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html#cfn-ec2-vpngatewayrouteprop-vpngatewayid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::ClientVpnTargetNetworkAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html", + "Properties": { + "ClientVpnEndpointId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html#cfn-ec2-clientvpntargetnetworkassociation-clientvpnendpointid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubnetId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html#cfn-ec2-clientvpntargetnetworkassociation-subnetid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::WAF::WebACL": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html", + "Properties": { + "DefaultAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-defaultaction", + "Required": true, + "Type": "WafAction", + "UpdateType": "Mutable" + }, + "MetricName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-metricname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Rules": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-rules", + "DuplicatesAllowed": false, + "ItemType": "ActivatedRule", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Neptune::DBCluster": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html", + "Attributes": { + "ClusterResourceId": { + "PrimitiveType": "String" + }, + "Endpoint": { + "PrimitiveType": "String" + }, + "Port": { + "PrimitiveType": "String" + }, + "ReadEndpoint": { + "PrimitiveType": "String" + } + }, + "Properties": { + "StorageEncrypted": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-storageencrypted", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AvailabilityZones": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-availabilityzones", + "UpdateType": "Immutable" + }, + "SnapshotIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-snapshotidentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Port": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-port", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DBClusterIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-dbclusteridentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-preferredmaintenancewindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IamAuthEnabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-iamauthenabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DBSubnetGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-dbsubnetgroupname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredBackupWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-preferredbackupwindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "VpcSecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-vpcsecuritygroupids", + "UpdateType": "Mutable" + }, + "DBClusterParameterGroupName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-dbclusterparametergroupname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "BackupRetentionPeriod": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-backupretentionperiod", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "EnableCloudwatchLogsExports": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html#cfn-neptune-dbcluster-enablecloudwatchlogsexports", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGatewayV2::Authorizer": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html", + "Properties": { + "IdentityValidationExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-identityvalidationexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthorizerUri": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizeruri", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthorizerCredentialsArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizercredentialsarn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthorizerType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizertype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AuthorizerResultTtlInSeconds": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizerresultttlinseconds", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "IdentitySource": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-identitysource", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFormation::WaitConditionHandle": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html", + "Properties": {} + }, + "AWS::SSM::MaintenanceWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html", + "Properties": { + "StartDate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-startdate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AllowUnassociatedTargets": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-allowunassociatedtargets", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Cutoff": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-cutoff", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "Schedule": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-schedule", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Duration": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-duration", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "EndDate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-enddate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ScheduleTimezone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-scheduletimezone", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::CloudFormation::Macro": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "FunctionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-functionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "LogGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-loggroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LogRoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-logrolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Route53::RecordSetGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html", + "Properties": { + "Comment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-comment", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HostedZoneId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-hostedzoneid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "HostedZoneName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-hostedzonename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "RecordSets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-recordsets", + "DuplicatesAllowed": false, + "ItemType": "RecordSet", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisFirehose::DeliveryStream": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html", + "Properties": { + "DeliveryStreamName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "DeliveryStreamType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-deliverystreamtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ElasticsearchDestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-elasticsearchdestinationconfiguration", + "Required": false, + "Type": "ElasticsearchDestinationConfiguration", + "UpdateType": "Mutable" + }, + "ExtendedS3DestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-extendeds3destinationconfiguration", + "Required": false, + "Type": "ExtendedS3DestinationConfiguration", + "UpdateType": "Mutable" + }, + "KinesisStreamSourceConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration", + "Required": false, + "Type": "KinesisStreamSourceConfiguration", + "UpdateType": "Mutable" + }, + "RedshiftDestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration", + "Required": false, + "Type": "RedshiftDestinationConfiguration", + "UpdateType": "Mutable" + }, + "S3DestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration", + "Required": false, + "Type": "S3DestinationConfiguration", + "UpdateType": "Mutable" + }, + "SplunkDestinationConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-splunkdestinationconfiguration", + "Required": false, + "Type": "SplunkDestinationConfiguration", + "UpdateType": "Mutable" + } + } + }, + "AWS::IAM::ManagedPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html", + "Properties": { + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Groups": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-groups", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "ManagedPolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-managedpolicyname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Path": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-ec2-dhcpoptions-path", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-policydocument", + "PrimitiveType": "Json", + "Required": true, + "UpdateType": "Mutable" + }, + "Roles": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-roles", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Users": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-users", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::PolicyPrincipalAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html", + "Properties": { + "PolicyName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-policyname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Principal": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-principal", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::DeviceDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html", + "Properties": { + "DeviceDefinitionId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html#cfn-greengrass-devicedefinitionversion-devicedefinitionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Devices": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html#cfn-greengrass-devicedefinitionversion-devices", + "ItemType": "Device", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApplicationAutoScaling::ScalableTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html", + "Properties": { + "MaxCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-maxcapacity", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "MinCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-mincapacity", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Mutable" + }, + "ResourceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-resourceid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "RoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-rolearn", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "ScalableDimension": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-scalabledimension", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ScheduledActions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-scheduledactions", + "DuplicatesAllowed": false, + "ItemType": "ScheduledAction", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "ServiceNamespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-servicenamespace", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SuspendedState": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-suspendedstate", + "Required": false, + "Type": "SuspendedState", + "UpdateType": "Mutable" + } + } + }, + "AWS::Amplify::Domain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html", + "Attributes": { + "DomainName": { + "PrimitiveType": "String" + }, + "StatusReason": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "DomainStatus": { + "PrimitiveType": "String" + }, + "CertificateRecord": { + "PrimitiveType": "String" + } + }, + "Properties": { + "SubDomainSettings": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-subdomainsettings", + "ItemType": "SubDomainSetting", + "UpdateType": "Mutable" + }, + "AppId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-appid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DomainName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-domainname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Route53Resolver::ResolverRuleAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html", + "Attributes": { + "VPCId": { + "PrimitiveType": "String" + }, + "ResolverRuleId": { + "PrimitiveType": "String" + }, + "ResolverRuleAssociationId": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "VPCId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html#cfn-route53resolver-resolverruleassociation-vpcid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResolverRuleId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html#cfn-route53resolver-resolverruleassociation-resolverruleid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html#cfn-route53resolver-resolverruleassociation-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::SubscriptionDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html", + "Attributes": { + "LatestVersionArn": { + "PrimitiveType": "String" + }, + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "InitialVersion": { + "Type": "SubscriptionDefinitionVersion", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-initialversion", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html#cfn-greengrass-subscriptiondefinition-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoTEvents::DetectorModel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html", + "Properties": { + "DetectorModelDefinition": { + "Type": "DetectorModelDefinition", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-detectormodeldefinition", + "UpdateType": "Mutable" + }, + "DetectorModelName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-detectormodelname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DetectorModelDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-detectormodeldescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Key": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-key", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html#cfn-iotevents-detectormodel-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::VpcLink": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html#cfn-apigateway-vpclink-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TargetArns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html#cfn-apigateway-vpclink-targetarns", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html#cfn-apigateway-vpclink-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html", + "Properties": { + "ApplicationName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-applicationname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ReferenceDataSource": { + "Type": "ReferenceDataSource", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html#cfn-kinesisanalyticsv2-applicationreferencedatasource-referencedatasource", + "UpdateType": "Mutable" + } + } + }, + "AWS::ApiGateway::Method": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html", + "Properties": { + "ApiKeyRequired": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-apikeyrequired", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "AuthorizationScopes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationscopes", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "AuthorizationType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AuthorizerId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizerid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HttpMethod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-httpmethod", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "Integration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-integration", + "Required": false, + "Type": "Integration", + "UpdateType": "Mutable" + }, + "MethodResponses": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-methodresponses", + "DuplicatesAllowed": false, + "ItemType": "MethodResponse", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "OperationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-operationname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "RequestModels": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestmodels", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "RequestParameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestparameters", + "DuplicatesAllowed": false, + "PrimitiveItemType": "Boolean", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "RequestValidatorId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestvalidatorid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ResourceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-resourceid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "RestApiId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-restapiid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::DMS::Endpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html", + "Attributes": { + "ExternalId": { + "PrimitiveType": "String" + } + }, + "Properties": { + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Port": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-port", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "DatabaseName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-databasename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ElasticsearchSettings": { + "Type": "ElasticsearchSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-elasticsearchsettings", + "UpdateType": "Mutable" + }, + "S3Settings": { + "Type": "S3Settings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-s3settings", + "UpdateType": "Mutable" + }, + "EngineName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-enginename", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "DynamoDbSettings": { + "Type": "DynamoDbSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-dynamodbsettings", + "UpdateType": "Mutable" + }, + "KinesisSettings": { + "Type": "KinesisSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-kinesissettings", + "UpdateType": "Mutable" + }, + "Username": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-username", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SslMode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-sslmode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ServerName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-servername", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ExtraConnectionAttributes": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-extraconnectionattributes", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EndpointType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-endpointtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-tags", + "ItemType": "Tag", + "UpdateType": "Immutable" + }, + "EndpointIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-endpointidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Password": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-password", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CertificateArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-certificatearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "MongoDbSettings": { + "Type": "MongoDbSettings", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html#cfn-dms-endpoint-mongodbsettings", + "UpdateType": "Mutable" + } + } + }, + "AWS::SES::ReceiptRuleSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptruleset.html", + "Properties": { + "RuleSetName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptruleset.html#cfn-ses-receiptruleset-rulesetname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ServiceCatalog::LaunchNotificationConstraint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "NotificationArns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-notificationarns", + "UpdateType": "Mutable" + }, + "AcceptLanguage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-acceptlanguage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PortfolioId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-portfolioid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ProductId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html#cfn-servicecatalog-launchnotificationconstraint-productid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppStream::StackUserAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html", + "Properties": { + "SendEmailNotification": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html#cfn-appstream-stackuserassociation-sendemailnotification", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "UserName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html#cfn-appstream-stackuserassociation-username", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "StackName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html#cfn-appstream-stackuserassociation-stackname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AuthenticationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html#cfn-appstream-stackuserassociation-authenticationtype", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::APNSVoipChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html", + "Properties": { + "BundleId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-bundleid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PrivateKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-privatekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DefaultAuthenticationMethod": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-defaultauthenticationmethod", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TokenKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-tokenkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "TeamId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-teamid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Certificate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-certificate", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TokenKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html#cfn-pinpoint-apnsvoipchannel-tokenkeyid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::SecretsManager::SecretTargetAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html", + "Properties": { + "SecretId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-secretid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TargetType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-targettype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TargetId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-targetid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VolumeAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html", + "Properties": { + "Device": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-device", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "InstanceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-instanceid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "VolumeId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-volumeid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::DirectoryService::SimpleAD": { + "Attributes": { + "Alias": { + "PrimitiveType": "String" + }, + "DnsIpAddresses": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html", + "Properties": { + "CreateAlias": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-createalias", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "EnableSso": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-enablesso", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Password": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-password", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ShortName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-shortname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Size": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-size", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "VpcSettings": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-vpcsettings", + "Required": true, + "Type": "VpcSettings", + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::ResourceDefinitionVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html", + "Properties": { + "Resources": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html#cfn-greengrass-resourcedefinitionversion-resources", + "ItemType": "ResourceInstance", + "UpdateType": "Immutable" + }, + "ResourceDefinitionId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html#cfn-greengrass-resourcedefinitionversion-resourcedefinitionid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Pinpoint::EmailChannel": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html", + "Properties": { + "ConfigurationSet": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-configurationset", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "FromAddress": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-fromaddress", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Enabled": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-enabled", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ApplicationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-applicationid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Identity": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-identity", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RoleArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html#cfn-pinpoint-emailchannel-rolearn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::Host": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html", + "Properties": { + "AutoPlacement": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-autoplacement", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "AvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-availabilityzone", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "HostRecovery": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-hostrecovery", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-instancetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGatewayV2::IntegrationResponse": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html", + "Properties": { + "ResponseTemplates": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-responsetemplates", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "TemplateSelectionExpression": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-templateselectionexpression", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ResponseParameters": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-responseparameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "ContentHandlingStrategy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-contenthandlingstrategy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IntegrationId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-integrationid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IntegrationResponseKey": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-integrationresponsekey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html#cfn-apigatewayv2-integrationresponse-apiid", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::ECS::TaskDefinition": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html", + "Properties": { + "ContainerDefinitions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-containerdefinitions", + "DuplicatesAllowed": false, + "ItemType": "ContainerDefinition", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Cpu": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-cpu", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ExecutionRoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-executionrolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Family": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-family", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "IpcMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-ipcmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Memory": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-memory", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "NetworkMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-networkmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PidMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-pidmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "PlacementConstraints": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-placementconstraints", + "DuplicatesAllowed": false, + "ItemType": "TaskDefinitionPlacementConstraint", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "ProxyConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-proxyconfiguration", + "Required": false, + "Type": "ProxyConfiguration", + "UpdateType": "Immutable" + }, + "RequiresCompatibilities": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-requirescompatibilities", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TaskRoleArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-taskrolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Volumes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-volumes", + "DuplicatesAllowed": false, + "ItemType": "Volume", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElastiCache::CacheCluster": { + "Attributes": { + "ConfigurationEndpoint.Address": { + "PrimitiveType": "String" + }, + "ConfigurationEndpoint.Port": { + "PrimitiveType": "String" + }, + "RedisEndpoint.Address": { + "PrimitiveType": "String" + }, + "RedisEndpoint.Port": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html", + "Properties": { + "AZMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-azmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "AutoMinorVersionUpgrade": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-autominorversionupgrade", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheNodeType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachenodetype", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "CacheParameterGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cacheparametergroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "CacheSecurityGroupNames": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachesecuritygroupnames", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "CacheSubnetGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachesubnetgroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "ClusterName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-clustername", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Engine": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-engine", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "EngineVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-engineversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NotificationTopicArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-notificationtopicarn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "NumCacheNodes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-numcachenodes", + "PrimitiveType": "Integer", + "Required": true, + "UpdateType": "Conditional" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "PreferredAvailabilityZone": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredavailabilityzone", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Conditional" + }, + "PreferredAvailabilityZones": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredavailabilityzones", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + }, + "PreferredMaintenanceWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredmaintenancewindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshotArns": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotarns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "SnapshotName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SnapshotRetentionLimit": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotretentionlimit", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "SnapshotWindow": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotwindow", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcSecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-vpcsecuritygroupids", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::ThingPrincipalAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html", + "Properties": { + "Principal": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-principal", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "ThingName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-thingname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::Cognito::UserPoolDomain": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html", + "Properties": { + "UserPoolId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html#cfn-cognito-userpooldomain-userpoolid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CustomDomainConfig": { + "Type": "CustomDomainConfigType", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html#cfn-cognito-userpooldomain-customdomainconfig", + "UpdateType": "Mutable" + }, + "Domain": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html#cfn-cognito-userpooldomain-domain", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::DocDB::DBClusterParameterGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html", + "Properties": { + "Description": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Parameters": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-parameters", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Family": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-family", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html#cfn-docdb-dbclusterparametergroup-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticBeanstalk::ApplicationVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html", + "Properties": { + "ApplicationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-applicationname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Description": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-description", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "SourceBundle": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-sourcebundle", + "Required": true, + "Type": "SourceBundle", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::VPCEndpoint": { + "Attributes": { + "CreationTimestamp": { + "PrimitiveType": "String" + }, + "DnsEntries": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "NetworkInterfaceIds": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html", + "Properties": { + "PolicyDocument": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-policydocument", + "PrimitiveType": "Json", + "Required": false, + "UpdateType": "Mutable" + }, + "PrivateDnsEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-privatednsenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "RouteTableIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-routetableids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "SecurityGroupIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-securitygroupids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "ServiceName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-servicename", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SubnetIds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-subnetids", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VpcEndpointType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-vpcendpointtype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::MSK::Cluster": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html", + "Properties": { + "BrokerNodeGroupInfo": { + "Type": "BrokerNodeGroupInfo", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-brokernodegroupinfo", + "UpdateType": "Immutable" + }, + "EnhancedMonitoring": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-enhancedmonitoring", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "KafkaVersion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-kafkaversion", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "NumberOfBrokerNodes": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-numberofbrokernodes", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "EncryptionInfo": { + "Type": "EncryptionInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-encryptioninfo", + "UpdateType": "Immutable" + }, + "ClusterName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-clustername", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ClientAuthentication": { + "Type": "ClientAuthentication", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-clientauthentication", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-tags", + "PrimitiveType": "Json", + "UpdateType": "Immutable" + }, + "ConfigurationInfo": { + "Type": "ConfigurationInfo", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html#cfn-msk-cluster-configurationinfo", + "UpdateType": "Immutable" + } + } + }, + "AWS::ElasticLoadBalancingV2::TargetGroup": { + "Attributes": { + "LoadBalancerArns": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "TargetGroupFullName": { + "PrimitiveType": "String" + }, + "TargetGroupName": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html", + "Properties": { + "HealthCheckEnabled": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckenabled", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthCheckIntervalSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckintervalseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthCheckPath": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckpath", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthCheckPort": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckport", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthCheckProtocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckprotocol", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthCheckTimeoutSeconds": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthchecktimeoutseconds", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthyThresholdCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthythresholdcount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Matcher": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-matcher", + "Required": false, + "Type": "Matcher", + "UpdateType": "Mutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-name", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Port": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-port", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Immutable" + }, + "Protocol": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-protocol", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TargetGroupAttributes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattributes", + "DuplicatesAllowed": false, + "ItemType": "TargetGroupAttribute", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TargetType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targettype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Targets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targets", + "DuplicatesAllowed": false, + "ItemType": "TargetDescription", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "UnhealthyThresholdCount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-unhealthythresholdcount", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-vpcid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::VPCGatewayAttachment": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html", + "Properties": { + "InternetGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-internetgatewayid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "VpnGatewayId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-vpngatewayid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + }, + "AWS::RoboMaker::Robot": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html", + "Properties": { + "Fleet": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-fleet", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Architecture": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-architecture", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "GreengrassGroupId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-greengrassgroupid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html#cfn-robomaker-robot-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Glue::Trigger": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html", + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "StartOnCreation": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-startoncreation", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Actions": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-actions", + "ItemType": "Action", + "UpdateType": "Mutable" + }, + "WorkflowName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-workflowname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Schedule": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-schedule", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Predicate": { + "Type": "Predicate", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html#cfn-glue-trigger-predicate", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPCCidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html", + "Properties": { + "AmazonProvidedIpv6CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-amazonprovidedipv6cidrblock", + "PrimitiveType": "Boolean", + "Required": false, + "UpdateType": "Immutable" + }, + "CidrBlock": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-cidrblock", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::SSM::Parameter": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html", + "Attributes": { + "Type": { + "PrimitiveType": "String" + }, + "Value": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Type": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-type", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-description", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Policies": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-policies", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AllowedPattern": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-allowedpattern", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-tier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Value": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-value", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Inspector::AssessmentTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "AssessmentTargetArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-assessmenttargetarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DurationInSeconds": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-durationinseconds", + "PrimitiveType": "Integer", + "UpdateType": "Immutable" + }, + "AssessmentTemplateName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-assessmenttemplatename", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "RulesPackageArns": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-rulespackagearns", + "UpdateType": "Immutable" + }, + "UserAttributesForFindings": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html#cfn-inspector-assessmenttemplate-userattributesforfindings", + "ItemType": "Tag", + "UpdateType": "Immutable" + } + } + }, + "AWS::AppMesh::Mesh": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html", + "Attributes": { + "Uid": { + "PrimitiveType": "String" + }, + "MeshName": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "MeshName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html#cfn-appmesh-mesh-meshname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Spec": { + "Type": "MeshSpec", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html#cfn-appmesh-mesh-spec", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html#cfn-appmesh-mesh-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::KinesisAnalytics::ApplicationReferenceDataSource": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html", + "Properties": { + "ApplicationName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-applicationname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ReferenceDataSource": { + "Type": "ReferenceDataSource", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html#cfn-kinesisanalytics-applicationreferencedatasource-referencedatasource", + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::ResourceDataSync": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html", + "Properties": { + "KMSKeyArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-kmskeyarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "BucketName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-bucketname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "BucketRegion": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-bucketregion", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SyncFormat": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-syncformat", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SyncName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-syncname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "BucketPrefix": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html#cfn-ssm-resourcedatasync-bucketprefix", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::KinesisAnalytics::Application": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html", + "Properties": { + "ApplicationName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html#cfn-kinesisanalytics-application-applicationname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Inputs": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html#cfn-kinesisanalytics-application-inputs", + "ItemType": "Input", + "UpdateType": "Mutable" + }, + "ApplicationDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html#cfn-kinesisanalytics-application-applicationdescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApplicationCode": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html#cfn-kinesisanalytics-application-applicationcode", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::DynamoDB::Table": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + }, + "StreamArn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html", + "Properties": { + "AttributeDefinitions": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-attributedef", + "DuplicatesAllowed": true, + "ItemType": "AttributeDefinition", + "Required": false, + "Type": "List", + "UpdateType": "Conditional" + }, + "BillingMode": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-billingmode", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "GlobalSecondaryIndexes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-gsi", + "DuplicatesAllowed": true, + "ItemType": "GlobalSecondaryIndex", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "KeySchema": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-keyschema", + "DuplicatesAllowed": false, + "ItemType": "KeySchema", + "Required": true, + "Type": "List", + "UpdateType": "Immutable" + }, + "LocalSecondaryIndexes": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-lsi", + "DuplicatesAllowed": true, + "ItemType": "LocalSecondaryIndex", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + }, + "PointInTimeRecoverySpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-pointintimerecoveryspecification", + "Required": false, + "Type": "PointInTimeRecoverySpecification", + "UpdateType": "Mutable" + }, + "ProvisionedThroughput": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-provisionedthroughput", + "Required": false, + "Type": "ProvisionedThroughput", + "UpdateType": "Mutable" + }, + "SSESpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-ssespecification", + "Required": false, + "Type": "SSESpecification", + "UpdateType": "Conditional" + }, + "StreamSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-streamspecification", + "Required": false, + "Type": "StreamSpecification", + "UpdateType": "Mutable" + }, + "TableName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tablename", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tags", + "DuplicatesAllowed": true, + "ItemType": "Tag", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TimeToLiveSpecification": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-timetolivespecification", + "Required": false, + "Type": "TimeToLiveSpecification", + "UpdateType": "Mutable" + } + } + }, + "AWS::Pinpoint::App": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Tags": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html#cfn-pinpoint-app-tags", + "PrimitiveType": "Json", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html#cfn-pinpoint-app-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::EC2Fleet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html", + "Properties": { + "TargetCapacitySpecification": { + "Type": "TargetCapacitySpecificationRequest", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-targetcapacityspecification", + "UpdateType": "Mutable" + }, + "OnDemandOptions": { + "Type": "OnDemandOptionsRequest", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-ondemandoptions", + "UpdateType": "Immutable" + }, + "Type": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-type", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ExcessCapacityTerminationPolicy": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-excesscapacityterminationpolicy", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TagSpecifications": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-tagspecifications", + "ItemType": "TagSpecification", + "UpdateType": "Immutable" + }, + "SpotOptions": { + "Type": "SpotOptionsRequest", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-spotoptions", + "UpdateType": "Immutable" + }, + "ValidFrom": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-validfrom", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ReplaceUnhealthyInstances": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-replaceunhealthyinstances", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "LaunchTemplateConfigs": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-launchtemplateconfigs", + "ItemType": "FleetLaunchTemplateConfigRequest", + "UpdateType": "Immutable" + }, + "TerminateInstancesWithExpiration": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-terminateinstanceswithexpiration", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "ValidUntil": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html#cfn-ec2-ec2fleet-validuntil", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Greengrass::GroupVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html", + "Properties": { + "LoggerDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-loggerdefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "DeviceDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-devicedefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "FunctionDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-functiondefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "CoreDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-coredefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResourceDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-resourcedefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ConnectorDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-connectordefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SubscriptionDefinitionVersionArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-subscriptiondefinitionversionarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "GroupId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html#cfn-greengrass-groupversion-groupid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Lambda::Permission": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html", + "Properties": { + "Action": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-action", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "EventSourceToken": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-eventsourcetoken", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "FunctionName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-functionname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Principal": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-principal", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "SourceAccount": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-sourceaccount", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "SourceArn": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-sourcearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + } + } + }, + "AWS::GuardDuty::IPSet": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html", + "Properties": { + "Format": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-format", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Activate": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-activate", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "DetectorId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-detectorid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "Location": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html#cfn-guardduty-ipset-location", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::IoT::Certificate": { + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html", + "Properties": { + "CertificateSigningRequest": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatesigningrequest", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "Status": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-status", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + } + } + }, + "AWS::SSM::Association": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html", + "Properties": { + "AssociationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-associationname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DocumentVersion": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-documentversion", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-instanceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "Name": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-name", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "OutputLocation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-outputlocation", + "Required": false, + "Type": "InstanceAssociationOutputLocation", + "UpdateType": "Mutable" + }, + "Parameters": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-parameters", + "DuplicatesAllowed": false, + "ItemType": "ParameterValues", + "Required": false, + "Type": "Map", + "UpdateType": "Mutable" + }, + "ScheduleExpression": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-scheduleexpression", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Targets": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-targets", + "DuplicatesAllowed": false, + "ItemType": "Target", + "Required": false, + "Type": "List", + "UpdateType": "Immutable" + } + } + }, + "AWS::CodeStar::GitHubRepository": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html", + "Properties": { + "EnableIssues": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-enableissues", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "RepositoryName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-repositoryname", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RepositoryAccessToken": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-repositoryaccesstoken", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "RepositoryOwner": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-repositoryowner", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "IsPrivate": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-isprivate", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Code": { + "Type": "Code", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-code", + "UpdateType": "Mutable" + }, + "RepositoryDescription": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html#cfn-codestar-githubrepository-repositorydescription", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::Athena::NamedQuery": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html", + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "QueryString": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-querystring", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Database": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-database", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html#cfn-athena-namedquery-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::Inspector::AssessmentTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html", + "Attributes": { + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "AssessmentTargetName": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html#cfn-inspector-assessmenttarget-assessmenttargetname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ResourceGroupArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html#cfn-inspector-assessmenttarget-resourcegrouparn", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::AutoScaling::AutoScalingGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html", + "Properties": { + "AutoScalingGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-autoscaling-autoscalinggroup-autoscalinggroupname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "AvailabilityZones": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-availabilityzones", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "Cooldown": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-cooldown", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "DesiredCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-desiredcapacity", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthCheckGracePeriod": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-healthcheckgraceperiod", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "HealthCheckType": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-healthchecktype", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "InstanceId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-instanceid", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Immutable" + }, + "LaunchConfigurationName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-launchconfigurationname", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "LaunchTemplate": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-launchtemplate", + "Required": false, + "Type": "LaunchTemplateSpecification", + "UpdateType": "Mutable" + }, + "LifecycleHookSpecificationList": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-autoscaling-autoscalinggroup-lifecyclehookspecificationlist", + "DuplicatesAllowed": true, + "ItemType": "LifecycleHookSpecification", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "LoadBalancerNames": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-loadbalancernames", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MaxSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-maxsize", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MetricsCollection": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-metricscollection", + "DuplicatesAllowed": true, + "ItemType": "MetricsCollection", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "MinSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-minsize", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "MixedInstancesPolicy": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-mixedinstancespolicy", + "Required": false, + "Type": "MixedInstancesPolicy", + "UpdateType": "Mutable" + }, + "NotificationConfigurations": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-notificationconfigurations", + "DuplicatesAllowed": true, + "ItemType": "NotificationConfiguration", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "PlacementGroup": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-placementgroup", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "ServiceLinkedRoleARN": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-autoscaling-autoscalinggroup-servicelinkedrolearn", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "Tags": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-tags", + "DuplicatesAllowed": true, + "ItemType": "TagProperty", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TargetGroupARNs": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-targetgrouparns", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "TerminationPolicies": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-termpolicy", + "DuplicatesAllowed": false, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + }, + "VPCZoneIdentifier": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-vpczoneidentifier", + "DuplicatesAllowed": true, + "PrimitiveItemType": "String", + "Required": false, + "Type": "List", + "UpdateType": "Mutable" + } + } + }, + "AWS::Route53Resolver::ResolverEndpoint": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html", + "Attributes": { + "ResolverEndpointId": { + "PrimitiveType": "String" + }, + "IpAddressCount": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + }, + "Direction": { + "PrimitiveType": "String" + }, + "HostVPCId": { + "PrimitiveType": "String" + }, + "Name": { + "PrimitiveType": "String" + } + }, + "Properties": { + "IpAddresses": { + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-ipaddresses", + "ItemType": "IpAddressRequest", + "UpdateType": "Mutable" + }, + "Direction": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-direction", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "SecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-securitygroupids", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + }, + "Name": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html#cfn-route53resolver-resolverendpoint-name", + "PrimitiveType": "String", + "UpdateType": "Mutable" + } + } + }, + "AWS::EC2::VPCDHCPOptionsAssociation": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html", + "Properties": { + "DhcpOptionsId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html#cfn-ec2-vpcdhcpoptionsassociation-dhcpoptionsid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Mutable" + }, + "VpcId": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html#cfn-ec2-vpcdhcpoptionsassociation-vpcid", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + } + } + }, + "AWS::DMS::ReplicationTask": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html", + "Properties": { + "ReplicationTaskSettings": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-replicationtasksettings", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TableMappings": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-tablemappings", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CdcStartPosition": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-cdcstartposition", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ReplicationTaskIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-replicationtaskidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "CdcStopPosition": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-cdcstopposition", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "SourceEndpointArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-sourceendpointarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "MigrationType": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-migrationtype", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "TargetEndpointArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-targetendpointarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "ReplicationInstanceArn": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-replicationinstancearn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-tags", + "ItemType": "Tag", + "UpdateType": "Immutable" + }, + "CdcStartTime": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html#cfn-dms-replicationtask-cdcstarttime", + "PrimitiveType": "Double", + "UpdateType": "Mutable" + } + } + }, + "AWS::ServiceDiscovery::PublicDnsNamespace": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html", + "Attributes": { + "Id": { + "PrimitiveType": "String" + }, + "Arn": { + "PrimitiveType": "String" + } + }, + "Properties": { + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html#cfn-servicediscovery-publicdnsnamespace-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html#cfn-servicediscovery-publicdnsnamespace-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::EC2::TrafficMirrorTarget": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html", + "Properties": { + "NetworkLoadBalancerArn": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-networkloadbalancerarn", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Description": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-description", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "NetworkInterfaceId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-networkinterfaceid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html#cfn-ec2-trafficmirrortarget-tags", + "ItemType": "Tag", + "UpdateType": "Mutable" + } + } + }, + "AWS::Glue::SecurityConfiguration": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html", + "Properties": { + "EncryptionConfiguration": { + "Type": "EncryptionConfiguration", + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html#cfn-glue-securityconfiguration-encryptionconfiguration", + "UpdateType": "Mutable" + }, + "Name": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html#cfn-glue-securityconfiguration-name", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::DMS::ReplicationInstance": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html", + "Attributes": { + "ReplicationInstancePublicIpAddresses": { + "PrimitiveItemType": "String", + "Type": "List" + }, + "ReplicationInstancePrivateIpAddresses": { + "PrimitiveItemType": "String", + "Type": "List" + } + }, + "Properties": { + "ReplicationInstanceIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-replicationinstanceidentifier", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "EngineVersion": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-engineversion", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "KmsKeyId": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-kmskeyid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AvailabilityZone": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-availabilityzone", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "PreferredMaintenanceWindow": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-preferredmaintenancewindow", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "AutoMinorVersionUpgrade": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-autominorversionupgrade", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ReplicationSubnetGroupIdentifier": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-replicationsubnetgroupidentifier", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "AllocatedStorage": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-allocatedstorage", + "PrimitiveType": "Integer", + "UpdateType": "Mutable" + }, + "VpcSecurityGroupIds": { + "PrimitiveItemType": "String", + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-vpcsecuritygroupids", + "UpdateType": "Mutable" + }, + "AllowMajorVersionUpgrade": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-allowmajorversionupgrade", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "ReplicationInstanceClass": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-replicationinstanceclass", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "PubliclyAccessible": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-publiclyaccessible", + "PrimitiveType": "Boolean", + "UpdateType": "Immutable" + }, + "MultiAZ": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-multiaz", + "PrimitiveType": "Boolean", + "UpdateType": "Mutable" + }, + "Tags": { + "Type": "List", + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html#cfn-dms-replicationinstance-tags", + "ItemType": "Tag", + "UpdateType": "Immutable" + } + } + }, + "AWS::ApiGatewayV2::ApiMapping": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html", + "Properties": { + "DomainName": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-domainname", + "PrimitiveType": "String", + "UpdateType": "Immutable" + }, + "Stage": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-stage", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiMappingKey": { + "Required": false, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-apimappingkey", + "PrimitiveType": "String", + "UpdateType": "Mutable" + }, + "ApiId": { + "Required": true, + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-apiid", + "PrimitiveType": "String", + "UpdateType": "Immutable" + } + } + }, + "AWS::AutoScaling::ScheduledAction": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html", + "Properties": { + "AutoScalingGroupName": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-asgname", + "PrimitiveType": "String", + "Required": true, + "UpdateType": "Immutable" + }, + "DesiredCapacity": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-desiredcapacity", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "EndTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-endtime", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "MaxSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-maxsize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "MinSize": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-minsize", + "PrimitiveType": "Integer", + "Required": false, + "UpdateType": "Mutable" + }, + "Recurrence": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-recurrence", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + }, + "StartTime": { + "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-starttime", + "PrimitiveType": "String", + "Required": false, + "UpdateType": "Mutable" + } + } + } + }, + "ResourceSpecificationVersion": "7.1.0" +} \ No newline at end of file diff --git a/generate/generate.go b/generate/generate.go index 4d74cfc156..babb0f306e 100644 --- a/generate/generate.go +++ b/generate/generate.go @@ -16,15 +16,24 @@ import ( // ResourceGenerator takes AWS CloudFormation Resource Specification // documents, and generates Go structs and a JSON Schema from them. type ResourceGenerator struct { - primaryUrl string + primaryURL string fragmentUrls map[string]string Results *ResourceGeneratorResults } +// GeneratedResource represents a CloudFormation resource that has been generated +// and includes the name (e.g. AWS::S3::Bucket), Package Name (e.g. s3) and struct name (e.g. Bucket) +type GeneratedResource struct { + Name string + BaseName string + PackageName string + StructName string +} + // ResourceGeneratorResults contains a summary of the items generated type ResourceGeneratorResults struct { - AllResources map[string]string - UpdatedResources map[string]string + AllResources []GeneratedResource + UpdatedResources []GeneratedResource UpdatedSchemas map[string]string ProcessedCount int } @@ -50,14 +59,14 @@ var ( // document and an array of fragment Resource Specification documents (such as transforms), // and generates Go structs and a JSON Schema from them. // The input can be a mix of URLs (https://) or files (file://). -func NewResourceGenerator(primaryUrl string, fragmentUrls map[string]string) (*ResourceGenerator, error) { +func NewResourceGenerator(primaryURL string, fragmentUrls map[string]string) (*ResourceGenerator, error) { rg := &ResourceGenerator{ - primaryUrl: primaryUrl, + primaryURL: primaryURL, fragmentUrls: fragmentUrls, Results: &ResourceGeneratorResults{ - UpdatedResources: map[string]string{}, - AllResources: map[string]string{}, + UpdatedResources: []GeneratedResource{}, + AllResources: []GeneratedResource{}, UpdatedSchemas: map[string]string{}, ProcessedCount: 0, }, @@ -72,8 +81,8 @@ func (rg *ResourceGenerator) Generate() error { // Process the primary template first, since the primary template resources // are added to the JSON schema for fragment transform specs - fmt.Printf("Downloading cloudformation specification from %s\n", rg.primaryUrl) - primaryData, err := rg.downloadSpec(rg.primaryUrl) + fmt.Printf("Downloading cloudformation specification from %s\n", rg.primaryURL) + primaryData, err := rg.downloadSpec(rg.primaryURL) if err != nil { return err } @@ -156,7 +165,28 @@ func (rg *ResourceGenerator) processSpec(specname string, data []byte) (*CloudFo // Add the resources processed to the ResourceGenerator output for name := range spec.Resources { - rg.Results.AllResources[name] = structName(name) + + sname, err := structName(name) + if err != nil { + return nil, err + } + + pname, err := packageName(name, true) + if err != nil { + return nil, err + } + + basename, err := packageName(name, false) + if err != nil { + return nil, err + } + + rg.Results.AllResources = append(rg.Results.AllResources, GeneratedResource{ + Name: name, + BaseName: basename, + PackageName: pname, + StructName: sname, + }) } // Write all of the resources in the spec file @@ -177,7 +207,7 @@ func (rg *ResourceGenerator) processSpec(specname string, data []byte) (*CloudFo } -func (rg *ResourceGenerator) generateAllResourcesMap(resources map[string]string) error { +func (rg *ResourceGenerator) generateAllResourcesMap(resources []GeneratedResource) error { // Open the all resources template tmpl, err := template.ParseFiles("generate/templates/all.template") @@ -186,7 +216,7 @@ func (rg *ResourceGenerator) generateAllResourcesMap(resources map[string]string } templateData := struct { - Resources map[string]string + Resources []GeneratedResource }{ Resources: resources, } @@ -239,13 +269,35 @@ func (rg *ResourceGenerator) generateResources(name string, resource Resource, i } } + // Check if this resource has any tag properties + // note: the property might not always be called 'Tags' + // see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-tagstoadd + hasTags := false + for _, property := range resource.Properties { + if property.ItemType == "Tag" { + hasTags = true + break + } + } + // Pass in the following information into the template - sname := structName(name) - structNameParts := strings.Split(name, ".") - basename := structName(structNameParts[0]) + sname, err := structName(name) + if err != nil { + return err + } + + pname, err := packageName(name, true) + if err != nil { + return err + } + + nameParts := strings.Split(name, "::") + nameParts = strings.Split(nameParts[len(nameParts)-1], ".") + basename := nameParts[0] templateData := struct { Name string + PackageName string StructName string Basename string Resource Resource @@ -253,8 +305,10 @@ func (rg *ResourceGenerator) generateResources(name string, resource Resource, i Version string HasUpdatePolicy bool HasCreationPolicy bool + HasTags bool }{ Name: name, + PackageName: pname, StructName: sname, Basename: basename, Resource: resource, @@ -262,6 +316,7 @@ func (rg *ResourceGenerator) generateResources(name string, resource Resource, i Version: spec.ResourceSpecificationVersion, HasUpdatePolicy: hasUpdatePolicy, HasCreationPolicy: hasCreationPolicy, + HasTags: hasTags, } // Execute the template, writing it to a buffer @@ -274,22 +329,33 @@ func (rg *ResourceGenerator) generateResources(name string, resource Resource, i // Format the generated Go code with gofmt formatted, err := format.Source(buf.Bytes()) if err != nil { + fmt.Println(string(buf.Bytes())) return fmt.Errorf("failed to format Go file for resource %s: %s", name, err) } // Check if the file has changed since the last time generate ran - fn := "cloudformation/resources/" + filename(name) + dir := "cloudformation/" + pname + fn := dir + "/" + filename(name) current, err := ioutil.ReadFile(fn) if err != nil || bytes.Compare(formatted, current) != 0 { + // Create the directory if it doesn't exist + if _, err := os.Stat(dir); os.IsNotExist(err) { + os.Mkdir(dir, 0755) + } + // Write the file contents out if err := ioutil.WriteFile(fn, formatted, 0644); err != nil { return fmt.Errorf("failed to write resource file %s: %s", fn, err) } - // Log the updated resource name to the results - rg.Results.UpdatedResources[fn] = name + rg.Results.UpdatedResources = append(rg.Results.UpdatedResources, GeneratedResource{ + Name: name, + BaseName: basename, + PackageName: pname, + StructName: sname, + }) } @@ -352,7 +418,7 @@ func (rg *ResourceGenerator) generateJSONSchema(specname string, spec *CloudForm } -func generatePolymorphicProperty(name string, property Property) { +func generatePolymorphicProperty(typename string, name string, property Property) { // Open the polymorphic property template tmpl, err := template.New("polymorphic-property.template").Funcs(template.FuncMap{ @@ -366,14 +432,22 @@ func generatePolymorphicProperty(name string, property Property) { types = append(types, property.ItemTypes...) types = append(types, property.Types...) + packageName, err := packageName(typename, true) + if err != nil { + fmt.Printf("Error: Invalid CloudFormation resource %s\n%s\n", typename, err) + os.Exit(1) + } + templateData := struct { Name string + PackageName string Basename string Property Property Types []string TypesJoined string }{ Name: name, + PackageName: packageName, Basename: nameParts[0], Property: property, Types: types, @@ -395,8 +469,14 @@ func generatePolymorphicProperty(name string, property Property) { os.Exit(1) } + // Ensure the package directory exists + dir := "cloudformation/" + packageName + if _, err := os.Stat(dir); os.IsNotExist(err) { + os.Mkdir(dir, 0755) + } + // Write the file out - if err := ioutil.WriteFile("cloudformation/resources/"+filename(name), formatted, 0644); err != nil { + if err := ioutil.WriteFile(dir+"/"+filename(name), formatted, 0644); err != nil { fmt.Printf("Error: Failed to write JSON Schema\n%s\n", err) os.Exit(1) } diff --git a/generate/main.go b/generate/main.go index 3a028e221e..14690ab169 100644 --- a/generate/main.go +++ b/generate/main.go @@ -9,9 +9,12 @@ func main() { fmt.Printf("GoFormation Resource Generator\n") + // Fetch and process the AWS published CloudFormation Resource Specification cloudformationSpec := "https://d1uauaxba7bl26.cloudfront.net/latest/gzip/CloudFormationResourceSpecification.json" otherSpecs := map[string]string{ + // We have a manually generated SAM specification in this repo too + // which needs to be manually updated when the SAM spec changes "sam": "file://generate/sam-2016-10-31.json", } @@ -29,7 +32,7 @@ func main() { if len(rg.Results.UpdatedResources) > 0 { fmt.Printf("\nUpdated the following AWS CloudFormation resources:\n\n") for _, updated := range rg.Results.UpdatedResources { - fmt.Printf(" - %s\n", updated) + fmt.Printf(" - %s\n", updated.Name) } fmt.Printf("\n") } diff --git a/generate/naming.go b/generate/naming.go index d5c07c9ba8..42ddd74ebe 100644 --- a/generate/naming.go +++ b/generate/naming.go @@ -1,6 +1,9 @@ package main -import "strings" +import ( + "errors" + "strings" +) // filename takes a resource or property name (e.g. AWS::CloudFront::Distribution.Restrictions) // and returns an appropriate filename for the generated struct (e.g. aws-cloudfront-distribution_restrictions.go) @@ -24,14 +27,44 @@ func filename(input string) string { // structName takes a resource or property name (e.g. AWS::CloudFront::Distribution.Restrictions) // and returns an appropriate struct name for the generated struct (e.g. AWSCloudfrontDistributionRestrictions) -func structName(input string) string { +func structName(input string) (string, error) { // Remove :: - output := strings.Replace(input, "::", "", -1) + //output := strings.Replace(input, "::", "", -1) + + if input == "Tag" { + return "Tag", nil + } + + parts := strings.Split(input, "::") + if len(parts) < 2 { + return "", errors.New("invalid CloudFormation resource type: " + input) + } // Remove . - output = strings.Replace(output, ".", "_", -1) + output := strings.Replace(parts[2], ".", "_", -1) - return output + return output, nil + +} + +// packageName generates a go package name based on the AWS CloudFormation resource type +// For example, AWS::S3::Bucket would generate a package named 's3' +func packageName(input string, lowercase bool) (string, error) { + + if input == "Tag" { + return "cloudformation", nil + } + + parts := strings.Split(input, "::") + if len(parts) < 2 { + return "", errors.New("invalid CloudFormation resource type: " + input) + } + + if lowercase { + return strings.ToLower(parts[1]), nil + } + + return parts[1], nil } diff --git a/generate/property.go b/generate/property.go index d49f8d6ecd..b6449baaaa 100644 --- a/generate/property.go +++ b/generate/property.go @@ -111,6 +111,7 @@ func (p Property) IsPrimitive() bool { return p.PrimitiveType != "" } +// IsNumeric checks whether a property is numeric func (p Property) IsNumeric() bool { return p.IsPrimitive() && (p.PrimitiveType == "Long" || @@ -146,11 +147,15 @@ func (p Property) IsCustomType() bool { // GoType returns the correct type for this property // within a Go struct. For example, []string or map[string]AWSLambdaFunction_VpcConfig -func (p Property) GoType(basename string, name string) string { +func (p Property) GoType(typename string, basename string, name string) string { + + if p.ItemType == "Tag" { + return "[]tags.Tag" + } if p.IsPolymorphic() { - generatePolymorphicProperty(basename+"_"+name, p) + generatePolymorphicProperty(typename, basename+"_"+name, p) return basename + "_" + name } @@ -161,10 +166,6 @@ func (p Property) GoType(basename string, name string) string { return "map[string]" + convertTypeToGo(p.PrimitiveItemType) } - if p.ItemType == "Tag" { - return "map[string]Tag" - } - return "map[string]" + basename + "_" + p.ItemType } @@ -175,10 +176,6 @@ func (p Property) GoType(basename string, name string) string { return "[]" + convertTypeToGo(p.PrimitiveItemType) } - if p.ItemType == "Tag" { - return "[]Tag" - } - return "[]" + basename + "_" + p.ItemType } diff --git a/generate/property_test.go b/generate/property_test.go index d6a9958f25..d84260a837 100644 --- a/generate/property_test.go +++ b/generate/property_test.go @@ -3,7 +3,7 @@ package main_test import ( "encoding/json" - "github.com/awslabs/goformation/v2/cloudformation/resources" + "github.com/awslabs/goformation/v3/cloudformation/serverless" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) @@ -14,7 +14,7 @@ var _ = Describe("Goformation Code Generator", func() { Context("specified as a Go struct", func() { - property := &resources.AWSServerlessFunction_S3Location{ + property := &serverless.Function_S3Location{ Bucket: "test-bucket", Key: "test-key", Version: 123, @@ -31,13 +31,13 @@ var _ = Describe("Goformation Code Generator", func() { Context("specified as JSON", func() { property := []byte(`{"Bucket":"test-bucket","Key":"test-key","Version":123}`) - expected := &resources.AWSServerlessFunction_S3Location{ + expected := &serverless.Function_S3Location{ Bucket: "test-bucket", Key: "test-key", Version: 123, } - result := &resources.AWSServerlessFunction_S3Location{} + result := &serverless.Function_S3Location{} err := json.Unmarshal(property, result) It("should unmarshal to a Go struct successfully", func() { Expect(result).To(Equal(expected)) @@ -56,7 +56,7 @@ var _ = Describe("Goformation Code Generator", func() { property := []byte(`{"Properties":{"BatchSize":10,"StartingPosition":"LATEST","Stream":"arn"},"Type":"Kinesis"}`) - result := &resources.AWSServerlessFunction_EventSource{} + result := &serverless.Function_EventSource{} err := json.Unmarshal(property, result) output, err2 := json.Marshal(result) @@ -72,7 +72,7 @@ var _ = Describe("Goformation Code Generator", func() { property := []byte(`{"Properties":{"Bucket":"asd","Events":"LATEST"},"Type":"S3"}`) - result := &resources.AWSServerlessFunction_EventSource{} + result := &serverless.Function_EventSource{} err := json.Unmarshal(property, result) output, err2 := json.Marshal(result) @@ -87,9 +87,9 @@ var _ = Describe("Goformation Code Generator", func() { Context("properly Marshals best value", func() { expected := []byte(`{"BatchSize":10,"Stream":"arn"}`) - result := &resources.AWSServerlessFunction_Properties{ - SQSEvent: &resources.AWSServerlessFunction_SQSEvent{BatchSize: 10}, - KinesisEvent: &resources.AWSServerlessFunction_KinesisEvent{BatchSize: 10, Stream: "arn"}, + result := &serverless.Function_Properties{ + SQSEvent: &serverless.Function_SQSEvent{BatchSize: 10}, + KinesisEvent: &serverless.Function_KinesisEvent{BatchSize: 10, Stream: "arn"}, } output, err := result.MarshalJSON() @@ -108,7 +108,7 @@ var _ = Describe("Goformation Code Generator", func() { Context("specified as a Go struct", func() { value := "test-primitive-value" - property := &resources.AWSServerlessFunction_CodeUri{ + property := &serverless.Function_CodeUri{ String: &value, } @@ -125,11 +125,11 @@ var _ = Describe("Goformation Code Generator", func() { property := []byte(`"test-primitive-value"`) value := "test-primitive-value" - expected := &resources.AWSServerlessFunction_CodeUri{ + expected := &serverless.Function_CodeUri{ String: &value, } - result := &resources.AWSServerlessFunction_CodeUri{} + result := &serverless.Function_CodeUri{} err := json.Unmarshal(property, result) It("should unmarshal to a Go struct successfully", func() { Expect(result).To(Equal(expected)) @@ -144,8 +144,8 @@ var _ = Describe("Goformation Code Generator", func() { Context("specified as a Go struct", func() { - property := &resources.AWSServerlessFunction_CodeUri{ - S3Location: &resources.AWSServerlessFunction_S3Location{ + property := &serverless.Function_CodeUri{ + S3Location: &serverless.Function_S3Location{ Bucket: "test-bucket", Key: "test-key", Version: 123, @@ -166,15 +166,15 @@ var _ = Describe("Goformation Code Generator", func() { property := []byte(`{"Bucket":"test-bucket","Key":"test-key","Version":123}`) - expected := &resources.AWSServerlessFunction_CodeUri{ - S3Location: &resources.AWSServerlessFunction_S3Location{ + expected := &serverless.Function_CodeUri{ + S3Location: &serverless.Function_S3Location{ Bucket: "test-bucket", Key: "test-key", Version: 123, }, } - result := &resources.AWSServerlessFunction_CodeUri{} + result := &serverless.Function_CodeUri{} err := json.Unmarshal(property, result) It("should unmarshal to a Go struct successfully", func() { Expect(result).To(Equal(expected)) diff --git a/generate/resource_test.go b/generate/resource_test.go index 27666c417a..7223f79e6c 100644 --- a/generate/resource_test.go +++ b/generate/resource_test.go @@ -3,7 +3,9 @@ package main_test import ( "encoding/json" - "github.com/awslabs/goformation/v2/cloudformation/resources" + "github.com/awslabs/goformation/v3/cloudformation/ec2" + "github.com/awslabs/goformation/v3/cloudformation/s3" + "github.com/awslabs/goformation/v3/cloudformation/serverless" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) @@ -17,9 +19,9 @@ var _ = Describe("Resource", func() { Context("with a simple primitive used for a polymorphic property", func() { codeuri := "s3://bucket/key" - resource := &resources.AWSServerlessFunction{ + resource := &serverless.Function{ Runtime: "nodejs6.10", - CodeUri: &resources.AWSServerlessFunction_CodeUri{ + CodeUri: &serverless.Function_CodeUri{ String: &codeuri, }, } @@ -36,10 +38,10 @@ var _ = Describe("Resource", func() { Context("with a custom type used for a polymorphic property", func() { - resource := &resources.AWSServerlessFunction{ + resource := &serverless.Function{ Runtime: "nodejs6.10", - CodeUri: &resources.AWSServerlessFunction_CodeUri{ - S3Location: &resources.AWSServerlessFunction_S3Location{ + CodeUri: &serverless.Function_CodeUri{ + S3Location: &serverless.Function_S3Location{ Bucket: "test-bucket", Key: "test-key", Version: 123, @@ -67,7 +69,7 @@ var _ = Describe("Resource", func() { Context("with a dependency on another resource", func() { - resource := &resources.AWSEC2Instance{ + resource := &ec2.Instance{ ImageId: "ami-0123456789", } resource.SetDependsOn([]string{"MyDependency"}) @@ -84,7 +86,7 @@ var _ = Describe("Resource", func() { Context("with a metadata attribute", func() { - resource := &resources.AWSS3Bucket{ + resource := &s3.Bucket{ BucketName: "MyBucket", } resource.SetMetadata(map[string]interface{}{"Object1": "Location1", "Object2": "Location2"}) @@ -106,12 +108,12 @@ var _ = Describe("Resource", func() { Context("with a dependency on another resource", func() { property := []byte(`{"Type":"AWS::EC2::Instance","Properties":{"ImageId":"ami-0123456789"},"DependsOn":["MyDependency"]}`) - expected := &resources.AWSEC2Instance{ + expected := &ec2.Instance{ ImageId: "ami-0123456789", } expected.SetDependsOn([]string{"MyDependency"}) - result := &resources.AWSEC2Instance{} + result := &ec2.Instance{} err := json.Unmarshal(property, result) It("should unmarshal to a Go struct successfully", func() { Expect(result).To(Equal(expected)) @@ -123,12 +125,12 @@ var _ = Describe("Resource", func() { Context("with a metadata attribute", func() { property := []byte(`{"Type":"AWS::S3::Bucket","Properties":{"BucketName":"MyBucket"},"Metadata":{"Object1":"Location1","Object2":"Location2"}}`) - expected := &resources.AWSS3Bucket{ + expected := &s3.Bucket{ BucketName: "MyBucket", } expected.SetMetadata(map[string]interface{}{"Object1": "Location1", "Object2": "Location2"}) - result := &resources.AWSS3Bucket{} + result := &s3.Bucket{} err := json.Unmarshal(property, result) It("should unmarshal to a Go struct successfully", func() { Expect(result).To(Equal(expected)) @@ -147,9 +149,9 @@ var _ = Describe("Resource", func() { Context("with a list type", func() { - subproperty := &resources.AWSServerlessFunction_S3Event{ + subproperty := &serverless.Function_S3Event{ Bucket: "my-bucket", - Events: &resources.AWSServerlessFunction_Events{ + Events: &serverless.Function_Events{ StringArray: &[]string{"s3:ObjectCreated:*", "s3:ObjectRemoved:*"}, }, } @@ -167,9 +169,9 @@ var _ = Describe("Resource", func() { Context("with a primitive type", func() { event := "s3:ObjectCreated:*" - subproperty := &resources.AWSServerlessFunction_S3Event{ + subproperty := &serverless.Function_S3Event{ Bucket: "my-bucket", - Events: &resources.AWSServerlessFunction_Events{ + Events: &serverless.Function_Events{ String: &event, }, } diff --git a/generate/templates/all.template b/generate/templates/all.template index 7e1b8b14a3..65ddccf56a 100644 --- a/generate/templates/all.template +++ b/generate/templates/all.template @@ -1,41 +1,40 @@ package cloudformation import ( - "fmt" - "github.com/awslabs/goformation/v2/cloudformation/resources" + "fmt"{{range $resource := .Resources}} + "github.com/awslabs/goformation/v3/cloudformation/{{$resource.PackageName}}"{{end}} ) // AllResources fetches an iterable map all CloudFormation and SAM resources func AllResources() map[string]Resource { - return map[string]Resource{ {{range $name, $resource := .Resources}} - "{{$name}}": &resources.{{$resource}}{},{{end}} + return map[string]Resource{ {{range $resource := .Resources}} + "{{$resource.Name}}": &{{$resource.PackageName}}.{{$resource.StructName}}{},{{end}} } } - -{{range $name, $resource := .Resources}} -// GetAll{{$resource}}Resources retrieves all {{$resource}} items from an AWS CloudFormation template -func (t *Template) GetAll{{$resource}}Resources () map[string]*resources.{{$resource}} { - results := map[string]*resources.{{$resource}}{} +{{range $resource := .Resources}} +// GetAll{{$resource.BaseName}}{{$resource.StructName}}Resources retrieves all {{$resource.PackageName}}.{{$resource.StructName}} items from an AWS CloudFormation template +func (t *Template) GetAll{{$resource.BaseName}}{{$resource.StructName}}Resources () map[string]*{{$resource.PackageName}}.{{$resource.StructName}} { + results := map[string]*{{$resource.PackageName}}.{{$resource.StructName}}{} for name, untyped := range t.Resources { switch resource := untyped.(type) { - case *resources.{{$resource}}: + case *{{$resource.PackageName}}.{{$resource.StructName}}: results[name] = resource } } return results } -// Get{{$resource}}WithName retrieves all {{$resource}} items from an AWS CloudFormation template +// Get{{$resource.BaseName}}{{$resource.StructName}}WithName retrieves all {{$resource.PackageName}}.{{$resource.StructName}} items from an AWS CloudFormation template // whose logical ID matches the provided name. Returns an error if not found. -func (t *Template) Get{{$resource}}WithName (name string) (*resources.{{$resource}}, error) { +func (t *Template) Get{{$resource.BaseName}}{{$resource.StructName}}WithName (name string) (*{{$resource.PackageName}}.{{$resource.StructName}}, error) { if untyped, ok := t.Resources[name]; ok { switch resource := untyped.(type) { - case *resources.{{$resource}}: + case *{{$resource.PackageName}}.{{$resource.StructName}}: return resource, nil } } - return nil, fmt.Errorf("resource %q of type {{$resource}} not found", name) + return nil, fmt.Errorf("resource %q of type {{$resource.PackageName}}.{{$resource.StructName}} not found", name) } {{end}} \ No newline at end of file diff --git a/generate/templates/polymorphic-property.template b/generate/templates/polymorphic-property.template index f352abfb39..22ea7b7cea 100644 --- a/generate/templates/polymorphic-property.template +++ b/generate/templates/polymorphic-property.template @@ -1,9 +1,10 @@ -package resources +package {{.PackageName}} import ( "sort" - "encoding/json" + + "github.com/awslabs/goformation/v3/cloudformation/utils" ) // {{.Name}} is a helper struct that can hold either a {{.TypesJoined}} value @@ -50,7 +51,7 @@ func (r {{.Name}}) value() interface{} { } {{end}} - sort.Sort(byJSONLength(ret)) // Heuristic to select best attribute + sort.Sort(utils.ByJSONLength(ret)) // Heuristic to select best attribute if len(ret) > 0 { return ret[0] } diff --git a/generate/templates/resource.template b/generate/templates/resource.template index f7ebd1e39b..7bc8b39df7 100644 --- a/generate/templates/resource.template +++ b/generate/templates/resource.template @@ -1,14 +1,19 @@ -package resources +package {{.PackageName}} {{if not .IsCustomProperty}} import ( "encoding/json" "fmt" "bytes" - "github.com/awslabs/goformation/v2/cloudformation/policies" + {{if .HasTags}} + "github.com/awslabs/goformation/v3/cloudformation/tags"{{end}} + "github.com/awslabs/goformation/v3/cloudformation/policies" ) {{else}} -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ({{if .HasTags}} + "github.com/awslabs/goformation/v3/cloudformation/tags"{{end}} + "github.com/awslabs/goformation/v3/cloudformation/policies" +) {{end}} // {{.StructName}} AWS CloudFormation Resource ({{.Name}}) @@ -20,7 +25,7 @@ type {{.StructName}} struct { // {{$name}} AWS CloudFormation Property // Required: {{$property.Required}} // See: {{$property.Documentation}} - {{$prop_name}} {{if (or ($property.IsPolymorphic) ($property.IsCustomType) )}}*{{end}}{{$property.GoType $.Basename $name}} `json:"{{$name}}{{if (not (and ($property.IsNumeric) ($property.Required)))}},omitempty{{end}}"` + {{$prop_name}} {{if (or ($property.IsPolymorphic) ($property.IsCustomType) )}}*{{end}}{{$property.GoType $.Name $.Basename $name}} `json:"{{$name}}{{if (not (and ($property.IsNumeric) ($property.Required)))}},omitempty{{end}}"` {{end}} {{if .HasUpdatePolicy }}// _updatePolicy represents a CloudFormation UpdatePolicy _updatePolicy *policies.UpdatePolicy{{ end }} diff --git a/go.mod b/go.mod index b91a6b6d81..8530746fad 100644 --- a/go.mod +++ b/go.mod @@ -1,8 +1,8 @@ -module github.com/awslabs/goformation/v2 +module github.com/awslabs/goformation/v3 require ( github.com/davecgh/go-spew v1.1.1 // indirect - github.com/golang/protobuf v1.2.0 // indirect + github.com/golang/protobuf v1.3.2 // indirect github.com/imdario/mergo v0.3.6 github.com/kr/pretty v0.1.0 // indirect github.com/onsi/ginkgo v1.5.0 @@ -10,16 +10,13 @@ require ( github.com/pmezard/go-difflib v1.0.0 // indirect github.com/sanathkr/go-yaml v0.0.0-20170819195128-ed9d249f429b github.com/sanathkr/yaml v0.0.0-20170819201035-0056894fa522 - github.com/stretchr/testify v1.2.2 // indirect - github.com/xeipuuv/gojsonpointer v0.0.0-20170225233418-6fe8760cad35 // indirect - github.com/xeipuuv/gojsonreference v0.0.0-20150808065054-e02fc20de94c // indirect + github.com/stretchr/testify v1.4.0 // indirect + github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect + github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect github.com/xeipuuv/gojsonschema v0.0.0-20181112162635-ac52e6811b56 - golang.org/x/net v0.0.0-20170809000501-1c05540f6879 // indirect - golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f // indirect - golang.org/x/sys v0.0.0-20170814044513-c84c1ab9fd18 // indirect - golang.org/x/text v0.0.0-20170814122439-e56139fd9c5b // indirect + golang.org/x/net v0.0.0-20191021144547-ec77196f6094 // indirect gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 // indirect - gopkg.in/yaml.v2 v2.2.2 // indirect + gopkg.in/yaml.v2 v2.2.4 // indirect ) go 1.13 diff --git a/go.sum b/go.sum index d45154a9ff..b9f8d66c47 100644 --- a/go.sum +++ b/go.sum @@ -1,7 +1,7 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/golang/protobuf v1.2.0 h1:P3YflyNX/ehuJFLhxviNdFxQPkGK5cDcApsge1SqnvM= -github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs= +github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/imdario/mergo v0.3.6 h1:xTNEAn+kxVO7dTZGu0CegyqKZmoWFI0rF8UxjlB2d28= github.com/imdario/mergo v0.3.6/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= @@ -19,24 +19,27 @@ github.com/sanathkr/go-yaml v0.0.0-20170819195128-ed9d249f429b h1:jUK33OXuZP/l6b github.com/sanathkr/go-yaml v0.0.0-20170819195128-ed9d249f429b/go.mod h1:8458kAagoME2+LN5//WxE71ysZ3B7r22fdgb7qVmXSY= github.com/sanathkr/yaml v0.0.0-20170819201035-0056894fa522 h1:fOCp11H0yuyAt2wqlbJtbyPzSgaxHTv8uN1pMpkG1t8= github.com/sanathkr/yaml v0.0.0-20170819201035-0056894fa522/go.mod h1:tQTYKOQgxoH3v6dEmdHiz4JG+nbxWwM5fgPQUpSZqVQ= -github.com/stretchr/testify v1.2.2 h1:bSDNvY7ZPG5RlJ8otE/7V6gMiyenm9RtJ7IUVIAoJ1w= -github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -github.com/xeipuuv/gojsonpointer v0.0.0-20170225233418-6fe8760cad35 h1:0TnXeVP6mx+A4CBf8cQVkQfkhyGBQCmJcT4g6zKzm7M= -github.com/xeipuuv/gojsonpointer v0.0.0-20170225233418-6fe8760cad35/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= -github.com/xeipuuv/gojsonreference v0.0.0-20150808065054-e02fc20de94c h1:XZWnr3bsDQWAZg4Ne+cPoXRPILrNlPNQfxBuwLl43is= -github.com/xeipuuv/gojsonreference v0.0.0-20150808065054-e02fc20de94c/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo= +github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= github.com/xeipuuv/gojsonschema v0.0.0-20181112162635-ac52e6811b56 h1:yhqBHs09SmmUoNOHc9jgK4a60T3XFRtPAkYxVnqgY50= github.com/xeipuuv/gojsonschema v0.0.0-20181112162635-ac52e6811b56/go.mod h1:5yf86TLmAcydyeJq5YvxkGPE2fm/u4myDekKRoLuqhs= -golang.org/x/net v0.0.0-20170809000501-1c05540f6879 h1:0rFa7EaCGdQPmZVbo9F7MNF65b8dyzS6EUnXjs9Cllk= -golang.org/x/net v0.0.0-20170809000501-1c05540f6879/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f h1:wMNYb4v58l5UBM7MYRLPG6ZhfOqbKu7X5eyFl8ZhKvA= -golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20170814044513-c84c1ab9fd18 h1:IoiXxANYbZRybSGnlkI5TZv53JFaYJACyByrcuQnzSk= -golang.org/x/sys v0.0.0-20170814044513-c84c1ab9fd18/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/text v0.0.0-20170814122439-e56139fd9c5b h1:9VCMGrhGmWCfBKMKtwYJ46kFshzRNQ29xaLeEajknQw= -golang.org/x/text v0.0.0-20170814122439-e56139fd9c5b/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/net v0.0.0-20191021144547-ec77196f6094 h1:5O4U9trLjNpuhpynaDsqwCk+Tw6seqJz1EbqbnzHrc8= +golang.org/x/net v0.0.0-20191021144547-ec77196f6094/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a h1:1BGLXjeY4akVXGgbC9HugT3Jv3hCI0z56oJR5vAMgBU= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.4 h1:/eiJrUcujPVeJ3xlSWaiNi3uSVmDGBK1pDHUHAnao1I= +gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff --git a/goformation.go b/goformation.go index d0302af9dd..34f5ef6afa 100644 --- a/goformation.go +++ b/goformation.go @@ -5,8 +5,8 @@ import ( "io/ioutil" "strings" - "github.com/awslabs/goformation/v2/cloudformation" - "github.com/awslabs/goformation/v2/intrinsics" + "github.com/awslabs/goformation/v3/cloudformation" + "github.com/awslabs/goformation/v3/intrinsics" ) //go:generate generate/generate.sh diff --git a/goformation_schema_test.go b/goformation_schema_test.go index 4aaf90e0e7..25411f0744 100644 --- a/goformation_schema_test.go +++ b/goformation_schema_test.go @@ -4,10 +4,11 @@ import ( // Note that this is a fork of the main repo: github.com/xeipuuv/gojsonschema // CloudFormation uses nested schema def references, which is currently broken // in the main repo: https://github.com/xeipuuv/gojsonschema/pull/146 - . "github.com/xeipuuv/gojsonschema" + "os" + . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" - "os" + . "github.com/xeipuuv/gojsonschema" ) var _ = Describe("Goformation-generated JSON schemas", func() { diff --git a/goformation_test.go b/goformation_test.go index 5832324415..72bb4edb1f 100644 --- a/goformation_test.go +++ b/goformation_test.go @@ -3,14 +3,17 @@ package goformation_test import ( "encoding/json" - "github.com/awslabs/goformation/v2/cloudformation/policies" - "github.com/awslabs/goformation/v2/cloudformation/resources" - "github.com/sanathkr/yaml" - "github.com/awslabs/goformation/v2" - "github.com/awslabs/goformation/v2/cloudformation" - "github.com/awslabs/goformation/v2/intrinsics" + "github.com/awslabs/goformation/v3" + "github.com/awslabs/goformation/v3/cloudformation" + "github.com/awslabs/goformation/v3/cloudformation/lambda" + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/route53" + "github.com/awslabs/goformation/v3/cloudformation/s3" + "github.com/awslabs/goformation/v3/cloudformation/serverless" + "github.com/awslabs/goformation/v3/cloudformation/sns" + "github.com/awslabs/goformation/v3/intrinsics" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" @@ -27,7 +30,7 @@ var _ = Describe("Goformation", func() { Expect(template).ShouldNot(BeNil()) }) - functions := template.GetAllAWSServerlessFunctionResources() + functions := template.GetAllServerlessFunctionResources() It("should have exactly one function", func() { Expect(functions).To(HaveLen(1)) @@ -106,28 +109,28 @@ var _ = Describe("Goformation", func() { template := cloudformation.NewTemplate() - template.Resources["MySNSTopic"] = &resources.AWSSNSTopic{ + template.Resources["MySNSTopic"] = &sns.Topic{ DisplayName: "test-sns-topic-display-name", TopicName: "test-sns-topic-name", - Subscription: []resources.AWSSNSTopic_Subscription{ - resources.AWSSNSTopic_Subscription{ + Subscription: []sns.Topic_Subscription{ + sns.Topic_Subscription{ Endpoint: "test-sns-topic-subscription-endpoint", Protocol: "test-sns-topic-subscription-protocol", }, }, } - template.Resources["MyRoute53HostedZone"] = &resources.AWSRoute53HostedZone{ + template.Resources["MyRoute53HostedZone"] = &route53.HostedZone{ Name: "example.com", } - topics := template.GetAllAWSSNSTopicResources() + topics := template.GetAllSNSTopicResources() It("should have one AWS::SNS::Topic resource", func() { Expect(topics).To(HaveLen(1)) Expect(topics).To(HaveKey("MySNSTopic")) }) - topic, err := template.GetAWSSNSTopicWithName("MySNSTopic") + topic, err := template.GetSNSTopicWithName("MySNSTopic") It("should be able to find the AWS::SNS::Topic by name", func() { Expect(topic).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -141,13 +144,13 @@ var _ = Describe("Goformation", func() { Expect(topic.Subscription[0].Protocol).To(Equal("test-sns-topic-subscription-protocol")) }) - zones := template.GetAllAWSRoute53HostedZoneResources() + zones := template.GetAllRoute53HostedZoneResources() It("should have one AWS::Route53::HostedZone resource", func() { Expect(zones).To(HaveLen(1)) Expect(zones).To(HaveKey("MyRoute53HostedZone")) }) - zone, err := template.GetAWSRoute53HostedZoneWithName("MyRoute53HostedZone") + zone, err := template.GetRoute53HostedZoneWithName("MyRoute53HostedZone") It("should be able to find the AWS::Route53::HostedZone by name", func() { Expect(zone).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -165,18 +168,18 @@ var _ = Describe("Goformation", func() { expected := cloudformation.NewTemplate() - expected.Resources["MySNSTopic"] = &resources.AWSSNSTopic{ + expected.Resources["MySNSTopic"] = &sns.Topic{ DisplayName: "test-sns-topic-display-name", TopicName: "test-sns-topic-name", - Subscription: []resources.AWSSNSTopic_Subscription{ - resources.AWSSNSTopic_Subscription{ + Subscription: []sns.Topic_Subscription{ + sns.Topic_Subscription{ Endpoint: "test-sns-topic-subscription-endpoint", Protocol: "test-sns-topic-subscription-protocol", }, }, } - expected.Resources["MyRoute53HostedZone"] = &resources.AWSRoute53HostedZone{ + expected.Resources["MyRoute53HostedZone"] = &route53.HostedZone{ Name: "example.com", } @@ -185,13 +188,13 @@ var _ = Describe("Goformation", func() { Expect(err).To(BeNil()) }) - topics := result.GetAllAWSSNSTopicResources() + topics := result.GetAllSNSTopicResources() It("should have one AWS::SNS::Topic resource", func() { Expect(topics).To(HaveLen(1)) Expect(topics).To(HaveKey("MySNSTopic")) }) - topic, err := result.GetAWSSNSTopicWithName("MySNSTopic") + topic, err := result.GetSNSTopicWithName("MySNSTopic") It("should be able to find the AWS::SNS::Topic by name", func() { Expect(topic).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -205,13 +208,13 @@ var _ = Describe("Goformation", func() { Expect(topic.Subscription[0].Protocol).To(Equal("test-sns-topic-subscription-protocol")) }) - zones := result.GetAllAWSRoute53HostedZoneResources() + zones := result.GetAllRoute53HostedZoneResources() It("should have one AWS::Route53::HostedZone resource", func() { Expect(zones).To(HaveLen(1)) Expect(zones).To(HaveKey("MyRoute53HostedZone")) }) - zone, err := result.GetAWSRoute53HostedZoneWithName("MyRoute53HostedZone") + zone, err := result.GetRoute53HostedZoneWithName("MyRoute53HostedZone") It("should be able to find the AWS::Route53::HostedZone by name", func() { Expect(zone).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -281,7 +284,7 @@ var _ = Describe("Goformation", func() { Expect(template).ShouldNot(PointTo(BeNil())) }) - function, err := template.GetAWSServerlessFunctionWithName("IntrinsicFunctionTest") + function, err := template.GetServerlessFunctionWithName("IntrinsicFunctionTest") It("should have a function named 'IntrinsicFunctionTest'", func() { Expect(function).To(Not(BeNil())) Expect(err).To(BeNil()) @@ -302,7 +305,7 @@ var _ = Describe("Goformation", func() { Expect(template).ShouldNot(BeNil()) }) - functions := template.GetAllAWSServerlessFunctionResources() + functions := template.GetAllServerlessFunctionResources() It("should have exactly three functions", func() { Expect(functions).To(HaveLen(3)) @@ -333,21 +336,21 @@ var _ = Describe("Goformation", func() { template := &cloudformation.Template{ Resources: cloudformation.Resources{ - "MyLambdaFunction": &resources.AWSLambdaFunction{ + "MyLambdaFunction": &lambda.Function{ Handler: "nodejs6.10", }, }, } - functions := template.GetAllAWSLambdaFunctionResources() - It("should be able to retrieve all Lambda functions with GetAllAWSLambdaFunction(template)", func() { + functions := template.GetAllLambdaFunctionResources() + It("should be able to retrieve all Lambda functions with GetAllLambdaFunction(template)", func() { Expect(functions).To(HaveLen(1)) }) - function, err := template.GetAWSLambdaFunctionWithName("MyLambdaFunction") - It("should be able to retrieve a specific Lambda function with GetAWSLambdaFunctionWithName(template, name)", func() { + function, err := template.GetLambdaFunctionWithName("MyLambdaFunction") + It("should be able to retrieve a specific Lambda function with GetLambdaFunctionWithName(template, name)", func() { Expect(err).To(BeNil()) - Expect(function).To(BeAssignableToTypeOf(&resources.AWSLambdaFunction{})) + Expect(function).To(BeAssignableToTypeOf(&lambda.Function{})) }) It("should have the correct Handler property", func() { @@ -362,10 +365,10 @@ var _ = Describe("Goformation", func() { template := &cloudformation.Template{ Resources: cloudformation.Resources{ - "MySAMFunction": &resources.AWSServerlessFunction{ + "MySAMFunction": &serverless.Function{ Handler: "nodejs6.10", - CodeUri: &resources.AWSServerlessFunction_CodeUri{ - S3Location: &resources.AWSServerlessFunction_S3Location{ + CodeUri: &serverless.Function_CodeUri{ + S3Location: &serverless.Function_S3Location{ Bucket: "test-bucket", Key: "test-key", Version: 100, @@ -375,7 +378,7 @@ var _ = Describe("Goformation", func() { }, } - function, err := template.GetAWSServerlessFunctionWithName("MySAMFunction") + function, err := template.GetServerlessFunctionWithName("MySAMFunction") It("should have an AWS::Serverless::Function called MySAMFunction", func() { Expect(function).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -394,16 +397,16 @@ var _ = Describe("Goformation", func() { codeuri := "./some-folder" template := &cloudformation.Template{ Resources: cloudformation.Resources{ - "MySAMFunction": &resources.AWSServerlessFunction{ + "MySAMFunction": &serverless.Function{ Handler: "nodejs6.10", - CodeUri: &resources.AWSServerlessFunction_CodeUri{ + CodeUri: &serverless.Function_CodeUri{ String: &codeuri, }, }, }, } - function, err := template.GetAWSServerlessFunctionWithName("MySAMFunction") + function, err := template.GetServerlessFunctionWithName("MySAMFunction") It("should have an AWS::Serverless::Function called MySAMFunction", func() { Expect(function).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -426,7 +429,7 @@ var _ = Describe("Goformation", func() { Expect(err).To(BeNil()) }) - table, err := template.GetAWSServerlessSimpleTableWithName("TestSimpleTable") + table, err := template.GetServerlessSimpleTableWithName("TestSimpleTable") It("should have a table named 'TestSimpleTable'", func() { Expect(table).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -457,7 +460,7 @@ var _ = Describe("Goformation", func() { }) It("should have a table named 'TestSimpleTableNoProperties'", func() { - nopropertiesTable, err := template.GetAWSServerlessSimpleTableWithName("TestSimpleTableNoProperties") + nopropertiesTable, err := template.GetServerlessSimpleTableWithName("TestSimpleTableNoProperties") Expect(nopropertiesTable).ToNot(BeNil()) Expect(err).To(BeNil()) }) @@ -476,7 +479,7 @@ var _ = Describe("Goformation", func() { Expect(err).To(BeNil()) }) - api1, err := template.GetAWSServerlessApiWithName("ServerlessApiWithDefinitionUriAsString") + api1, err := template.GetServerlessApiWithName("ServerlessApiWithDefinitionUriAsString") It("should have an AWS::Serverless::Api named 'ServerlessApiWithDefinitionUriAsString'", func() { Expect(api1).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -506,7 +509,7 @@ var _ = Describe("Goformation", func() { Expect(api1.Variables).To(HaveKeyWithValue("NAME", "VALUE")) }) - api2, err := template.GetAWSServerlessApiWithName("ServerlessApiWithDefinitionUriAsS3Location") + api2, err := template.GetServerlessApiWithName("ServerlessApiWithDefinitionUriAsS3Location") It("should have an AWS::Serverless::Api named 'ServerlessApiWithDefinitionUriAsS3Location'", func() { Expect(api2).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -518,7 +521,7 @@ var _ = Describe("Goformation", func() { Expect(api2.DefinitionUri.S3Location.Version).To(Equal(1)) }) - api3, err := template.GetAWSServerlessApiWithName("ServerlessApiWithDefinitionBodyAsJSON") + api3, err := template.GetServerlessApiWithName("ServerlessApiWithDefinitionBodyAsJSON") It("should have an AWS::Serverless::Api named 'ServerlessApiWithDefinitionBodyAsJSON'", func() { Expect(api3).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -528,7 +531,7 @@ var _ = Describe("Goformation", func() { Expect(api3.DefinitionBody).To(Equal("{\n \"DefinitionKey\": \"test-definition-value\"\n}\n")) }) - api4, err := template.GetAWSServerlessApiWithName("ServerlessApiWithDefinitionBodyAsYAML") + api4, err := template.GetServerlessApiWithName("ServerlessApiWithDefinitionBodyAsYAML") It("should have an AWS::Serverless::Api named 'ServerlessApiWithDefinitionBodyAsYAML'", func() { Expect(api4).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -542,7 +545,7 @@ var _ = Describe("Goformation", func() { Expect(api4.DefinitionBody).To(Equal(expected)) }) - api5, err := template.GetAWSServerlessApiWithName("ServerlessApiWithAccessLogSettingAsYAML") + api5, err := template.GetServerlessApiWithName("ServerlessApiWithAccessLogSettingAsYAML") It("should have an AWS::Serverless::Api named 'ServerlessApiWithAccessLogSettingAsYAML'", func() { Expect(api5).ToNot(BeNil()) Expect(err).To(BeNil()) @@ -566,7 +569,7 @@ var _ = Describe("Goformation", func() { Expect(template).ShouldNot(BeNil()) }) - function, err := template.GetAWSServerlessFunctionWithName("IntrinsicEnvironmentVariableTestFunction") + function, err := template.GetServerlessFunctionWithName("IntrinsicEnvironmentVariableTestFunction") It("should have a function named 'IntrinsicEnvironmentVariableTestFunction'", func() { Expect(function).To(Not(BeNil())) Expect(err).To(BeNil()) @@ -578,8 +581,8 @@ var _ = Describe("Goformation", func() { }) Context("with a SNS event source", func() { - event := resources.AWSServerlessFunction_Properties{ - SNSEvent: &resources.AWSServerlessFunction_SNSEvent{ + event := serverless.Function_Properties{ + SNSEvent: &serverless.Function_SNSEvent{ Topic: "MyTopic", }, } @@ -594,7 +597,7 @@ var _ = Describe("Goformation", func() { Context("with an SNS event source created from JSON", func() { eventString := `{"Topic":"MyTopic"}` eventJson := []byte(eventString) - event := resources.AWSServerlessFunction_Properties{} + event := serverless.Function_Properties{} event.UnmarshalJSON(eventJson) It("should marshal properties correctly", func() { @@ -608,10 +611,10 @@ var _ = Describe("Goformation", func() { template := &cloudformation.Template{ Resources: cloudformation.Resources{ - "TestBucket": &resources.AWSS3Bucket{ + "TestBucket": &s3.Bucket{ BucketName: "test-bucket", }, - "TestBucketPolicy": &resources.AWSS3BucketPolicy{ + "TestBucketPolicy": &s3.BucketPolicy{ Bucket: cloudformation.Ref("TestBucket"), }, }, @@ -830,7 +833,7 @@ var _ = Describe("Goformation", func() { template := &cloudformation.Template{ Resources: cloudformation.Resources{ - "TestBucket": &resources.AWSS3Bucket{ + "TestBucket": &s3.Bucket{ BucketName: cloudformation.Join("/", []string{ cloudformation.Join("-", []string{"test", "bucket"}), }), @@ -891,10 +894,10 @@ var _ = Describe("Goformation", func() { template := &cloudformation.Template{ Resources: cloudformation.Resources{ - "TestBucket": &resources.AWSS3Bucket{ + "TestBucket": &s3.Bucket{ BucketName: "test-bucket", }, - "TestBucketPolicy": &resources.AWSS3BucketPolicy{ + "TestBucketPolicy": &s3.BucketPolicy{ Bucket: cloudformation.GetAtt("TestBucket", "WebsiteURL"), }, }, diff --git a/intrinsics/intrinsics_test.go b/intrinsics/intrinsics_test.go index 873645edea..c6e20692ea 100644 --- a/intrinsics/intrinsics_test.go +++ b/intrinsics/intrinsics_test.go @@ -4,7 +4,7 @@ import ( "encoding/base64" "encoding/json" - . "github.com/awslabs/goformation/v2/intrinsics" + . "github.com/awslabs/goformation/v3/intrinsics" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega"